|
发表于 24-11-2012 01:02 AM
|
显示全部楼层
yeenfei 发表于 23-11-2012 11:45 PM 
一些像eclipse 的IDE把开发者弄得越来越懒了 会自动提醒该type目前的设计access不到,列出解决方案12 ...
以现在越来越复杂的软件,platform,OS与libraries,
现在是不可能回去没有intellisense的IDE。
不是不要懂这些所谓basic的东西,
或者懒惰。
而是没有必要花这些时间去深入探讨这些No value added的事项。
应该把时间花在更有实际价值的事件上。
比如设计与逻辑。
相信没人会因为你懂得在code里把GUI弄好而赞扬你。
人类与飞禽走兽不同之处,
在于我们懂得利用工具。
有这么好的工具放着不用,
枉费这些工具的设计者的用心。
也正因为如此,
我们才有工作做嘛!
呵。。。

本帖最后由 Sunyata 于 24-11-2012 01:03 AM 编辑
|
|
|
|
|
|
|
|
发表于 24-11-2012 02:11 PM
|
显示全部楼层
Sunyata 发表于 24-11-2012 01:02 AM 
以现在越来越复杂的软件,platform,OS与libraries,
现在是不可能回去没有intellisense的IDE。
不是不 ...
还是喜欢C++, 有空位记得提拔偶 :RF:
|
|
|
|
|
|
|
|
发表于 25-11-2012 10:18 AM
|
显示全部楼层
yeenfei 发表于 24-11-2012 02:11 PM 
还是喜欢C++, 有空位记得提拔偶 :RF:
哈哈。。。提拔就没能耐了。。。
C++的出路越来越少。。。
在新加坡很难混了。
在马来西亚我倒不清楚。。。
现在我是混C#的。。。
|
|
|
|
|
|
|
|
发表于 25-11-2012 12:34 PM
|
显示全部楼层
Sunyata 发表于 25-11-2012 10:18 AM 
哈哈。。。提拔就没能耐了。。。
C++的出路越来越少。。。
很多重大的软件都需要C++,可惜不是在亚洲开发
|
|
|
|
|
|
|
|
发表于 25-11-2012 12:44 PM
|
显示全部楼层
yeenfei 发表于 25-11-2012 12:34 PM 
很多重大的软件都需要C++,可惜不是在亚洲开发
是啊!
C/C++怎么说也陪了我走过不少岁月了。。。
以前常买的C/C++杂志也没了。。。
只能,说时代的不同,
科技的进步与需求,
要被替代的,还是躲不了。。。
|
|
|
|
|
|
|
|
发表于 29-11-2012 02:52 PM
|
显示全部楼层
另外,他们也喜欢把其实就是Global variable的变量,
一直的从这个Object, pass 进另一个object的。
为了能够一直pass来pass去,
结果需要define很多重复的method/constructor带进去,
以及要declare很多local variable来hold着它。。。
真是增加工作量又不reusable... 這麼做是為了消除耦合性
如果一個access很多global variable的class要搬到另一個project,那就要把所有access到的class也一起搬過去。如果那些class又access其他global variable,那不是無止盡?
還有一點是方便做unit test。unit test一般是驗證method/function的正確性,如果耦合性太高test case會很難寫。
|
|
|
|
|
|
|
|
发表于 23-12-2012 11:46 PM
|
显示全部楼层
MaokeJackson 发表于 29-11-2012 02:52 PM 
這麼做是為了消除耦合性
如果一個access很多global variable的class要搬到另一個project,那就要把所有a ...
并不是很认同你的见解。
耦合性高不高,不是OOP就能减少的。
这可要看设计者如何设计了。
当把一个所谓的OOP的class搬到其他project时,
同样的如果其中牵涉到其他class,也是一样要把牵涉的class都搬过去。
同样的,那些class又access其他class的variable,也是一样无止境的搬过去。
软件设计很难有所谓的一个Generic的format的。
不论你怎么做,还是有必须要更改,要custaomize的事项的。
有些class是可以OOP,可以做成generic的。
有些是多此一举的。
比如:把一个巴士的class搬到地铁project里。
很多的东西都得改。
过度的迷信OOP,
只是增加不实际又不实用的工作量而已。
美其名符合OOP或现代软件工程,
实为浪费资源与效率。
|
|
|
|
|
|
|
|
发表于 3-1-2013 03:59 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 4-1-2013 12:17 AM
|
显示全部楼层
MaokeJackson 发表于 3-1-2013 03:59 PM 
我是針對使用Global Variable這點作回應,不是OOP。
順便分享一篇文章
那么说你有消除耦合性的OOP了?
愿闻其详。
至于你给的link其实是想演示polymorphism。
虽然我对java不是很熟悉,
不过大略看得懂。
他做的例子好不好,见仁见智。
不过他还是用了不少的global/public static。
严格来说他的不是OOP了,
他已经用public static value,暴露了value以及使用了static的register。
我个人还蛮喜欢polymorphism和inheritance的。
至于encapsulation就有所保留了,
只会选择性的运用。
本帖最后由 Sunyata 于 4-1-2013 01:46 AM 编辑
|
|
|
|
|
|
|
|
发表于 28-1-2013 11:53 AM
来自手机
|
显示全部楼层
谈oo, 就要讲object跟class两个概念。class用一句话讲完, 就是你自己define 的data type. data type 你懂吧,如char, int, long. 但这些都是built in的由 compiler 决定。如 int a; a这个object 代表计算机里的4个byte, 共32 bit. 我们利用这些基本的type再组成更复杂的type如enum, struct, class. 前面的例子 chicken就是一个复合的类型。hen就是chicken类型的object. 但hen代表的却不再是bit, 而是age, leg 等模仿人类思维的数据和生蛋等方法。再用这种复合类型实现oo 的技术如继承,多态等 本帖最后由 天顶星人 于 28-1-2013 12:24 PM 编辑
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|