已经有了一次web项目的开发经验,给自己单一的编程生涯增添了一些色彩。但是自己终归是C++工程师,于是在那次web开发后又重回C++项目开发中了。

1.公司最大项目——某综合性系统
    公司要做一个客户端有数个应用系统的大型综合平台。有客户端,自然就得有服务端,管理端。客户端的应用策略要在管理端生成...,上报信息必须要在管理端展现...,管理端还需要有精细的权限系统,比如管理员和审计员权限的分离,管理员和普通用户权限的分离...,不管你信不信,以前我们做这样的系统,还完全是按照C/S模型来做的,管理端界面和逻辑的复杂度可想而知。毫无疑问,这次界面的开发不管是时代要求还是开发成本要求肯定要用web。于是C/S,B/S模型的结合便应运而生(C/S避免不了,因为客户端子系统是win32程序,B/S用在管理端上)。

2.web开发人员——独自一人
    决定要进行web开发后,发现规划进项目组的进行过web开发的人员就我一个,本来我不想继续做web开发的,因为频繁在C++语言和java,js语言间切换,频繁在不同的IDE间切换确实够烦人的。但是有什么办法呢,现在就我一人还懂些web开发(当然水平也属于初级),于是不情愿但还是毅然接手了web端初期的全部开发任务。

3.技术选型局限?——停滞不前
    咱当时还以为ajax的DWR是银弹呢,立马在管理端应用上了DWR框架,这次吸收了上次的一些教训,引入了js的jquery框架,把页面布局也进行了一系列的封装,减少了不少工作量,后台的java部分也应用了jspfhttp://yaocoder.blog.51cto.com/2668309/563347插件机制,风风火火的做完了管理系统的责任人管理,策略管理和信息展示部分。好了,开始做登陆部分和管理端权限部分了,但是发现要控制不同用户的访问页面权限无法单纯用DWR来实现,但是使用struts却能很好的实现此类权限控制,幸亏DWR支持扩展,于是想要把DWR框架和struts框架结合来实现管理端。于是,开始研究此方案...

4.web奇兵——新的开始
    正在这web端停滞不前的阶段,公司招聘了一个有多年web开发经验的年轻web老兵。随着他的到来,也带来了他曾经公司使用过的一个web框架,大名鼎鼎的SSH框架,整个web架构是这样的
     Controller(控制层):Struts2,Spring
     数据持久层:hibernate
     Model(模型层):JavaBean
     前后端数据交互:ajax+jquery
     View(视图层):Freemarker
有了正牌军的正规武器,咱以前那框架自然该淘汰了,于是我就和他一起把业务套进了这新的web框架中,从这框架中和从他身上学到了很多web开发知识和经验。
(附件有一些ssh的资料)

5.退出web端——通讯服务器
    随着公司对web开发人员的招聘扩充,而且我们系统基本的web框架也已经成型,我这个半路出家的人儿又得回到C++项目组里了。已经很怀念C++开发了,而且这次是通讯服务器的开发,对多线程,socket,性能,容错...等等技术能力绝对是种挑战和锻炼。

6.感悟
    上面已经讲了,这次web开发经验给自己单一的编程生涯增加了色彩。不仅如此,正是有这次对多种语言的项目实践,让我更好地理解了不同编程语言的特点,特别是通过java语言我更好的理解了设计模式,通过javascript更好的认识了动态语言的特点。最大的收获就是收获了一份视野,一份兴趣,发现除c++之外,还有很多有趣的编程语言,也有了以后我对python的学习。