日期:2014-05-17  浏览次数:20779 次

C# 如何写面向对象的程序(个人感悟)
当你拿到一个比较大的项目,一个人做,你会如何去做,是苦思冥想设计完所有的逻辑,类,细节,再去写,还是抓住主要的逻辑,其他后面再添加,请各位请前辈赐教。我限定下范围:C# 面向对象编程
c# 对象编程

------解决方案--------------------
1,先把项目彻底的分析一遍
2,找出其中的技术问题和关键点
3,去网上找一些优秀的框架,学习。
4,对于数据库,良好的设计规范,多用存储过程,触发器,之类的
5,规范的命名
6,多问,勤学
7,做好项目规划和进度安排
------解决方案--------------------
对于一个大项目来说,不可能在开发之前对所有的细节都考虑得很周到,你要做的首先是和客户把所有的需求都了解透彻,形成需求分析文档,尽可能详细些并且不要提太多技术方面的内容,有可能的话可以先画个界面的草图,然后让客户确认,这不是教条而是对自己的一种保护,因为客户很有可能在中途变更需求,如果真有这种情况,你可以拿着当初他确认过的需求说事,加价或加时间。
在吃透了需求以后,得考虑系统怎么搭,应该是一些框架性的东西,考虑好需要用到哪些技术,这些技术之间要怎么衔接,如果没有现成的技术还需要自己先做一些功课。在这个阶段,最好也能形成文档,把能考虑到的问题都写下来,特别是一些业务规则,不过这是给自己看的,所以可以写得随便些,这个文档可以很好地帮助你在后续开发的过程中把握主干,不至于越往后开发越偏离方向。
除非你有很严重的强迫症,否则千万不要过于教条,例如N层架构、模式什么的,至于LZ说的面向对象编程,真的不要太在意,因为C#本身就是一门面向对象的语言,从使用它的第一天起你已经被面向对象了。不过底限得把握住,我的底限和原则是:
1、绝对不在界面层的DLL里写业务处理逻辑。
2、绝对不在界面层的DLL里进行直接的数据访问,甚至不引用System.Data这个DLL。
3、绝对不在业务逻辑层对界面进行干预,绝对不引用System.Web或System.Windows.Forms这些用于界面的DLL。
4、对功能类似的代码尽可能避免写在两个地方,应该把相同的部分抽象出来,利用参数或面向对象的多态特性进行重载来实现不同的需求。
------解决方案--------------------
我一般这么做的,我也是一个人在搞项目

1.先把需求确定
2.考虑采用什么技术
3.业务逻辑设计,
4.根据业务逻辑设计持久对象
4.从最基本业务逻辑开始往下写,一边写一边重构。