stupid是common的持续改进版本,stupid是KISS的s

 

改进:

1. 之前的common是按文件名来区分功能的,现在的stupid则改成以目录来区分;

2. stupid改进了common中的一些不良设计和错误实现;

         最重要的是网络框架的重新实现,现在的代码起码可读性上好太多了,

         之前的回调方法过于死板,现在模拟了libevent的一些回调思想,

         回调灵活的多,传输协议可以完全按使用者的思想在回调处来实现。

         后续我可能会尽量使用、完善它,我把现在的网络模块叫做Xactor,

         因为它是用Proactor(windows-iocp)和Reactor(linux-epoll)的模式实现的。

         我从不认为一个框架适用于所有的需求,所以后续应该会加入一些简单的特殊情形的框架实现。

3. stupid增加了一些新功能:

         利用一些第三方库进行一些基本需求的封装,比如FTP下载、MAIL的发送

         还有xml的解析,用tinyxml实现的读部分,写的部分未实现,没想好怎么样的接口方便使用。

 

 

stupid的不少接口是通过handle-body模式或者虚基类的方式提供的,

使用者只需要看接口文件的接口就可以,无需关心实现

 

 

迫切需要的改进:

1. 现在的互斥方法都太简单了,后续要加入事件驱动模式的锁、条件变量等较高级点的互斥模式的封装;

2. XML的写的部分的封装,这个暂时不用太着急,关键是要先有好的设计接口,先要想清楚怎么样的接口、方式,更方便使用;

3. Xactor和common中的版本一样,是同时支持server和client的,但其实server有时候要求支持多个listener,这个需要后续加上的;

4. DB、安全方面的东西,这个因工作中没太用到,优先级较低,慢慢考虑。

 

Github SSH clone URL: git@github.com:yanrk/stupid.git

Github Codes URL: https://github.com/yanrk/stupid

 

 --------------------------------------------------------------

2014-08-04:  改进点3已修改并测试,目前xactor的:server支持同时指定多个监听端口,client支持绑定特定的端口。


 

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐