本文对我目前在github上收获star最多的开源项目OkBuck的工作原理进行了深度解析,并在本文写作过程中完成了对OkBuck的第三轮重构,作为OkBuck 1.0版本发布的基础。
继续阅读 »
总结:
各个厂商对Nova社区的参与依然如火如荼,积极将自身虚拟化产品作为driver与Nova对接。其中VMware、Hypver-V两家的积极性最高,不断弥补自身产品与社区KVM特性的差距,向A类driver看齐;
Nova社区开始关注NFV特性,引领开源云计算向电信领域拓展;
随着OpenStack大规模部署,调度瓶颈开始凸显,社区已经启动新的项目Gantt,逐步将nova-scheduler剥离;
社区已经找到版本间兼容的新的方式:microversion,特性扩展更加严格;
随着Nova代码规模的上涨,社区开始有意识的进行内部重构,优化代码逻辑
详细分析:
继续阅读 »
对于一些IOS 开发者而言,管理第三方库的确是一件令人头疼的事情。而Cocoapod 恰恰是解决你这个烦恼的一个第三方管理库。
尽管pod上有许许多多的第三方库提供给开发者使用,但是很多人还是喜欢把自己的一些库或者Helper使用到各个项目上面去,这样不单单是可以提高个人的开发效率。对于以后有新人的加入,项目的重构管理起来都是颇为省劲。下面我就介绍一下如何去制作一个“私有的POD”。
继续阅读 »
概述
此版本重构了整个xmake,使得xmake更加方便地进行多语言扩展,并且在之前原有的构建语言支持上,新增了对golang, dlang 和 rust 程序构建支持。
并且重写了所有文档,提供更加详细完整的接口手册和文档支持:新版文档
License也从之前的LGPLv2.1改为Apache License 2.0,更加详细的改进请看下面详细描述:
新特性
添加--links, --linkdirs and --includedirs 配置参数
添加app2ipa插件
为xmake.lua工程描述增加dictionay语法风格
提供智能扫描编译模式,在无任何xmake.lua等工程描述文件的情况下,也能直接快速编译
为
继续阅读 »
虽然已经一年多没有维护gbox这个图形库项目了,最近确实时间不够用。。。
今年的重点是把xmake彻底正好,至少在架构和大功能(包依赖管理)上,要完全落实下来,后期就是零散的维护和插件功能扩展了。。
tbox我会陆陆续续一直进行一些小规模更新,明年上半年稍微重构一些模块后,就开始重点重新搞gbox了,这才是我一直最想做,也是最喜欢做的项目了
所以我宁愿开发的慢点,也要把它做精,做到最好。。
好了,回归正题,虽然现在gbox还处于早期开发中,并不能用到实际的项目中去,但是里面的一些算法,还是很有参考学习价值的。。
我这两天没事就拿出来分享下,如果有感兴趣的同学,可以直接阅读源码:monotone.c
毕竟这个算法我陆陆续
继续阅读 »
本书第六章的读书笔记,也是我这个系列的最后一篇读书笔记。后面7、8、9章分别讲的“测试、调试与重构”、“设计和架构的原则”以及“使用Lambda表达式编写并发程序”,因为笔记不好整理,就不写了,感兴趣的同学自己买书来看吧。
并行化流操作
继续阅读 »
总结
2014年,我只写了1篇文章。今年,我写了27篇文章,算是进步吧。
2014年,我说深入研究设计模式。今年,我负责部门主要业务的框架重构,现在已经在线上稳定运行,而在这当中学到的编程思想也让我受益匪浅,可以说是远超我自己的期待,算是进步吧。
继续阅读 »
源码
更新内容
此版本重构了90%的代码
新特性
增加task任务机制,可运行自定义任务脚本
实现plugin扩展机制,可以很方便扩展实现自定义插件,目前已实现的一些内置插件
增加project文件导出插件(目前已支持makefile的生成,后续会支持:vs, xcode等工程的生成)
增加hello xmake插件(插件demo)
增加doxygen文档生成插件
增加自定义宏脚本插件(支持动态宏记录、宏回放、匿名宏、批量导入、导出等功能)
增加更多的类库用于插件化开发
实现异常捕获机制,简化上层调用逻辑
增加多个option进行宏绑定,实现配置一个参数,就可以同时对多个配置进行生效
增加显示全局构建进度
继续阅读 »