oop编程就是业务,也许,只有纯语言才算是技术吧
解决方案 »
- xfire开发的webservice高并发访问时出现There must be a method name element.
- 关于java 生成流水号
- axis2 调用 C# web services Connection reset 异常问题
- 关于hibernate配置join节点的问题
- struts2.0的apps里的怎么部署使用?
- eclipse的奇怪错误,好长时间没有解决,大家帮忙呀(分不够再加)
- JBuilder2005和WebLogic的问题。
- 在struts-config.xml包含多个本地化的消息资源文件(application.properties)怎么实现?????????
- 请问: 怎么将org.w3c.dom.Document 转换成字符串.
- 初学者求请教java正则表达式,匹配不成对的把该字符初始化null,求指点,谢谢了
- %100 java开发的webgis
- <html:errors /> 标签不显示错误信息?
C++ 之父在它的<<C++ 编程语言中>> 前言(也许叫序言,又或绪言,不记得)
提到了计算机语言的2个方面:
1.是面向机器生成高效的代码. ( 我以为 C++ 做得很好 ).
2.是面向程序员 , XXXXX ( 不记得此处何言) . 当软件越来越大,代码越来越多时, 第二个方面越来越难以达成(也就是让程序员可以不用太关心实现就可以很好设计软件, 更容易把业务逻辑这种人类思维和机器代码生成 贯通.
所以OOP 不是技术, 技术部分编译器为我们做了很, 我们只需要思考, OOP 让我们能很好地把自己这几十年学习到的任何东西能映射到 指挥编译器生成具体工作的代码( 尽可能的保证设计效率和可维护性,可扩展性等) , 具体事情做的步骤不一样, 但是人们对事物的认识中总有很多相通的东西 , OOP 就是要让程序员更自如地的运用已掌握的规律解决已知的,探索未知的慢慢积累 , 设计模式, 重构等便 OOP 之后的一些经验或手法 .
如果我想完成一项工作,那么毫无疑问,我面临的问题就是业务,而我所能用到的就是某种技术,在这个意义上,工具就是技术,学习工具的使用就是技术。
比如我是客户,我想看到打印出来的报表,这对于我来说的业务就是打开程序,点击浏览,选择打印,就ok了。这个时候我用到的就是某种达到这种效果的技术,比如java。
如果我是做这个报表打印的程序员,那么我要面临的业务就是写好打印程序,设置纸张大小。在完成这个工作的时候要用到某种技术,比如java.awt.print包。
如果我是写java.awt.print包的程序员,那么我面临的业务,也就是完成这项工作所必需的步骤是:编写打印接口,编写特定操作系统的实现接口的类,调用特定操作系统的本地函数。在这里,我强调业务而忽略技术。楼上讲到“OOP 不是业务, 是思想“,是不确切的,OOP是一种思想是相对于过程式编程来说的,它本身并不重要,实际上,思想,也不重要。“思想,什么也实现不了”(马克思语)JLabel,JButton是技术吗?它们的每一个属性,每一个函数都是为了解决计算机世界的所必须解决的问题而存在的。知道做什么,远比知道怎么做重要
然后买本设计模式的书,你就知道OOP有多重要了。