三个月前经理交代开始开发公司的新版本。虽然大部分都需要翻新,但基本的需求还是可以很方便的得到。我从没有接触过以前的那套软件,而且也没有任何文档。所以对于我来说可以看成接手一个新项目。
需求的确定,我所做的第一步是解决技术上的难点。期间包括试验基本用去了一个月的时间。。
第二步我做的是界面,做出各种情况所需的界面。大概用掉半个月
接下来 我用VISIO学着画了不少“模块”的划分,以及流程图
年后来了这两个星期我在写代码。 自己什么都不懂,只是简单的查些资料去做。几乎完全是凭感觉,感觉需要做什么就去做什么。。而现在发现,技术上的难点我最多也只看到了50%,甚至仅仅的50%我还要考虑到底要不要再继续用下去。界面虽然做出不少,仅仅控件的改变,(从DBGrid 到 StringGrid 再到ListView)就使我反反复复做一些划分的模块抛弃再重新划的工作。以及流程图的放弃、数据库的更改模块、流程图的文档,因为当初很多都没有考虑到,也就是说很多需要的文档中都没有,最终把那些模块划分、流程图扔到一边,依靠脑袋想着去写代码!!还有一个半月就要交差了。最少也要给一个基本能使用的软件。然后再修改、测试不知道我这样的做法、顺序 算不算的上是对程序构架的搭建?如果算是的话我想应该属于:失败中的失败! 再谈模块、类的划分。在半年前我发过一个帖子:《学delphi,学编程,重要的是学编程思想!》(http://community.csdn.net/Expert/topic/3299/3299427.xml?temp=.8234674),虽然我不时的回头看看大家的回复,对我的指点。但始终逃脱不了庸俗的控件操作,低级的过程化设计。我想这半年我最大的提高无非就是能够把代码抽出来,简单的想就是多了一些function,procedure.我这颗猪脑甚至往往写程序的时候会把某一个函数所需要调用的另一个函数放在它附近,简单的想就是滚一下鼠标就可以找到对应的函数!在我脑中面向对象到底在哪里??不敢想象半年前的我站在什么样的角度去看“编程思想”!。 类我试着写了不少。我猜想,之所以目前这样的状况是因为我没有发现它的优势,甚至还感觉到类中的那些函数放到一个单元中更方便!我还常用单元和类进行比较
计划下星期把所抽出来的函数先放到不同的单元,之后再对不同的函数进行划分,把划分好的函数组成类。倒着来不知道能不能有点作用~~~哎,,,。
望各位能够多多指教--------------------
小人本住在黄河的一边,家中有屋又有田,生活乐无边。自从有了CSDN,它占我
时间夺我钱,逼我卖楼又卖田,流落在街边……各位朋友可怜我,陪我聊聊天!聊聊天!
需求的确定,我所做的第一步是解决技术上的难点。期间包括试验基本用去了一个月的时间。。
第二步我做的是界面,做出各种情况所需的界面。大概用掉半个月
接下来 我用VISIO学着画了不少“模块”的划分,以及流程图
年后来了这两个星期我在写代码。 自己什么都不懂,只是简单的查些资料去做。几乎完全是凭感觉,感觉需要做什么就去做什么。。而现在发现,技术上的难点我最多也只看到了50%,甚至仅仅的50%我还要考虑到底要不要再继续用下去。界面虽然做出不少,仅仅控件的改变,(从DBGrid 到 StringGrid 再到ListView)就使我反反复复做一些划分的模块抛弃再重新划的工作。以及流程图的放弃、数据库的更改模块、流程图的文档,因为当初很多都没有考虑到,也就是说很多需要的文档中都没有,最终把那些模块划分、流程图扔到一边,依靠脑袋想着去写代码!!还有一个半月就要交差了。最少也要给一个基本能使用的软件。然后再修改、测试不知道我这样的做法、顺序 算不算的上是对程序构架的搭建?如果算是的话我想应该属于:失败中的失败! 再谈模块、类的划分。在半年前我发过一个帖子:《学delphi,学编程,重要的是学编程思想!》(http://community.csdn.net/Expert/topic/3299/3299427.xml?temp=.8234674),虽然我不时的回头看看大家的回复,对我的指点。但始终逃脱不了庸俗的控件操作,低级的过程化设计。我想这半年我最大的提高无非就是能够把代码抽出来,简单的想就是多了一些function,procedure.我这颗猪脑甚至往往写程序的时候会把某一个函数所需要调用的另一个函数放在它附近,简单的想就是滚一下鼠标就可以找到对应的函数!在我脑中面向对象到底在哪里??不敢想象半年前的我站在什么样的角度去看“编程思想”!。 类我试着写了不少。我猜想,之所以目前这样的状况是因为我没有发现它的优势,甚至还感觉到类中的那些函数放到一个单元中更方便!我还常用单元和类进行比较
计划下星期把所抽出来的函数先放到不同的单元,之后再对不同的函数进行划分,把划分好的函数组成类。倒着来不知道能不能有点作用~~~哎,,,。
望各位能够多多指教--------------------
小人本住在黄河的一边,家中有屋又有田,生活乐无边。自从有了CSDN,它占我
时间夺我钱,逼我卖楼又卖田,流落在街边……各位朋友可怜我,陪我聊聊天!聊聊天!
模块的划分,自己脑子里没什么概念,前段时间搞个系统,我划分模块就是按照菜单划分的
我想表达下这半个月来的体会,我之所以转delphi,主要是因为这学期要做软件工程,要上组件编程(com编程),AI,Computer network....还有很多很多课,几乎都要做或大或小的项目,再加上要考研,眼下时间很紧,而我知道,delphi在做工程或者开发组件上远比vc快捷.而且网上有大量第三方组件,否则我决不会移情别恋.
刚开始我和大家都一样看书,看vcl架构,因为我知道想成为delphi高手必须熟悉windows编程和vcl(不过现在估计还要熟悉.net),不过很多看不懂,毕竟涉及到太多的设计模式,然后看例子直接写了,没有看语法,毕竟以前用pascal写过算法.写小程序时,根本体会不到什么oo,不过这也很自然,oo的出现不是凭空出现的,主要在复杂的大软件上用到,还有就是抽象出模块的相同点的时候用道,目的也是重用,易扩展,易改写,易维护.
我体会最深的就是开发组件的时候,真正需要oo思想,当然没有结合具体问题的组件开发没有多大意义.
用mfc,stl的时候,我可能会想该不该扩展该类,但用delphi的时候,就会想该不该改写或者扩展某个组件.
楼上的一星说的:
"企业代码当中更多的定性代码,而相对来说,扩展型代码使用得比较,即使是二次开发支持包,也同样是使用企业代码的接口,而并非直接使用企业代码来进行扩展。"
我还是学生企业的事情我不知道,但这思想其实就是com的思想..
應該沒有放之任何系統都完美的設計, 要看系統的規模, 變化範圍, 以及使用範圍, 簡單的, 其實也不用過多的設計!至于面向對象的設計, 我覺得還是要先看看書, 再聯系實際項目思考
http://www.2ccc.com/article.asp?articleid=841就是这个了
现在还是郁闷了吧- -bOOP,重要的还是思想,用OO的方法去思考问题,解决问题:)
不管大小项目,不能为了OO而OO,在交货的时候能拿出东西才是关键,
在这个前提下,才能更多的考虑到扩充,可移植性,整体效率..不同的项目有其特性,这些东西就不能过多的考虑OO了