- 主题:很不理解为什么要学信息学竞赛,奥数不好吗?
感觉都有些以偏概全了,底层代码,比如os,数据库引擎,算子库基本不用OO,最多用C++的STL之类的,它们追求的是极致的性能。上层应用才会用OO,解决工程方面的一些问题,把OO吹上天没啥必要。
--
FROM 120.244.24.*
【 在 iamgj 的大作中提到: 】
: 为什么会有这么多外行来评论面向对象,我确实是不太理解
: 难道是咱们国家的大学教育实在是太拉胯了?
:
: ...................
本来还想给你留点面子,说以偏概全力度不大够。你这算井底之蛙吧,就像盖楼的包工头在勇敢的质疑设计师的创意一样
--
FROM 120.244.24.*
看你像是写java的,你觉得java引擎是用什么写的吗?你在那里啃哧啃吃的优化java代码,不如人家在引擎上一点点的优化。越是底层的东西,效率越是重要,面向对象虽然可以提高代码质量,但对于高手来讲,用不上,手写的效率最高,任何封装都是多余的
--
FROM 120.244.24.*
【 在 iamgj 的大作中提到: 】
: 别避重就轻了,java编译器也得用面向对象的方法写
: Linux源码里也是大量的面向对象代码
: 你对计算机软件系统的理解还停留在上世纪八十年代
: ...................
可笑,本来以为你是无知,现在感觉是有些让人齿冷了。回去看linux代码去
--
FROM 120.244.24.*
【 在 iamgj 的大作中提到: 】
: 对,你先去读读Linux源码再说吧
:
真好笑,本来点出你的问题,认栽就算了,嘴硬什么?要是面向对象那么好,你去写个操作系统给大家证明一下好了
--
FROM 120.244.24.*
【 在 iamgj 的大作中提到: 】
: 你看别人在讨论一个问题,你一知半解还想说几句
: 被别人指出来你说错了还不承认
: 你还是去把Linux源码好好读一遍吧,在这件事情上抬杠是没有任何意义的
: ...................
你还真实自恋。OO也就是上世纪90年代流行了一整子,早就过气了。你一知半解,才会当作宝贝。回顾计算机语言发展,总是向更简单、更符合自然语言的方向发展。最先机器语言,没几个人会写,后来出了C/C++,一些高手会写了,但更多程序员入行后,发现他们没法操纵这么复杂的语言,所以出来一些人搞面向对象,试图把核心代码用类封装起来,让初级程序员好用些。再后来发现面向对象也罗嗦,互联网出来后就是php/js大行其道了,再后来人工智能出来,发现python这种解释性语言也够用了,而且无论高手还是新手都能玩。所以虽然大多数语言都有了OO特性,但除了java,好像也没什么人用。因为不就是给计算机说话吗,啰里啰唆搞那么复杂的封装干什么?
至于在这个话题中,我会推崇C/C++,一是因为信息学竞赛的目的使用最小的时间复杂度和空间复杂度解决算法问题,二是C/C++是计算机产业的基础,最底层的代码基本上都是C/C++写的,第三C/C++有助于小朋友了解计算机最基本的操作,比如bit操作、内存操作等,打好基础。
回到本话题,如果OO那么重要,怎么这么多年OI比赛从来也不考察呢?
--
FROM 120.244.24.*