Re: [心得] 一個程式設計師該會幾種語言

看板Soft_Job作者 (I'm a n00b)時間13年前 (2012/07/25 14:56), 編輯推噓5(5038)
留言43則, 11人參與, 最新討論串2/10 (看更多)
到底要會幾種程式語言,這實在是個大哉問,我身為一隻打滾十幾年 的程式猿,馬齒徒長、才疏學淺不敢妄言,以下僅為個人看法,歡迎 各位先進指點不足。 有人說程式語言只是一種工具,我也支持這種隱喻,你不可能拿榔頭 去鎖螺絲,自然也不太可能拿螺絲起子去敲釘子。 因此,你的工具箱準備了多少工具,代表你能做多少事,當然有些語 言是能速成的,有些程式語言也有基本的相似度,學會一種語言再學 其他語言多半能觸類旁通,但會不代表精通,有時候純脆是應付工作 上的需要而已。 我個人認為: 1. 一定要會一種編譯式語言,如 C/C++、Java 等等... 2. 一定要會一種直譯式語言,如 BASIC、LUA、Python... 3. 一定要會一種網頁應用語言,如 HTML、Javascript... 4. 一定要會一種 Shell Script,如 DOS Batch、Bash Shell... 5. 一定要會一種資料庫語言,如 MySQL、MS SQL... 我有提到過會不代表精通,但是對其他東西有基本的認識,可以讓 你的眼界更寬廣,而且你很難保證哪一天你不會用到,像在 QT 裡 就有很多用到 HTML Tag 的例子,如果你本來就有接觸過,是不是 就不用再浪費時間去學?當然 HTML 簡單的可以在十分鐘內速成, 不過多會一種並不難的東西,想必也不是太大的負擔。 不過就算你會數種程式語言,你一定要很清楚你自己的主力是什麼, 也就是說,你一定要專注其中一種,而且最好是門檻最高的那一種, 通常我是建議精通編譯式語言的其中一種,隨便一個語言都要花好幾 年的心力才勉強能算精通,就像我到現在也只敢說我對 C/C++ 比其他 語言熟一些,但從來不敢說我精通。 工具箱裡,多放幾樣不同的工具,需要用到時才不會手忙腳亂,不是嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.42.63.214 ※ 編輯: iman00b 來自: 114.42.63.214 (07/25 14:57)

07/25 18:00, , 1F
Java 算編譯式? 要跟C++ 這程native language 同台?
07/25 18:00, 1F
有一些 ARM 系列的 SOC 本身也可以直接跑 Java bytecode... 那你能說他不是 native 嗎?我不是這樣分類的...

07/25 18:46, , 2F
把編譯式改成 Procedure/OO 才是原文的意思吧。
07/25 18:46, 2F

07/25 19:07, , 3F
Java本來就是編譯式的。不然要歸類到哪?
07/25 19:07, 3F

07/25 19:46, , 4F
php 也可以是編譯式啊, 要算嗎?
07/25 19:46, 4F

07/25 19:49, , 5F
basic 好像也有編譯式的
07/25 19:49, 5F
BASIC == BASICA == ETBASIC != Quick Basic != Visual Basic 我同意 QB 跟 VB 都算編譯式語言, 但這兩種語言與原來的 BASIC 已經是大異其趣。 而 php、perl 這類語言即使有可以編譯的版本, 但被我歸類為直譯式(interpreter)語言, 最主要的原因是在於其鬆散的資料型態。 ※ 編輯: iman00b 來自: 114.42.63.214 (07/25 20:53)

07/25 22:47, , 6F
我認為Java應該歸在直譯。當初byte code可是java一大特色
07/25 22:47, 6F

07/25 22:55, , 7F
剛好我各會有一種..只能說,有需要時不會煩惱
07/25 22:55, 7F

07/25 22:56, , 8F
但求職很少遇到全工具都要用上的,要用的話還要看薪水= =
07/25 22:56, 8F

07/26 00:07, , 9F
Java跟C++能做到的事情都差不多,做不到的也差不多
07/26 00:07, 9F

07/26 00:07, , 10F
Java很多直譯式語言能用的寫法都做不到啊 (動態XXXX)
07/26 00:07, 10F

07/26 00:08, , 11F
歸類成編譯式也沒什麼不對
07/26 00:08, 11F

07/26 00:32, , 12F
哪些SOC 本身帶著VM 當然能跑, 哪要算native 嗎?
07/26 00:32, 12F

07/26 00:33, , 13F
咦, 連資料型態,都跑出來了呢, 哪就要拼
07/26 00:33, 13F

07/26 00:33, , 14F
programming language 囉, 咦, 好像是我常吵的呢.
07/26 00:33, 14F

07/26 00:33, , 15F
Java跟C++能做到的事情都差不多? 你用java 來寫driver?
07/26 00:33, 15F

07/26 00:34, , 16F
做不到的也差不多? 有什麼C++ 做不到的? 我看是你做不到
07/26 00:34, 16F

07/26 00:34, , 17F
吧.
07/26 00:34, 17F

07/26 00:35, , 18F
不要賴給C++
07/26 00:35, 18F

07/26 00:42, , 19F
到底是直譯式還是編譯式~吵這有意義嗎?選對適當的語言做起
07/26 00:42, 19F

07/26 00:42, , 20F
事來事半功倍才是重點吧...
07/26 00:42, 20F

07/26 10:11, , 21F
你沒意義而已, 東西總要定義清楚, 不然就不清不楚的
07/26 10:11, 21F

07/26 10:11, , 22F
嘴巴跟鼻子在講了.
07/26 10:11, 22F
你如果堅持 Java 是屬於哪類語言何不直接發一篇文? 我的分類就是這樣,不能接受,不開心那是你自己的事,夠清楚了嗎? ※ 編輯: iman00b 來自: 111.250.147.118 (07/26 12:40)

07/26 12:59, , 23F
哦...原來是這樣, 你爽就好囉.
07/26 12:59, 23F

07/26 13:34, , 24F
哇 好小氣的作者
07/26 13:34, 24F

07/26 13:37, , 25F
又不是你的個人版,小氣什麼?真難看,成熟點好不好
07/26 13:37, 25F
因為這種討論到後來都是各持己見不會有交集。 我有提出為什麼我是這樣分類的,當然有更深入的原因。 但因為不是本篇主題,所以我不想深究。 如果另外發文,我會很樂意的參與這類討論,一切對事不對人。 不過怎麼會是不相關的你先人身攻擊我呢? 我都沒上勾了... XD 麻煩版主能依照板規第二條處理一下這種人身攻擊嗎? ※ 編輯: iman00b 來自: 114.24.52.243 (07/26 14:15)

07/26 14:20, , 26F
不干我事,但這是我的良知。還有你又能証明別人會跟你爭吵?
07/26 14:20, 26F

07/26 14:22, , 27F
你這樣含血噴人不好吧?做人講話要憑良心啊!別亂毀謗別人
07/26 14:22, 27F
原來所謂良心就是可以指著別人罵!(筆記)

07/26 14:22, , 28F
你當然可以照你的意思去定義囉, 高興就好, 就正如你說
07/26 14:22, 28F

07/26 14:22, , 29F
java 跟c++ 可做的差不多, 是一樣的, 高興就好.
07/26 14:22, 29F
我從來沒說過兩者能做的事差不多,我只說這兩者對我來說算編譯式語言。 ※ 編輯: iman00b 來自: 114.24.52.243 (07/26 14:25) ※ 編輯: iman00b 來自: 114.24.52.243 (07/26 14:26)

07/26 14:30, , 30F
死愛面子 錯還硬幺 我說的是事實,跟據釋憲509條,事實即不
07/26 14:30, 30F

07/26 14:32, , 31F
構成毀謗,更無關人身攻擊,這兒版規不可和憲法抵觸
07/26 14:32, 31F

07/26 14:34, , 32F
更正 不可和刑法抵觸,這是憲法規定,請多學常識好嗎
07/26 14:34, 32F

07/26 14:35, , 33F
http://tinyurl.com/bupow7x Interpreted vs compiled
07/26 14:35, 33F

07/26 14:36, , 34F
07/26 14:36, 34F
Mostly, we have been using compiled languages like C, C++, Java and Visual Basic. Java has an interpreter but it need to compile first. 你確定你有看過才轉貼?

07/26 15:16, , 36F
簡單的講, compiled language 是直接產生machine depend
07/26 15:16, 36F

07/26 15:16, , 37F
的executable, 而interpreted language 則產生middle
07/26 15:16, 37F

07/26 15:17, , 38F
code, 再經由OOXX 轉譯成machine depend 的code
07/26 15:17, 38F
※ 編輯: iman00b 來自: 114.24.52.243 (07/26 15:27)

07/26 15:45, , 39F
更口語一點, 一個是直接懂, 一個要翻譯
07/26 15:45, 39F

07/26 15:45, , 40F
你不用想我是沒看過的..
07/26 15:45, 40F

07/26 20:35, , 41F
這串推文是怎麼了..... = =
07/26 20:35, 41F

07/27 03:03, , 42F
歪了
07/27 03:03, 42F

07/28 14:17, , 43F
兩個來亂的可以滾出去了 這篇不需你們來歪樓...=_=
07/28 14:17, 43F
文章代碼(AID): #1G3vY7ez (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1G3vY7ez (Soft_Job)