作者millerlai (喜欢看海)
看板Programming
标题Re: [讨论] 大家对於物件导向程式语言的选择...
时间Sat Apr 19 07:35:34 2008
为何有人认为选择其中一个就可以吃的开?
A. 若想处理简单的问题, 却用C++/MFC 就是找自己麻烦.
B. C# or Java函式库支援丰富这是对的,但是重点是"标准函式库支援".
C++也有一堆 Open Source的API,但是它不是"标准函式库".
采用 C# or Java 开发会使得程式码精简? 大概是写Hello World吧?
C. 不管是啥语言,只要是开发复杂的系统,开发起来也不会太快.
大型复杂的系统,即使有良好的设计蓝图,按图施工也不见得能够成功.
此外,用C/C++开发本来就有记忆体管理的问题,程式设计师没处理好是C/C++的错吗?
D. 执行Java 的JRE是需要安装,
至於C# 在Vista上已经内建.NET Framework 3.0 ,还要安装什麽?
另外,你所谓函数是虚拟函数(virtual function)还是静态函数(static function)?
函数呼叫由VM执行会比较慢? 先去研究过JIT技术再来谈吧.
E.~ J. 不知所云.
另外,标题跟文章内容一整个离题, 语意也模糊不清.
"大家对於物件导向程式语言的选择"
你是要探讨 Java/C#/C++的语言在物件导向上的优劣?
或是探讨哪一个比较适合未来电脑界的系统开发?
你所强调的多核心CPU电脑架构,跟你用啥语言无关.
不管怎样用啥语言都是跟作业系统有关系.
系统开发不只是有Win32作业系统,还有Linux/Unix/OS-X等不同的作业系统.
搞清楚你要作的系统是什麽? 要用在哪里? 选对的工具才是重点!
你提到一堆IDE or RAD Tool? 这根本不是重点.
你用IDE写出Win32视窗程式就会比较好吗?
难道用UltraEdit开发Java视窗程式就比较差吗?
※ 引述《easterday (数牙)》之铭言:
: ※ 引述《easterday (数牙)》之铭言:
: : (待续)..
: I show my ideas, and then yours...
: Cost1: learn MFC and x86 Assembly
: Cost2: study a popular VM
: A: Coding(处理小问题) in C++/MFC ,while learning x86 Assembly
: 先谈谈A方案的好处和坏处
: 坏处:
: 当然C++/MFC有它先天的复杂度,程式库要自己一个一个找(孤狗捞针)
: 所以撰写速度慢
: 了解x86 Assembly是可以了解debugging的细节
: 虽然听说Win32 Api是一群效率很好的,由x86组合语言建起的东西
: 但是这样会不会牺牲未来四核心CPU的好处呢?
: 好处:
: Compiler有Optimization的功能
: B: Coding in C#/Java ,and study it
: 坏处:
: 没有坏处,真的,我的经验里,这种做法没有坏处...
: 偶尔VM当机,但是这真的很少见...
: 好处:
: 程式库的支援多,程式码精简,撰写速度快,可能有四核心的好处
: C: Big Project(处理大问题) in C++/MFC
: 坏处:
: MFC复杂,程式库要自己找,撰写速度慢,又怕丧失四核心CPU的好处...
: Memory Leak is possibly horrible.
: 好处:
: 目标明确,只要施工蓝图正确,相信应该可以成功
: D: Big Project in C#/Java, and study it
: 坏处:
: 没有装Runtime Environment的人就不能用....
: heap space/gc的动作不一定如预期
: 函式呼叫隔了一层VM,可能会慢
: 好处:
: 撰写速度快,程式库不必自己找,可能有四核心的好处
: E: Bad case, Big Project in C#/Java ==> Big Project in C++/MFC
: 坏处:
: 以上所提全部的坏处都包尽了(又丧失四核心的好处)
: 还要把dependent part自己重新改写...
: 人力资源的问题...(程式设计师要有两批,要不然你两种都要学...)
: 好处:
: 不必装Runtime Environment
: 执行环境会比较单纯,(所以稳定?)
: F: Bad case, Big Project in C++/MFC ==> Big Project in C#/Java
: 坏处:
: 以上所提全部的坏处都包尽了(但是却得到四核心的好处)
: heap space/gc的动作不一定如预期
: 重新改写dependent part
: 人力资源的问题...(程式设计师要有两批,要不然你两种都要学...)
: 好处:
: 四核心的好处
: 程式码比较好维护
: G: Acceptable case, Coding in C++/MFC ==> Big Project in C++/MFC
: 坏处:
: Memory leak is possibly horrible.
: 丧失四核心的好处
: 复杂度增加...但是这是应该承担的
: 步骤:由原来的Code-->画图-->按图施工
: 好处:
: 不必装Runtime Environment
: 执行环境单纯,(所以稳定?)
: H: Acceptable case, Coding in C#/Java ==> Big Project in C#/JAVA
: 坏处:
: 复杂度增加..但是这是应该承担的
: 步骤:由原码-->由原来的图-->画图-->按图施工
: 好处:
: 程式码比较好维护,四核心的好处
: I: Worst case, Coding in C++/MFC ==> Big Project in C#/Java
: 坏处:
: 要装Runtime Environment
: gc/heap space行为不如预期
: 人力资源的问题...(程式设计师要有两批,要不然你两种都要学...)
: 复杂度增加..而且dependent part很多..
: 步骤:由原码-->由原来的图-->画图-->改图-->正确图--->按图施工
: 好处:
: 程式码比较好维护
: 有四核心的好处?
: J: Assumed Case? Coding in C#/Java ==> Big Project in C++/MFC
: 坏处:
: 丧失四核心的好处
: 人力资源的问题...(程式设计师要有两批,要不然你两种都要学...)
: 复杂度增加...而且dependent part很多..
: 步骤:由原码-->由原来的图-->画图-->改图-->正确图--->按图施工
: Memory leak is possibly horrible..
: 好处:
: 不必装Runtime Environment
: 执行环境单纯,所以稳定
: 以上是我对於未来电脑架构的猜想
: 有什麽应该指正的吗?
: 感谢赐教
: 再来我自己应该在ABCDEFGHIJ里面找出我的cost1和cost2哪一个适合我了...
: 感谢赐教
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.13.201.26
※ 编辑: millerlai 来自: 163.13.201.26 (04/19 07:36)
※ 编辑: millerlai 来自: 163.13.201.26 (04/19 07:37)
※ 编辑: millerlai 来自: 163.13.201.26 (04/19 07:40)
1F:推 LPH66:推这篇 就是很多人(不只初学者)会把IDE和 140.112.30.84 04/19 07:50
2F:→ LPH66:程式语言全部混在一起 140.112.30.84 04/19 07:51
3F:推 a1234957:是喔?! 好险我没搞混 218.171.182.30 04/19 13:06