哎!
惨……
最近接连维护两个很烦人的项目,我的第一想法就是重写!可是上头的意思是说我的想法太疯狂。
可每次有这种情况我都感觉还是重写划算点……
之前的之前一个东东重写也就一周时间,而上头还是决定用着,对那东东很麻烦怕新写的别人不适应 以及稳定性的担心。而结果就没重写,接下来的几个月我都被那玩意烦。哎
回正题
这两个项目一个是C++的,一个是C#的,两个都是关于网络的。都是非常有各自语言的特色
C++的那个项目是所有要处理消息的函数都是统一的 void xxxx(void* pData);
然后进去就
int* pxx = (int*)pData;
pxx= XXX(sss);
pData += sizeof int;
SH_XXX* pshxx = (SH_XXX*)pData;
Mxxxk(pshxx,xxxixx);
sss;
Send(g_Buf);//所有处理函数的最后都是这一句
写的是行云流水,酣畅淋漓啊。慢慢看也明白,但是人都容易马虎的,很多时候调的时候一不小心, 就不知道跑哪儿去了。
所有函数使用同一个全局缓冲区,读和写是同时进行的。tb有可能读了一些东西,偏移一段后进入某个 函数又退回一段距离开始写东西。前前后后,读读写写。哎,烦啊
至于C#的那个,导出是委托,每一个东西都有一个父类。比如
Code;
DoubleCode : Code;
ThreeCode : DoubleCode;
SessionCode : TreeCode;
StreamCode : SessionCode;