Re: [討論]要到什麼程度才能自稱懂一種程式語言

看板 Tech_Job
作者 KILLE (啃)
時間 2018-03-15 10:54:25
留言 54則留言 (18推 8噓 28→)

說真的懂一門編程語言 就是能逆練該語言 直白言 就是能作出該語言之編譯器 既然說 能對該語言之定義 語法 規則 結構 組語映對 虛擬機模型..等 完全掌握 沒有 比做出該編譯器更好之證明了 不要覺得如登天一樣 代碼是編 不是寫 網上很多學習用編譯器 好比TCC YUCC 拿下來參考就是 自己重謄 用自己方法重新實現 修繕 就能說是自己的編譯器 有了自己的編譯器 才能說是真正懂該語言 不然 只是說是知曉爾 : 大家安安 : 小弟今年23有個疑惑想請教大家 : “懂”一種程式語言的定義在哪 : 或者說 敢在履歷表的技能欄填上去的那個語言 : 會想這樣問是因為 : 小弟在大學修過幾堂C和JAVA的課 : 算是有點基礎 : 但是課本習題頂多能做基本題 : 進階題就完全不行了 : 所以履歷表沒敢說我有這些技能 : 怕到時候去面試被洗臉 : 蛤?你這樣也敢說你會???? : 所以想知道大家都是學到哪個階段才敢自稱會的? -- 不然還有更好的證明? 真的懂就是完全逃不出手掌心 那不就是能逆練之? 是全土砲還是只優化一小角? 沒自己扎實重騰次編譯器代碼 沒徹地了解其整個定義結構規擇 規格書沒徹底翻到熟爛 玩味其中字句 http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf 還好意思說自己"懂"該語言? 誰規定不能用高階語言寫低階語言的編譯器了 各種語言之規格書中 可沒講編譯器要用甚語言來寫 (現在gcc中的C部份 用c++來寫的) 夠牛 要用python或java來寫C++編譯器 當然也可以 不要腦補 沒說只能用C寫C的編譯器 用fortran C++ python java...你想得到的任一編程語言 可以寫出C的編譯器 就算懂C了 這是裡討論怎樣算懂一門編程語言 不是討論懂了後之效益 不是懂了沒用 是離題了 你是要討論實用性還是"懂"? 抱歉本人不是本科系 完全沒上過課 不知道甚叫大型程式 是windows源碼那種有五千萬行的 叫大型嗎 還是只要10W就算了? 這裡重點是怎算懂一門編程語言 不是代碼多寡 也不是懂不懂大型項目 本滷工作十年了 算法開發 編程優化 嵌入式應用 串流編程 單片機 誇平台編程 摸一圈 後 得出真懂一語言 不是這樣容易 這是重點了 資工本科系 沒真懂編譯器 操作系統 那比起半路出家的 有甚區別? ?
※ 批踢踢實業坊(ptt.cc), 來自: 223.140.97.31
※ 文章網址: https://www.ptt.cc/bbs/Tech_Job/M.1521082467.A.635.html

jses4408: 小弟受教了 感謝解答03/15 10:56

visa9527: 意思是有能力做出 node.js 才能自稱懂 Javascript03/15 10:56

acgotaku: compiler跟programming 根本是不一樣的東西....03/15 10:57

yytseng: 我同學博班做compiler的,寫程式普通而已03/15 10:59

bemyself: 推這篇原文和回應03/15 11:03

bemyself: 噓的人再多想一下吧。03/15 11:04

bezlin: 改寫別人程式片斷勝過全部自己寫 原PO是奇材03/15 11:04

ARPG: 為了展現學會高階語言,結果學低階語言來證明,真棒棒03/15 11:09

jameszhan: 神經病 每個人都這麼閒嗎03/15 11:30

sam7159: 我要把履歷表的程式技能拿下來惹 03/15 11:41

w180112: 代碼03/15 11:49

workat60474: 贊同推文的說法,我修過jserv的課,他對於真正熟練某03/15 11:52

workat60474: 種語言的定義確實跟你一樣,起初我也不相信這樣的說03/15 11:52

workat60474: 法,不過把課修完之後確實感同身受。03/15 11:52

PUTOUCHANG: 一般雇主問的"懂"是應用層面在那邊扯透析原理03/15 11:55

PUTOUCHANG: 廚師不懂料理因為沒修過分子生物學? 無聊03/15 11:56

iincho: 照這標準會寫C的沒幾個了....XD03/15 12:34

boss0405: 嚴格上來說是這樣沒錯,C的許多語法都是以compiler為基03/15 12:37

s0914714: 每個人對"懂"的定義不一樣 很難有共識03/15 12:38

boss0405: 礎,不過只是工作,不用這麼嚴格啦XD03/15 12:38

s0914714: 而且照原PO的說法 應該還要刻個OS才算懂XD03/15 12:41

s0914714: 以C來講啦 畢竟C就是開發來寫UNIX的03/15 12:42

ken1325: 所以你寫完幾種編譯器了03/15 13:03

furio: 原PO認為要能用C寫C編譯器才叫懂C?這有點搞笑03/15 13:30

furio: 這就更蠢了,到底是懂C,懂fortran C++...03/15 13:37

CaptainH: 推. 一般人只會強調語法,殊不知這是compiler中最簡單03/15 13:39

CaptainH: 的部份03/15 13:39

furio: 報歉!寫的太過份了,不過相信原原PO問的是運用端的懂不懂03/15 13:54

iiiii: 撰寫大型程式碼跟撰寫編譯器是不同的知識模型,前者可以賣03/15 14:40

iiiii: 錢,後者是開源,你選擇?03/15 14:40

iiiii: 法拉利會自己研究煉鋼打鐵技術嗎,要懂得分工合作才是蓋大03/15 14:47

iiiii: 房子的關鍵03/15 14:47

iiiii: 懂了,不能創造效應,聽說這就是象牙塔耶,是嗎?寫程式也03/15 14:56

iiiii: 只是按照操作機器的手冊指南操作機器呀,手冊寫的,負責寫03/15 14:56

iiiii: 手冊的人,的確很厲害,不過編譯器已經很多比我們都聰明的03/15 14:56

iiiii: 人都開創的很成熟,這個時代是需要懂應用的人,加油喔!03/15 14:56

iiiii: 您沒看過的大型程式,您不懂,我沒看過的編譯器手法,我不03/15 15:03

iiiii: 懂,這就是軟體的實境,我們都不懂,但是要一起努力做出更03/15 15:03

iiiii: 好的應用03/15 15:03

iiiii: 大型程式不是用行數看,而是要看模組的數目和整合度,通常03/15 15:09

iiiii: 不會只用單種語言完成03/15 15:09

iiiii: 唉唉,我想我又跟學生認真,對不起大家03/15 15:46

ggBird: 不是本科?那還討論沙小03/15 15:55

iiiii: People who boaster his projects are losers 03/15 16:24

boss0405: 你是學理論科學的吧?我認同你的看法,不過不用太尊牛 03/15 17:40

boss0405: 角尖啦,或許把'懂'換成'精通'就比較沒爭議了 03/15 17:40

iiiii: 他如果真的工作十年,不會講這種話出來,又是學生來分享上 03/15 18:26

iiiii: 班經驗了,唉唉 03/15 18:26

fan1234x: 討論懂不懂為什麼會有人來吵會不會用... 03/16 08:30

EGsux: 原來是造輪子專家 03/16 08:31

fan1234x: 懂不一定用得好 用的好不一定懂不是嗎.. 03/16 08:31

acgotaku: 這個題目討論起來真的很好笑 10個SDE真正懂compiler 03/16 09:17

acgotaku: 可能還不到一個,市場上20個SDE缺可能才一個要你會寫 03/16 09:19

filla: 路過push 07/09 11:25

您可能感興趣