Skip to content

Latest commit

 

History

History
45 lines (30 loc) · 2.24 KB

README.md

File metadata and controls

45 lines (30 loc) · 2.24 KB

Starting! See ....

^_^

FFlib 是轻量级的C++类库,所谓轻量是指代码结构清晰,阅读性强,绝对的精巧极致,当 从底层到细节都遵循了极简原则时候,类库的性能自然而然达到了很高的水平。FFlib中总 结了非常多的现代化的C++ 技巧,Right Now C++11都呼之欲出了,C++er也要与时俱进了。

本人从事网络游戏开发工作,在设计开发分布式并发的C++服务器程序时,总结了很多经验 和模式,一方面希望自己的心得更有条理的整理出来,另一方面感觉到有些东西设计的还是 很有价值的,也希望能够和业界同仁共赏析, 这就是FFlib诞生的原因。

本类库的主要涉及: 分布式:探讨了一种broker模式,参见知然工作室: http://www.cnblogs.com/zhiranok/archive/2012/08/19/fflib_master_slave.html

多线程并发:

如何使用多线程更加优雅、低耦合?任务队列可以组合出多种模式,玩转多线程。

定时器: 

通用的定时器设计,如何更加高效、易用?使用epoll 实现的原生定时器,区区几百行代码而已。

网络库:

边缘触发ET模式的epoll设计,最直接最简单的epoll用法,同样负责人告诉你,同样是最高效的用法(之一吧)。遗憾的是,网上充斥了太多的epoll错误的用法,即使某些业界大牛,也没有使用epoll至简至美的用法,希望对大家正确理解epoll有帮助。

日志组件:

这个绝对是FFlib中最亮点之一,和网络库是最为本人津津乐道,sprintf的日志风格,但是保障了类型安全,异步调用,参数容错,这个在现有的日志库里几乎没有。

AI、分类算法等:

主要是写着玩的,有的是C++写到,有的是python,比如A星算法、朴素贝叶斯、隐马尔科夫等。

LUA: 

本库设计开发了lua 绑定、嵌入的lua库。最常用的lua操作都支持,同样的本库致力于教科书式的实现,代码保持很高的阅读性!

CQRS: 

了解领域驱动设计DDD的应该了解一些CQRS,本人目前积极的探索CQRS的实践,希望针对大型C++服务器程序的复杂性提供一个设计框架!

oh nice !!!!!!!! 欢迎大家使用本库代码.