none
怎样培养面向对象的编程思维 RRS feed

  • 常规讨论

  •       之前学过C,也学过C++。

          困扰我几年之久的一个问题是:怎样从面向过程的思维方式,转向面向对象的思维方式?

          虽然接手C++也几年了,但是面向过程的思维方式怎么也转变不过来,这在工作中极大地困扰着我,我该怎么办?

    2016年4月26日 9:32

全部回复

  • 首先工作中能把问题解决就可以了,这就很好了,不一定要为技术而技术。

    如果当前的项目,使用面向对象技术能让程序更容易维护,开发速度也快,就需要深入学习这方面的技术。

    通过一些有代表性的框架,源代码,例子逐步学习。


    专注于.NET MIS开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    2016年4月26日 12:35
  • 如果可以的话,建议学习一下设计模式~

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    2016年4月27日 3:56
    版主
  • 在开发中,你可以这样想,如果是你维护一个产品或者是升级一个产品,为了代码复制性变高,为了后续工作的轻松,自在。我只要在最开始设计好自己的常用的类,后续直接把.CPP 和 .h文件直接加入工程就可以了,要是添加新的功能,直接在类里面添加,就可以后续继续用,是多么方便,而且开发效率还高,可以早早回家下班,不用加班。

    设计模式,其实很经典,可以看一下,自己可以尝试去封装一下产品.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. <br/> Click <a href="http://support.microsoft.com/common/survey.aspx?showpage=1&scid=sw%3Ben%3B3559&theme=tech"> HERE</a> to participate the survey.

    2016年4月27日 6:13
    版主
  • 在开发中,你可以这样想,如果是你维护一个产品或者是升级一个产品,为了代码复制性变高,为了后续工作的轻松,自在。我只要在最开始设计好自己的常用的类,后续直接把.CPP 和 .h文件直接加入工程就可以了,要是添加新的功能,直接在类里面添加,就可以后续继续用,是多么方便,而且开发效率还高,可以早早回家下班,不用加班。

    设计模式,其实很经典,可以看一下,自己可以尝试去封装一下产品.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. <br/> Click <a href="http://support.microsoft.com/common/survey.aspx?showpage=1&scid=sw%3Ben%3B3559&theme=tech"> HERE</a> to participate the survey.


    我常常想,开发完一个产品,并不算这件事的结束,而是维护、改进这件产品的开始。这就需要提高代码的可重复性,可以减轻后续工作的工作量,使自己轻松、自在。

    然而我常常面临两个问题的困扰。一是代码的可重复性很低,往往用过一次之后,就不会再用了;二是常常半途而废,有时候遇到一个困难,就想绕过去,但结局往往是被它拦住了。

    MFC编程的时候,我很少定义自己的类,而是直接在MFC类里面扩充。比方说显示相关的代码都写到View类里面去,软件操作的代码都写到Doc类里面去。最终我写的代码都没有重复利用过。

    设计模式,能解决上面提到的两个问题吗?

    2016年4月28日 16:09
  • 设计模式也解决不了可维护性的问题,需要对系统有深入的了解,对编程语言非常熟练,能从整体上把复杂的需求分解成几个抽象的类型和它们的组合,能做到这一点,应该就是理解了设计模式。单纯的去看各个模式,枯燥,又理解不了,即使理解了,也不能运用。

    "软件操作的代码都写到Doc类里面去。最终我写的代码都没有重复利用过"

    这种情况可以考虑经常的重构一下代码,现在开发工具都内置的了重构工具,很方便提炼或是抽象代码。


    专注于.NET MIS开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    2016年4月28日 23:46
  • Hi 哥们儿,

    由于你这个不是C++开发的问题,更像是一个讨论的问题,我将改变改帖子的性质,变成一个讨论贴,希望你能理解。

    cheng


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. <br/> Click <a href="http://support.microsoft.com/common/survey.aspx?showpage=1&scid=sw%3Ben%3B3559&theme=tech"> HERE</a> to participate the survey.

    2016年4月29日 2:28
    版主