看板 Soft_Job 關於我們 聯絡資訊
※ 引述《iman00b (I'm a n00b)》之銘言: : 你說的沒錯, 程式語言就是工具而已, 但是很多人連工具都用不好. : 我的觀念是工欲善其事, 必先利其器, 基本的程式語言技巧是第一 : 個要掌握的, 其次, 要熟悉所你使用的編程工具. : 別被一些只會說 domain knowledge 的嘴砲給騙去, 正是因為他們 : 連基本的工具都掌握不好, 才會拿 domain knowledge 來說嘴. : 以網路來說, 如果你能把基本工具用到熟, 你覺得再去學 tcp/ip : 會很難嗎? 如果你能看得懂 ethernet driver 裡面一堆指標指來指 : 去的 descriptor, 難道你沒辦法把網路封包給搞懂嗎? : 我不相信一個連 C 都不熟的人, 能看懂 arp table 是怎樣實現的. : 萬丈高樓平地起, 勿在浮沙築高台, 要想成為梓人傳裡的梓人, 請 : 先把基本功練好. domain knowledge不是嘴砲, 有結構性的知識怎麼會不好? 或許閣下異於常人, 神經的認知介於自然語言和電腦語言之間 覺得變數, 指標, 迴圈, callback會比英文好懂 有domain knowledge不看才是傻子 敝公司每當合併一個小公司後, 最怕他們的產品年代久遠, 沒有文件 有design doc, 有domain knowledge的書當然先看啊~~ code是懂最多的老師,但是也是教最爛的老師, 此話不假 而且說實在學C快還是學domain knowledge快? 我覺得學C快多了 所以很多人會說程式技巧不重要, 重要的是domain knowledge 因為他們所在的公司有很嚴謹的develop process arch的東西交給SD, RD要review architecture和proto spec (所以doamin knowledge就會比coding技巧重要) 之後按敲定的文件去設計你的程式和實作, 寫好後也會有code review 這時候程式語言相關的細節和技術在senior RD的狂電下,一個月後就學會了 而覺得coding技巧重於domain knowledge的 通常是公司比較喜歡讓RD 硬幹, open source兜起來先會動就好 過不過的了certify再說, 也沒有長遠develop engineering的打算 : 老實說, 這家考的一點都不細節, 我碰過難更多的, 像有的題目是 : 給你一個程式, 考你變數 compiler 後的輸出, 但其實是要考你知 : 不知道什麼樣的變數最後會放在 stack 或 bss 裡, 以及 stack : 的操作是怎樣的. 話說...這些是coding技巧嗎? 這不就是system program 的domain knowledge? stack和process initialization binary的實作換個CPU或OS就差很大了 這個好像是C再好也學不來的喔... 亦或是...你定義的程式技巧, 涵蓋了compiler實作和OS? 那...那大家可以左轉了... 相信很多只學C或C++的,但是對OS著墨不多的 要他們了解stack overflow 為何是嚴重的安全漏洞, 會非常雞同鴨講 : 如果你要在業界工作, 就請拿出業界的 pro 水準, Devil lives in : the details. 這些細節就是用來鑑定專業跟業餘的主要差異. : 說一下我的答案, 第一題 compiler 可能會警告你轉型問題, 但你 : 應該要有一個觀念, 所有的型別都是人為定義的, 對機器來說只有 : bit 的差異跟 big endian, little endian 的不同而已. : 所以在 C 裡面 char 你要想成是 int8 (bit field). 這也是所謂 : 的 C laguage data model. 在不同位元的作業系統, 某些型別會 : 有不同的 bit field, 如 32 bit 與 64 bit 的 int, long 等等, : 有興趣請自己去找資料. 以下太多吃光光 我覺得你在講的也都是domain knowledge就是 因為C一直是一個離不開系統的特例 純就程式技巧, 可以拿JAVA或scripting language來舉例 這時後你就知道doamin knowledge是key point了 題外話...話說寫JAVA轉寫C在code review也是場災難... 我就看過: int foo() { int a = 20; char url[a]; int i = 0; ... for (i = 0; i < sizeof(url); i++) {....} } 然後修bug就像修幹一樣流血又流汗 (因為不只一個....) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.8.102.107
Ting1024:這編譯就有問題了吧 XDDD 06/19 22:44
iincho:兩邊都很重要吧,只是實務上碰到講coding不重要的通常 06/19 22:52
iincho:另一邊也不大行...這應該是比較大的問題.... 06/19 22:52
jackyu:阿有些人都不看warning的啊..XD 06/19 23:00
TonyQ:實務上講 coding 重要的也不一定型啊... 06/19 23:24
TonyQ:基本上跟環境有關吧 06/19 23:24
gname:看到這範例的第一想法: 這啥鬼東西....= = 06/20 00:27
dickjas:其實這篇有講出重點~coding技巧只是再展現個人虛榮心 06/20 11:17
dickjas:大型公司最忌諱的就是很愛現自己程式技巧的人~~ 06/20 11:18
i386:展現程式技巧不是寫讓人看不懂的東西,而是寫出讓人容易看得懂 06/20 12:51
i386:的東西阿~~ 06/20 12:51
james732:我想coding技巧跟展現虛榮心是兩回事 06/20 13:11