开放源代码

有了这个开源 Java 项目,开发出炫酷的小游戏好像不难?

半腔热情 提交于 2020-03-03 09:29:01
本文适合有 Java 基础知识的人群,跟着本文可学习和运行 Java 的游戏。 本文作者:HelloGitHub- 秦人 HelloGitHub 推出的 《讲解开源项目》 系列,今天给大家带来一款开源 Java 游戏框架项目—— FXGLGames 项目源码地址:https://github.com/AlmasB/FXGLGames 一、项目介绍 都说 Java 语言无处不能,可以做桌面程序,可以做后台开发,可以做手机应用,也可以做游戏开发。本篇我们就重点讲一下一款 Java 游戏框架 FXGL ,它无需安装或设置,开箱即用,只需本地安装 jdk8+ 即可。游戏可轻松打包为可执行的 *.jar 文件,一行命令即可运行。 二、运行项目 2.1 前提 安装 Jdk8 或者更高版本,全称 Java Development Kit,它是 Java 的库函数,是编译、运行 Java 程序的工具包。 安装 Maven3 环境,进行项目构建和项目依赖包管理。 安装开发工具,例如:Idea,Eclipse,Spring Tool Suite 等。 安装 Git 工具,使用 GitBash 工具进行下载,提交代码等操作。 2.2 下载项目 执行如下代码,将项目下载到本地。 cd D:\devEnv git clone https://github.com/AlmasB/FXGLGames.git 2

常见RPC开源框架

穿精又带淫゛_ 提交于 2020-03-03 05:52:13
什么是rpc框架 先回答第一个问题:什么是RPC框架? 如果用一句话概括RPC就是:远程调用框架(Remote Procedure Call) 那什么是远程调用? 通常我们调用一个php中的方法,比如这样一个函数方法: localAdd(10, 20),localAdd方法的具体实现要么是用户自己定义的,要么是php库函数中自带的,也就说在localAdd方法的代码实现在本地,它是一个本地调用! 远程调用意思就是:被调用方法的具体实现不在程序运行本地,而是在别的某个远程地方。 最早在 Nelson 的论文中指出实现 RPC 的程序包括 5 个理论模型部分: User User-stub RPCRuntime Server-stub Server 这 5 个部分的关系如下图所示: 这里 User 就是 Client 端。当 User 想发起一个远程调用时,它实际是通过本地调用 User-stub。 User-stub 负责将调用的接口、方法和参数通过约定的协议规范进行编码并通过本地的 RPCRuntime 实例传输到远端的实例。 远端 RPCRuntime 实例收到请求后交给 Server-stub 进行解码后发起向本地端 Server 的调用,调用结果再返回给 User 端。 远程调用原理 比如 A (client) 调用 B (server) 提供的remoteAdd方法:

补充“MIT Cheetah 完整开源代码仿真环境”搭建过程中文资料的细节

走远了吗. 提交于 2020-03-02 10:24:46
引言 作为世界上最先进四足之一的MIT Cheetah在2019年底被其团队开源了所有软硬件设计。针对此次开源的代码环境搭建过程,虽然该团队给出了非常详尽的安装调试过程,但是在自己安装过程中仍然有许多问题出现。所以在国内还没有详尽的资料的情况下,作者写下这篇博客。最主要目的是结合前人的工作,做具体操作过程的补充,所以读者需要结合文中所引用的资料完成自己环境的搭建。 背景介绍 当然,具作者了解到,国内首先针对该项目给出简介的是: 《廖洽源:MIT Cheetah 完整开源代码与论文简介》 文章给出了四足机器人的软硬件下载地址连接,具体介绍了软件算法的控制架构以及开源代码的结构组成,但是针对安装过程有所省略。最后给出仿真环境的操作过程及效果展示。 随后另一位复现者华北舵狗王在上文的基础上给出了更多的安装指导: 《 华北舵狗王带你一起做四足机器人9 (MIT Cheetah 开源 代码 仿真器编译) 》 文章详细说明了仿真环境在虚拟机ubuntu14.04下的安装过程,甚至给出了其自己的虚拟机镜像。 作者非常感谢上述两个作者做的前期工作,为自己环境的搭建做出的重要指导作用。由于安装过程以及程序架构已被详细讲述,所以本文不讲述详细的安装过程,仅根据个人经验补充在安装过程中可能遇到的问题。为更多对该开源项目感兴趣的腿足机器人工作者提供可参考的资料。 另外还有名为深圳机擎科技的人提供了机器人的

Airbnb开源 快速搭建企业级BI数据平台

≡放荡痞女 提交于 2020-03-02 06:20:44
最近在公司做一个数据可视化相关的项目,使用了Airbnb开源维护的企业级BI数据平台superset,相较于tableau这种收费的商业软件,Superset是开源维护的,同时图表的种类和颜值普遍偏高。以下效果图: ![时间序列_柱状图.gif](https://img2018.cnblogs.com/blog/1821710/201909/1821710-20190930112118784-853879599.gif) ![饼状图.gif](https://img2018.cnblogs.com/blog/1821710/201909/1821710-20190930112124212-953945562.gif) ![折线图.gif](https://img2018.cnblogs.com/blog/1821710/201909/1821710-20190930112135242-514586707.gif) 以及另外几十种图表格式 ![图标概览.gif](https://img2018.cnblogs.com/blog/1821710/201909/1821710-20190930112143373-910271645.gif) 话不多说,开始搭建吧。 ##1.前期准备 **Linux服务器CentOS7(Windows系统的不作概述 一般缺少的whl文件在 [此网站]

自己总结的iOS、mac开源项目及库

混江龙づ霸主 提交于 2020-03-02 05:04:10
======== 自己总结的iOS、mac开源项目及库。 github排名 [https://github.com/trending]( https://github.com/trending ),github搜索:[https://github.com/search]( https://github.com/search ) ### 目录 - [UI](#UI) - [下拉刷新](#下拉刷新) - [模糊效果](#模糊效果) - [AutoLayout](#AutoLayout) - [富文本](#富文本) - [图表](#图表) - [表相关](#表相关) - [隐藏与显示](#隐藏与显示) - [HUD与Toast](#HUD与Toast) - [对话框](#对话框) - [其他UI](#其他UI) - [动画](#动画) - [侧滑与右滑返回手势](#侧滑与右滑返回手势) - [gif动画](#gif动画) - [其他动画](#其他动画) - [网络相关](#网络相关) - [网络连接](#网络连接) - [网络测试](#网络测试) - [图像获取](#图像获取) - [网络聊天](#网络聊天) - [网络测试](#网络测试) - [WebView](#WebView) - [Model](#Model) - [其他](#其他) - [数据库](#数据库) - [缓存处理]

IOS-第三方开源库

妖精的绣舞 提交于 2020-03-02 04:24:53
我找的琐碎框架 1.HZExtend:应用快速开发架构集合了MVC和MVVM的特点https://github.com/GeniusBrother/HZExtend : 1.减少控制器压力以及耦合 2.带有请求状态(请求中,请求后,无网络)的网络框架 3.无网仍有数据的缓存体系 4.与表映射能操作数据库的Model 5.支持URL跳转 2.HZURLManager:根据URL进行页面跳转:https://github.com/GeniusBrother/HZURLManager 3.HZMenuView:仿今日头条的侧边栏,以UINavigationController为容器,且导航页面时不关闭的侧边栏:https://github.com/GeniusBrother/HZMenuView 牛逼框架 1.AFNetworking   目前比较推荐的iOS网络请求组件,默认网络请求是异步,通过block回调的方式对返回数据进行处理。 2.FMDB   对sqlite数据库操作进行了封装,demo也比较简单。 3.MBProgressHUD   也是iOS项目常用的一个组件,用于显示过渡效果的,比如网络请求之前显示loading,网络结束隐藏loading。建议封装在BaseViewController中,所有ViewController继承就能使用。 4.MJRefresh  

希望涨工资?看看为开发者带来更高收入的十大开源技术

99封情书 提交于 2020-03-01 15:38:18
Linux 基金会和在线求职招聘网站 Dice 发布了一份关于 开源招聘的调查结果 。结果显示,相对于其他类型的 IT 工作者,67% 的管理人员更希望雇佣在开源技术方面有所专长的技术人员。 此外,42% 的受访管理人员表示,他们需要招聘更多熟悉开源技术的人才,因为他们正在增加对开源技术的使用,并且有 30% 的受访者表示开源技术正成为他们业务的核心技术支撑。然而,绝大多数(89%)的招聘主管表示,他们发现很难找到填补岗位所需的“开源人才”。 调查人员还联系了开源领域的专业人士和管理人员,他们当中有 86% 的人表示,加入开源领域提升了自己职业生涯的阶层。有意思的是,有约四分之一的受访者表示,他们已经在过去六个月里没有接到过招聘人员的电话。 所以,哪些开源技术是需求最高的? 调查向管理者和 IT 专业人员都进行了提问,他们给出的答案稍有不同。本文还参考了两个最近发布的数据: Robert Half 2018 技术专业人员薪资指南 和 Stack Overflow 薪资计算器 。 1. 云和虚拟化 当被问及到现在最需要哪些开源技能时,70% 的招聘主管提到了云计算技术,如 OpenStack 和 Cloud Foundry。2016 年有 66% 的招聘主管有过同样的表示,所以可以看到,对云计算技术的需求持续在增长。同样的,62% 的雇主表示,“云”是最影响他们招聘决策的技术。 IT

VMware揭开开源PaaS项目Cloud Foundry面纱

跟風遠走 提交于 2020-02-29 22:29:54
VMware今天宣称Cloud Foundry最优异的特性便是在“multi-cloud”上构建,在私有和公有环境中工作。并且它能够支持大量不同的应用程序架构和开发工具。 人人游戏问答网 这个平台能够帮助开发者使用Java或者其他的基于JVM的架构构建应用。例如Grails、Roo、Rails和Ruby版Sinatra(支持Ruby 1.8.7和1.9.2版)以及Node.js这些架构。而应用服务的平台插件,例如RabbitMQ和GemFire,这些都是VMware自有的工具。RabbitMQ是一个开源的消息平台,GemFire则是一个分布式系统管理工具。Cloud Foundry同样支持MySQL、MongoDB和Redis,而且计划加入VMware自有的vFabric应用服务。 女装品牌排行榜 Jerry Chen,VMware的云和应用服务的高级负责人表示,以Java的视角来看,任何应用都可以被打包成一个WAR文件,然后可以放到Servlet容器中并且运行在Cloud Foundry中。但是这款产品现在不支持Java EE应用。 代码现在可以从GitHub上下载,遵循Apache 2协议。VMware也在这个代码基础上构建了一个测试服务。 在网络直播中,VMware也展示了一个Cloud Foundry的单点开发者实例运行于一台虚拟机上。被称为Micro

即将开源 | 2亿用户背后的Flutter应用框架Fish Redux

☆樱花仙子☆ 提交于 2020-02-29 12:48:25
背景 在闲鱼深度使用 Flutter 开发过程中,我们遇到了业务代码耦合严重,代码可维护性糟糕,如入泥泞。对于闲鱼这样的负责业务场景,我们需要一个统一的应用框架来摆脱当下的开发困境,而这也是 Flutter 领域空缺的一块处女地。 Fish Redux 是为解决上面问题上层应用框架,它是一个基于 Redux 数据管理的组装式 flutter 应用框架, 特别适用于构建中大型的复杂应用。 它的最大特点是配置式组装, 一方面将一个大的页面,对视图和数据层层拆解为互相独立的 Component|Adapter,上层负责组装,下层负责实现,另一方面将 Component|Adapter 拆分为 View,Reducer,Effect 等相互独立的上下文无关函数。所以它会非常干净,易编写、易维护、易协作。 Fish Redux 的灵感主要来自于 Redux、React、Elm、Dva 这样的优秀框架,而 Fish Redux 站在巨人的肩膀上,将集中,分治,复用,隔离做的更进一步。 分层架构图 架构图,主体自底而上,分三层,每一层用来解决不通层面的问题和矛盾,下面依次来展开。 Redux Redux 是来自前端社区的一个数据管理框架, 对 Native 开发同学来说可能会有一点陌生,我们做一个简单的介绍。 Redux 做什么的? Redux 是一个用来做可预测易调试的数据管理的框架

commons-lang开源API 收藏

谁都会走 提交于 2020-02-29 10:39:05
跟java.lang这个包的作用类似,Commons Lang这一组API也是提供一些基础的、通用的操作和处理,如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。 这一组API的所有包名都以org.apache.commons.lang开头,共有如下8个包: org.apache.commons.lang org.apache.commons.lang.builder org.apache.commons.lang.enum org.apache.commons.lang.enums org.apache.commons.lang.exception org.apache.commons.lang.math org.apache.commons.lang.mutable org.apache.commons.lang.time 其中的lang.enum已不建议使用,替代它的是紧随其后的lang.enums包。 lang包主要是一些可以高度重用的Util类;lang.builder包包含了一组用于产生每个Java类中都常使用到的toString()、hashCode()、equals()、compareTo()等等方法的构造器;lang.enums包顾名思义用于处理枚举;lang