这几年我一直使用Go做为主力开发语言,在长期开发实践中,项目经常使用一些开源组件,而各种组件如何进行整合是一项重复的工作,话说不想当将军的士兵不是好士兵,因此萌生写一个应用层框架的想法, 也算是对自己近20年的程序之路的一个总结。
项目名WooCoo定位是一个基于Golang的应用开发框架及工具包,主要考虑是个人在开发并且也没有那么多时间实现偏底层的编码,所以核心组件选取了优秀的开源项目,而WooCoo希望做一个优秀的粘合剂,将这些优秀的组件集成起来,追求优秀的开发体验与工程实践。目前开源在Github中(
https://github.com/tsingsun/woocoo),开发工作流也是基于该平台上。在该项目开发过程中,其实是花费了较多的个人时间,而今年因为各种原因希望参与到更多的交流,加快完善程度,如果能为他人提供更多的借鉴那做的这个事情就是很值得的。
首先我们以常见的现代企业应用业务及其研发架构图展开 (PS 请原谅我的简易图)
目标就是全流程的实现整个研发运维环节的融合与分离,首先是让小型团队及个人开发者可以实现类似单体程序的开发体验,后继又可以扩展至较完善的架构体系,以目前的相应技术透明度,全环节在技术我认为并不存在学习难度,可以考虑得更深远一些。
目前woocoo主要实现了:应用配置,日志,缓存,Web及GRPC以及可跟踪性的支持,开发工具,具体的在项目文档中有介绍。有兴趣的麻烦细看。同时也会衍生了具体的业务项目,如用户权限系统,工作流等。
而由于开发语言(C#,PHP,Go等)及行业经验较多(物流,ERP,证券金融)也同时是公司相应开发框架的开发者及产品架构设计者,但也同时业务及语言切换原因,没能更进一步的完善,而现在的兴起的技术路线验证当时自己对技术的思考。那以此文鞭策自己,考虑值得做就去做,不怕造轮子,就怕轮子造不出来。