基于.NET的Windows数据库应用程序开发的心路历程 --我的程序“猿”进化之路

rufengit 2012-04-25 06:39:33
加精
自从2008年3月份开始接触.NET,不不不,应该说是接触C#以来,就一直从事以数据库为中心的各种Windows平台的应用程序开发,屈指一算,已四年矣,现在把这几年中的一些心得体会做一总结。
虽然在本科和读研期间就一直接触编程,但一直使用的C、C++,而且只是粗懂一些皮毛。工作以来,由于项目的需要,改用C#,从而开始了我的.NET之路。
工作以来,小弟也开发了大大小小十几个项目,不过百分之二百五都是针对数据库的应用程序,采用的是古老的两层C/S结构(直到最近有所悟,以前一直以为自己用的是三层C/S结构,到现在才明白只不过是逻辑三层而已,物理上依旧是两层,胖客户端罢了)。
阶段1:标准的个体小作坊方式,凌乱无章的代码、庞大的类,空用着面向对象的语言,写着面向过程的代码,虽然知道封装、多态、继承,却从来没有使用过,可能是以前C的影响根深蒂固吧。操作数据库的SQL语句遍布大江南北、长城内外,一片狼藉,经常为了修改某处代码,牵一发而动全身,整个程序出现不可预知且难以捕捉的错误,在Bug的泥潭里爬行...
阶段2:不知从哪里听说了三层架构模式,于是就在网上找了一些高人的代码加以研读,初步形成了自己对三层架构的“理解”,即 BLL、IDAL、DAL、DALFactory、Model,从而开始了大规模、成批量的泛滥套用之路,当然是不求甚解、生搬硬套,数据库中有n个表,就会建立n*5个类,并且起了个好听命名空间Frame,终于站起来了...
阶段3:由于每次都要手动建立5n个类用来实现数据库的CRUD(注:此时还不知道什么叫CRUD),太累,于是就绞尽脑汁,写了一个三层代码的自动生成器,美其名曰ThreeLayerCreater,根据用户输入的表结构,自动生成相应的项目代码,开始学会自己制作工具...
阶段4:机缘巧合,在CSDN上有幸阅读了周公的博文一则而偶得灵感,利用泛型和反射机制写了一个通用类库ThreeLayerLib,摆脱了数据库表结构对实体类的约束,不用每次都建立5n个类,实现了双手的进一步解放,开始了直立行走...
阶段5:以前从没有听说过什么SSH(Spring+Struts+Hibernate)架构,从没有听说过什么ORM、IoC,不知框架为何物,不知.NET本身就是一个庞大的框架,更不知MFC也是一个C++的框架,从没有听说个MVC、GoF23设计模式,而所有这一切都由于最近接触博客而成为过去,我的脑袋被这些气势磅礴的名词搞得天旋地转。
阶段6:继续进化ing...
...全文
6838 94 打赏 收藏 转发到动态 举报
写回复
用AI写文章
94 条回复
切换为时间正序
请发表友善的回复…
发表回复
int_char 2013-01-06
  • 打赏
  • 举报
回复
学习了
zwhkmxy 2013-01-05
  • 打赏
  • 举报
回复
这个里面属于网页设计师的东西
qht11 2012-12-27
  • 打赏
  • 举报
回复
计算机科班,大三苦逼SQL实验中, 很无解,膜拜lz 大神。。求罩
songjinxi123 2012-12-15
  • 打赏
  • 举报
回复
没看太懂。。。。。
libaojun6 2012-12-14
  • 打赏
  • 举报
回复
楼主共勉,屌丝表示刚学java,自学数据结构中,在数据库门外,呵呵
linwaterbin 2012-12-11
  • 打赏
  • 举报
回复
数据库开发!支持
sjm3916 2012-08-30
  • 打赏
  • 举报
回复
很想知道ADO.NET+sql到底是干什么的,完全不懂
xilin_20061 2012-08-23
  • 打赏
  • 举报
回复
很想知道ADO.NET+sql到底是干什么的,完全不懂
rufengit 2012-05-05
  • 打赏
  • 举报
回复
实体自动生成类ModelCreater已经开发完毕,正在单元测试,不久就跟大家见面了。
funnysix 2012-05-04
  • 打赏
  • 举报
回复
听说回复能拿积分。。。?=。=!
q27981872 2012-05-04
  • 打赏
  • 举报
回复
半路出家,才20岁,觉悟高啊。。。哎,这让本科毕业还停留在1阶段的情何以堪。
jedochn2 2012-05-04
  • 打赏
  • 举报
回复
做程序猿不到一年的人飘过。
rufengit 2012-05-04
  • 打赏
  • 举报
回复
呵呵,在下菜鸟一个
xiaojunjun1202 2012-05-03
  • 打赏
  • 举报
回复
bu cuo!!!
rufengit 2012-05-03
  • 打赏
  • 举报
回复
没办法,只是贫血业务模型,请大家指点关于业务层的构想。
退役的老毅丝 2012-05-03
  • 打赏
  • 举报
回复
牛逼啊
退役的老毅丝 2012-05-03
  • 打赏
  • 举报
回复
呃啊。。。
q532882148 2012-05-03
  • 打赏
  • 举报
回复
- - 拿分走人
退役的老毅丝 2012-05-03
  • 打赏
  • 举报
回复
呃。。。
MrGony 2012-05-03
  • 打赏
  • 举报
回复
关注~
加载更多回复(73)

7,765

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧