开源

自己做地图

偶尔善良 提交于 2020-01-07 04:27:00
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 支持WEB、Android、IOS的地图解决方案 工具链 GIS工具集 OpenGeo Suite 包含PostGIS, GeoServer, GeoWebCache, OpenLayers, 和 QGIS 地图准备 QGIS 导入、导出、编辑.shp,postgis,geotiff,geojson,dxf等多种GIS文件,给普通图片配准到地理坐标 教程: http://www.qgistutorials.com/en/ DraftSight 编辑CAD文件 SketchUp 从CAD文件生成3D视图 地图服务 GeoServer 地图服务发布。作为war放入Tomcat或Jetty即可使用。可发布geotiff,.shp,POSTGIS等多种GIS数据为地图。通过openlayer或QGIS浏览。 GeoWebCache 缓存地图瓦片,提高性能。已内置在最新版GeoServer中。 TileStream 把.mbtile文件发布为地图服务 离线地图打包 TileMill 将geotiff,geojson,csv,shp,postgis等文件美化、打包为.mbtile瓦片地图文件,存有地图信息的sqlite文件。 教程: https://www.mapbox.com/tilemill/docs

轻触开源(一)-Java泛型Type类型的应用和实践

柔情痞子 提交于 2019-12-30 19:14:32
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 转载请注明出处:https://my.oschina.net/u/874727/blog/747427 Q:1025250620 在很多Java的开源项目中都用到Java的泛型。比如Gson,就可以通过TypeToken<T>里的泛型参数来指定生成的类型。鉴于网上关于泛型的文章并不多,为了非墨后面项目研究的需要,非墨开始研究这部分的API。首先我们先来看一下在Java语言中泛型的例子: public class MyTest<T1,T2 extends Number> { T1 member; public <T> void method(T m) {} } 上述代码中的标志:T1,T2,T都是泛型类型。Java的泛型检查发生在编译期,但是会在编译后的JVM字节码中增加类型判断的语句。为了方便大家理解这句话我们用一段代码测试一下: List<String> list = new ArrayList<>(); try { Method m = list.getClass().getDeclaredMethod("add", new Class[]{Object.class}); m.invoke(list, 1); m.invoke(list, 2); } catch (Exception e) { System

Pinpoint-java性能分析最佳实践_开源PaaS Rainbond

Deadly 提交于 2019-12-12 12:17:36
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 概述 pinpoint简介 何为pinpoint: pinpoint是一个分析大型分布式系统的平台,提供解决方案来处理海量跟踪数据,主要面向基于tomcat的Java 应用。 **为何使用它:**和如今相比, 过去的因特网的用户数量相对较小,而因特网服务的架构也没那么复杂。web服务通常使用两层(web 服务器和数据库)或三层(web服务器,应用服务器和数据库)架构。然而在如今,随着互联网的成长,需要支持大量的并发连接,并且需要将功能和服务有机结合,导致更加复杂的软件栈组合。更确切地说,比三层层次更多的n层架构变得更加普遍。系统的复杂度因此提升。系统越复杂,越难解决问题,例如系统失败或者性能问题。在三层架构中找到解决方案还不是太难,仅仅需要分析3个组件比如web服务器,应用服务器和数据库,而服务器数量也不多。但是,如果问题发生在n层架构中,就需要调查大量的组件和服务器。另一个问题是仅仅分析单个组件很难看到大局;当发生一个低可见度的问题时,系统复杂度越高,就需要更长的时间来查找原因。最糟糕的是,某些情况下我们甚至可能无法查找出来。为了解决复杂架构下的拓扑解析与性能分析,pinpoint应运而生。 功能、优势与架构 功能 分布式事务跟踪,跟踪跨分布式应用的消息 自动检测应用拓扑,帮助你搞清楚应用的架构

Weex详解:灵活的移动端高性能动态化方案

此生再无相见时 提交于 2019-12-10 20:54:42
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在2016年4月份的QCon上,阿里巴巴资深总监,淘宝移动平台及新业务事业部、阿里百川负责人庄卓然(花名南天)宣布阿里移动端跨平台开发框架Weex开始内测,并将于6月份开源。在QCon的第二天,阿里技术专家徐凯(花名鬼道)和阿里前端开发专家赵锦江(花名勾股)向参会者做了《Weex——灵活的移动端高性能动态化方案》的演讲,对这一技术方案进行了详细的剖析。 以下为演讲内容的整理: 昨天南天宣布Weex启动开源内测,截至到今天中午,我们统计申请内测用户突破1400人,大家的热烈程度远远超过我们的设想,非常感谢大家支持。 在我们对移动开发最佳实践的思考中,我们认为移动开发的未来是更平衡的方案,一定是性能和动态性兼得。第二个,它一定是开放互联的,PC端一直也是这样的,也是非常好的状态。我们觉得移动互联网将来肯定也是基于更大众化的技术体系,没有平台之间的隔阂,简单直接易用,这是我们最希望看到的。基于这些设想,我们有了Weex方案。 Weex是从去年双十一的时候第一次在我们正式产品中使用,承载了双十一主会场的工作。有人会问,Weex是不是除了做主会场别的地方就比较吃力呢?从去年双十一到现在,包括我们自己的尝试和阿里内网做开源内测活动,大家也贡献了很多内容,包括昨天Keynote演示的僵尸动画,扫雷、计算器都有

深度揭秘阿里移动端高性能动态化方案Weex

别等时光非礼了梦想. 提交于 2019-12-10 20:52:37
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 2016年Qcon大会首日,阿里巴巴资深总监、淘宝移动平台、阿里百川负责人庄卓然宣布移动端高性能动态化方案Weex即时内测,并将于6月开源。此消息一出,群情汹涌,在座的程序猿、攻城狮们纷纷拿起手机扫码,以期第一时间感受Weex的神奇之力。 在第二天的主题分享会上,阿里巴巴前端开发专家赵锦江和技术专家徐凯对Weex进行了深入的解析。以下为演讲速记整理后的成文。 阿里怎么看待移动开发? 目前的移动开发者面临的最大痛点就是面对极其复杂的环境,对此,庄卓然给出一个公式,移动开发的复杂度=应用数量×平台数量×要适配的各种各样的机型。 如何解决这个问题呢?在解决问题之前,首先要对移动开发的未来有着精准的研判。 阿里认为,移动开发的未来必定更加平衡,也就是说必须是性能与动态兼得,如此,才能够满足未来用户的需求。另外,移动开发在未来也必定是开放互联的状态,移动互联网将来肯定是基于更加大众化的技术体系,没有平台之间的隔阂,而且简单易用。 所以,阿里结合移动开发的现状并围绕其愿景推出了Weex解决方案。 事实上,在去年的双11活动中,Weex就得到了实战的验证,且表现不俗。时至今日,Weex已经被阿里技术团队多次运用,并“创造”出各种丰富的场景,整体的表现非常优异。 把移动端所有界面拆分成各个page,然后中间设置有路由的控制逻辑

关于Weex你需要知道的一切

徘徊边缘 提交于 2019-12-10 20:52:20
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> QCon第一天,GMTC全球移动技术大会联席主席、手淘技术老大庄卓然(花名南天)在Keynote上宣布跨平台开发框架Weex开始内测,并将于6月份开源,同时他们也放出官网:http://alibaba.github.io/weex ,可以在上面申请内测资格,以及下载Android版Demo把玩。 在大会后我对庄卓然做了一个采访,对一些大家关心的问题得到官方的回复,整理在这里。所有该发的不该发的我都发在这儿了,为了涨粉我也是拼啦~ Weex基本信息 官方支持iOS、Android、HTML5. Write Once, Run Everywhere。一次编写可生成三平台代码。 DSL模板学习超简单,直接写HTML、CSS、JS。这意味着可以直接用现有编辑器和IDE的代码补全、提示、检查等功能。 轻量级、可扩展、高性能。 集成花样多,可在HTML5页面嵌入,也可嵌在原生UI中。 Weex的由来 Weex的前身是WeApp,一个用JSON配置原生UI组件来实现动态化的框架,关于类似这个的思想,可以在天猫这篇 配置中心实践 中看到,已经很牛了,Weex是WeApp的进化版本,加上ex去掉App,就成了现在这个名字。他们还编了个段子: You give us a few weeks, so we bring you a

他用Weex花两天时间开发出『One·一个』App

末鹿安然 提交于 2019-12-10 20:49:41
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 自阿里在QCon北京2016上面宣布Weex内测已经过去了一个多月时间,在这段时间里,有不少开发者通过申请已经获得内测资格,并尝试用它进行开发,阿里也进一步邀请更多开发者来体验和使用Weex,如阿里百川推出的Weex Workshop挑战赛。 Github用户dodola参加了这场Workshop,用两天时间开发了『One·一个』App的Weex版本,并将它开源了出来,你可以下载该项目并按照提示编译并运行。 项目地址: https://github.com/dodola/WeexOne dodola在项目声明中也介绍了使用Weex开发的感受: Weex从上手来说还是相当容易的,我看了一会文档就可以开始做页面了,语法套用的是原生的css、html、javascript的语法,并没有像React Native那样开发一个JSX语言还需要适应这种语法,相对来说Weex要比React Native上手要简单很多的。 从生成的包的大小来看我的这个应用没混淆状态下apk是3.9MB,相对于ReactNative的7.8MB的大小还是要小很多的,从界面流畅度来看Weex可能要比React Native要流畅和灵敏一些。 开发过程中没有遇到大的难题,基本上看文档和例子代码就好了,像开发WeexOne这种小项目一般两天就做完了

python开源爬虫框架scrapy源码解析(四)

走远了吗. 提交于 2019-12-10 01:42:50
引擎是整个 scrapy 的核心控制和调度 scrapy 运行. Engine 的 open_spider 方法完成了一些初始化 , 以及启动调度器获取种子队列以及去重队列 . 最后调用 self._nest_request 开始一次爬取过程 . @defer.inlineCallbacks def open_spider(self, spider, start_requests=(), close_if_idle=True): assert self.has_capacity(), "No free spider slot when opening %r" % \ spider.name logger.info("Spider opened", extra={'spider': spider}) nextcall = CallLaterOnce(self._next_request, spider) #首先获取next调用。 scheduler = self.scheduler_cls.from_crawler(self.crawler) #从crawler获取调度器 start_requests = yield self.scraper.spidermw.process_start_requests(start_requests, spider) slot = Slot

AEAI DP开发平台升级说明

末鹿安然 提交于 2019-12-10 01:26:35
本次发版的 AEAI DP_v3.5.0 版本为 AEAI DP _v3.4.0 版本的升级版本,该产品现已开源并上传至开源社区http://www.oschina.net/p/aeaidp。 1 升级说明 AEAI DP v3.5.0 版本是一次重大升级,在这次升级中 AEAI DP 像 AEAI ESB 一样支持远程热部署,甚至比 AEAI ESB 走的更远,准确的说 AEAI DP 支持更多(灵活)粒度的(按工程、模块、资源)部署模式,这样就像使用 PHP 、 Ruby 等动态脚本语言开发 Java Web 应用一样不用考虑重启服务器,而且支持远程一键部署,数通畅联的所有的外围产品 CRM 、 HR 、 EM 、 WM 都采用本次版本重构,方便后续更敏捷的升级和部署。 2 升级内容 提供增量远程热部署机制; 添加按钮操作授权机制; 添加多语言机制; 列表选择功能支持多选机制; 表格组件添加 link 、 image 、 imagelink 三种 cell 机制; PageBean 中添加对 RadioGroup 支持; HotServer 添加密码加密工具; 解决主从表功能模型在 Oracle 数据库:生成 SQLMap 文件名称处理问题; 解决 Oracle11G 保存时候, Date 字段时间精度丢失的问题; 解决应用重启时 Server 后台显示内存可能泄露问题。 3

【深入Cocos2d-x】使用MVC架构搭建游戏Four

半城伤御伤魂 提交于 2019-12-09 20:39:00
喜欢Four这个项目,就赶快在 GitHub 上Star这个项目吧! 喜欢我的文章,来微博关注我吧: 王选易在学C艹 点我下载 ## 项目起源 项目Logo: 下面是该游戏的项目地址,各位想参考源代码的同学可以到我的GitHub上下载该项目的源码。 项目主页 GitHub地址 bug反馈及建议 我做这个项目的原始目的是实验MVC在游戏中的应用。 Model-View-Controller(MVC) 是一种组合设计模式,它体现了一种 关注点分离(Separation of concerns,SoC) 的思想。MVC主要把逻辑层和表现层进行了解耦,将一个问题划分成了不同的关注点。增强了应用的稳定性,易修改性和易复用性。 MVC经常被使用在Web框架中,包括J2EE,RoR和.Net中都对MVC模型进行了框架层面上的封装,以便程序员可以简单方便地作出结构良好的Web应用。 Cocos2d-x本身并没有提供内置的MVC支持,但是,我们还是可以在游戏中基于MVC架构来设计游戏。在这篇博文中,我将向大家展示一下我是如何使用MVC架构来塔尖 Four 这个游戏的。 ## 游戏情景 Four这个游戏的创意来自一个叫做走四棋的传统游戏,走四棋规则的详细介绍在这里: 走四棋的百度百科 。 下面我简单谈一下这个面板游戏(board game)的一些特性 一个4行4列的棋盘(Game Board)