[問題] C和C++

看板C_and_CPP作者 (大笨羊)時間13年前 (2011/10/16 19:46), 編輯推噓14(14037)
留言51則, 23人參與, 最新討論串1/1
今天遇到一個人 我們在討論程式設計 "我跟他說C的缺點就是缺乏物件導向 雖然他的速度很快 但是難以維護 開發大型程式寫到後面會變得很混亂" 他卻反過嘲笑我說... "物件導向只是一個概念 C++也可以寫得很亂 不是有物件導向就可以解決..." 他似乎對物件導向有偏見... 但是我一直覺得物件導向是程式的一個重大革命 還是我錯了呢... 其實我有點生氣..但是又不知道怎麼回答他.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.228.234.116

10/17 03:49, , 1F
我同意物件導向是重大革命,但它並不能解決任何問題啊XD
10/17 03:49, 1F

10/17 03:49, , 2F
物件導向沒用的話,早期學ooc的工程師是吃飽太閒嗎 ?
10/17 03:49, 2F

10/17 03:49, , 3F
事實上C語言也可以用物件導向寫,C++也可以寫得亂七八糟
10/17 03:49, 3F

10/17 03:50, , 4F
我在AndroidDev板也提到,Linux Kernel就是C語言搭配物件
10/17 03:50, 4F

10/17 03:50, , 5F
導向的產物,所以它可以兼顧高效率以及模組化
10/17 03:50, 5F

10/17 03:51, , 6F
另外很多學生寫C++也只是一個main寫到底...甚至Java也是
10/17 03:51, 6F

10/17 04:01, , 7F
我想如果肯花時間磨,連組合語言也可以寫得很模組化...XD
10/17 04:01, 7F

10/17 04:03, , 8F
ooc 都快陣亡了, Object Oriented Assembler 怎下去 xd
10/17 04:03, 8F

10/17 04:07, , 9F
兩個人說的都對 不過前提是相對性
10/17 04:07, 9F

10/17 04:14, , 10F
其實他講得沒錯啊 ... 你可以多看看 C 的大專案
10/17 04:14, 10F

10/17 04:15, , 11F
像 Linux kernel 或 FFmpeg 如果很難維護, 那 ...
10/17 04:15, 11F

10/17 04:17, , 12F
再看看硬要在 C 套上 OO 的 GLib 有多"好用"
10/17 04:17, 12F

10/17 04:22, , 13F
恩..我想我又上了一課..
10/17 04:22, 13F

10/17 07:31, , 14F
你們兩個講的事情不衝突, 不過 C 對於高階程設(指應用層
10/17 07:31, 14F

10/17 07:31, , 15F
面, 不是程度)的劣勢應該在於輪子太少 :Q
10/17 07:31, 15F

10/17 08:08, , 16F
人往往都希望一個新發明,很完美很厲害很牆,所以可以託付
10/17 08:08, 16F

10/17 08:08, , 17F
終生,以後靠他就不用愁了,但現實往往沒有這麼美好
10/17 08:08, 17F

10/17 08:14, , 18F
我想到「並不是寫 Perl 就一定 write-only,任何語言
10/17 08:14, 18F

10/17 08:15, , 19F
都可以 write-only,只不過我們更容易達成」XD
10/17 08:15, 19F

10/17 08:24, , 20F
其實你用 C 跟物件導向去 google,會看到一些 C 採用物件
10/17 08:24, 20F

10/17 08:24, , 21F
的教學範例
10/17 08:24, 21F

10/17 08:51, , 22F
他講的不錯阿~很多C強者不喜歡C++其中一個論點就是你朋友
10/17 08:51, 22F

10/17 08:52, , 23F
講的~LINUX的發明人就嗆過 寫c++的人一堆不知自己在寫啥
10/17 08:52, 23F

10/17 09:02, , 25F
難道你說的那個『人』是另一個版推文的化身!?
10/17 09:02, 25F

10/17 10:31, , 26F
看了樓上推文想推... C 學了好一陣子還是不太懂 :/
10/17 10:31, 26F

10/17 10:33, , 27F
C++ 也好難(抓頭)
10/17 10:33, 27F

10/17 11:57, , 28F
我對c沒好感,每次看到include包含.h的程式,都不太想看@@
10/17 11:57, 28F

10/17 11:58, , 29F
還有醜醜的print、scanf也很礙眼,呵呵
10/17 11:58, 29F

10/17 12:01, , 30F
要用格式化的時候printf不錯啊!
10/17 12:01, 30F

10/17 12:05, , 31F
有的時候printf會比cout方便啊...XDDD
10/17 12:05, 31F

10/17 12:37, , 32F
各有各的好阿 有人寫C++ 自己cout出來的是甚麼都不知道咧
10/17 12:37, 32F

10/17 13:39, , 33F
我贊同你的朋友 因為關鍵在編程者
10/17 13:39, 33F

10/17 13:41, , 34F
也同意你 一個編程者/團隊要實現OOP 用C++容易許多
10/17 13:41, 34F

10/17 13:43, , 35F
我個人也是偏向喜歡C的語法 cout/cin對我來講不那麼直覺
10/17 13:43, 35F

10/17 15:02, , 36F
"編程者"這稱名稱比"程式設計師"、"程式人員"簡潔多了^^
10/17 15:02, 36F

10/17 16:01, , 37F
OO 是很好的改進。但妳朋友說的也沒錯
10/17 16:01, 37F

10/17 17:27, , 38F
程式不會混亂,人才會混亂
10/17 17:27, 38F

10/17 18:12, , 39F
Linker也會混亂XD
10/17 18:12, 39F

10/17 18:44, , 40F
那叫 PG 不是更簡潔 XDD
10/17 18:44, 40F

10/17 19:40, , 41F
組語寫得模組化很棒吧。多CALL巨集跟副程式來用
10/17 19:40, 41F

10/18 01:11, , 42F
寫得亂是人的問題吧
10/18 01:11, 42F

10/18 08:51, , 43F
也不全然是人 c++大麼強大 能用的對的人 也不容易
10/18 08:51, 43F

10/18 09:08, , 44F
物件導向真的只是一個概念,而且他真的沒嘲笑你.我一開始
10/18 09:08, 44F

10/18 09:09, , 45F
只是想用c++ stl去解決作業問題.但是我是用c邏輯去寫
10/18 09:09, 45F

10/18 09:10, , 46F
而且命名也很糟糕. 因此我從來沒回頭看剛開始的程式
10/18 09:10, 46F

10/18 09:11, , 47F
物件導向是重大革命,可是如同人類的歷史.革命後要怎麼
10/18 09:11, 47F

10/18 09:13, , 48F
進步才是問題.就像法國人總是嘲笑英國人學她們的字彙
10/18 09:13, 48F

10/18 09:14, , 49F
但是直到今天,大英字典還一值增加字彙.但是法國人依舊
10/18 09:14, 49F

10/18 09:15, , 50F
嘲笑對方. 但是歐洲官方語言是西班牙文.卻不是法文喔
10/18 09:15, 50F

10/18 13:29, , 51F
這讓我想到阿拉伯數字和阿拉伯文。
10/18 13:29, 51F
文章代碼(AID): #1EcpIDjc (C_and_CPP)