看板 Gossiping 關於我們 聯絡資訊
※ 引述《newsted5566 (NEWSTED5566(亂劣我文))》之銘言: : ※ 引述《swilly0906 (史威利哥哥)》之銘言: : : 我看了簡單的範例/語法 : : 可是實作演練的HW 的超難 : : 到底一開始沒有程式背景的朋友是怎麼學的阿!!???? : : 要怎麼從無到有? : 魯宅大學時從沒碰過程式… : 高中學HTML語法就快死掉 : 還發誓未來絕不碰這東西… : 大一修C語言還被當 : 看到一行一行的程式碼就像看天書一樣 : 覺得這好可怕這是啥…我死也不要碰這東西 : 而且魯宅頗推python : 他真的是一個很適合給程式白痴用的語言 : 很多異想天開的寫法他都可以做動!! 講程式,有些人講 C,有人講 C++,有人講 Java、C#,有人講 Python,有人講 PHP... 拎老師今天我就來給各位上堂課,胡謅一下學語言該從什麼開始. 先講傳統的結構式語言. 要先學 C?可以,你要耐得住性子,能至少持續三到六個月, 最好不間斷連續直到看完第一本書. 這種做法適合沒有即戰力需求的人,缺點是門檻期較長,得要有恆心. 學 C 的成本低,二手書攤隨便找本十年前的二手書都還能用(寫得爛是另一件事,不討論). 找個 Code:Blocker 裝 clang,也不太佔硬碟空間(但是比較不好搞就是) 型別、流程、函式、遞迴、模組 先學會,巨集、struct 擺第二,指標 擺第三 第一本書應該就足以教會你第一部份,但其它部份可能就要再靠其它第二、三、四本... 容易的先搞定,難的後面一個一個慢慢來,你的挫折感比較不會那麼大 學 C 有個好處,你對一套軟體的關心角度會比較周全,像是要記得管理你的記憶體. 對軟、硬體的觀念會有機會比較全面,所謂的有機會是指, 當你再去看如硬體結構的書,會比較容易懂原來為什麼要這樣,會那樣. 人都不怕底子深,就怕連嘴炮都使不好. 這條路往下去,可以學現在最具工程實務精神的 go. 一樣沒有 Class,但是有 GC,效能一樣在,開發還更快,可以彌補 C 的土炮疲勞度. 講物件式語言. 直譯式 如果想學 javascript 式的多型,可以試著接觸看看 rebol, 這是以前從 amiga 上來的. 這套語言超強,十年前就可以支援 async, await. C#, Java, Javascript 根本看不到它的車尾燈 台灣早期有一個寫譯軟體書有名的 蔡學鏞(現在跑天朝國去了),很推這一套, 他有寫了一本書教這套語言 編程ing 賣了四年還賣不完,有興趣的可以去幫幫忙, 讓碁峰一版快賣完,才能給碁峰一點動力叫蔡再改寫出二版. 從這本書的內容,可以看到他所認為的學習程式的語言, 基礎不出我在上面 C 講的第一部份, 而他那本書也只講到這部份,所以之後類與多型或其它,大家就每天一信催他趕快寫... 如果想要學面廣彈性大的,可以選 Python. 我雖然還是傾向建議你從 2.x 開始學,但是現在市面上的 2.x 的書不好找. 有本葉難寫的 Python 程式設計入門,內容算多,但老實說,內容編排不好,又真的包太多, 要一個初學者自己去選擇哪些要搞會哪些先不用管,實在太折騰. 碁峰 Python初學特訓班、松崗 Python程式設計 不妨去翻翻看,喜歡哪本就買哪本 不然就全部帶回家.反正也不貴. Windows 版 IDE,Pyscriper 要裝比較麻煩些,要自己到系統設 path,也沒有 OS/X 版. 基礎的部份比較難搞懂的是 list 的 reference 的觀念, 因為這是從 C++ 來的,對比的是 C 的 call by value of address(pointer) 但是 python 都是動態 object 沒有定址,全部都變來變去,所以比較不容易搞懂. dict 型別比較複雜,學的時候要動點腦. 模組就顯式、隱式匯入, _init__ 初始化, 2.x vs. 3.x 等幾種同異,頗煩人. Class 的部份,最複雜的是多型,跟 Rebol 還有靜態型別的 C++/Java/C# 不一樣. 靜態類的語言,多型在 compile-time 時決定,動態類的在 run-time 時決定. Python 的重載與 C++ 類的重載不一樣,稱之為 duck type,我亂稱它為刻板印象定型. 它的多重繼承,是優先順序繼承,而不是全部都能繼承. 實例物件、方法物件...一些這種一鍋子亂七八糟的東西要搞清楚,頗費功夫. 到了物件、繼承這裡的時候,要有耐心一天兩段式的慢慢推進.多翻幾本書,網上教材. 如果想專攻開發網站後台, PHP 7 當然是首選,但是除非你自己也兼刻醜醜的網頁, 不然自己一個人搞, HTML、CSS、Javascript...兼太多,容易累死自己... 編譯式 C++ 當然是包山包海包你娶妻生子還包到你兒子上台大,但是你很難控制得了... 要講資源跟使用族群,當然是 Java 勝,但就現狀來看,我認為已經可以跨平台的 C#, 是可以投資的對象. 論背景、靠山、架構、功能,C# 都不是普通角色,雖然以前因為只能在 Win 上跑, 大多又只在企業內部使用,限制了它應用的全面性與大眾普及性, 不過現在可以開始跨平台,現在學這個, 一則可以做為學習靜態類多型、繼承的敲門磚,二則未來他有成長機會. 很重要的一點是,不必死抱著,今天選了 C#,以後就不能換的心態. 這只是一個開始而已,以後不確定性很大,不用太擔心將來會怎樣. 學 C# 記得一件事,只買一本 C# 不夠,要再買一本 .Net Framework 的書,因為... 所以... 仍是要再提醒,第一個選擇什麼,並不表示之後不能選擇什麼. 學過 Python 可以學 C,學過 C# 可以學 Python,學過 go 也可以學 C#, 如果你沒想好或不知道將來想幹嘛,做籤給自己抽,抽到哪個就選哪個, 如果你有比較明確的方向,那當然不要選個跟那個方向差太遠的,才不會看來很好笑, 當然,就是還得真的能夠時間花下去,每天學,每天寫就是了... -- 讀者審校網試行版 http://readerreviewnet.twbbs.org/ (哲、史、法、政、經、社,人文翻譯書籍錯譯提報網) ◎洪蘭"毀人不倦"舉報專區 http://tinyurl.com/z3t6qzf 讀者需自救,有錯自己改... --
LIONDODO: 這麼認真必須含淚推一下 12/25 19:53
by0413: 這篇可惜了 12/25 19:53
citcal: Python加1 12/25 19:53
mmaa: PHP+1 12/25 19:55
xaw123: 大大對swift的看法如何 12/25 20:00
你要有錢買 Mac,當然沒有不可以. 可以等到它更版變慢,不要那麼瘋狂改版時再學,比較不會經常在做白工這樣...
Wolfclaw: 最後還是要靠Stackoverflow 12/25 20:00
app325: 推 12/25 20:01
jpg31415926: 好文 12/25 20:02
pig12335331: 用心幫推推 12/25 20:03
※ 編輯: freeunixer (60.250.90.238), 12/25/2016 20:12:54
zenwhale: 推 12/25 20:05
Grothendieck: 先學python建立自信 12/25 20:05
RaspberryPi: 學java真的是拿石頭砸自己腳,除非要寫android 12/25 20:09
freeunixer: 要聽樓上爆卦~ 12/25 20:13
NCKUFatPork: 抽到c++ 12/25 20:13
freeunixer: 樓上加油,佛、菩薩會加持你~ 12/25 20:18
hayamakurata: Fortran->C++->python 一路上來 真的是有需要什麼 12/25 20:20
hayamakurata: 就學什麼XD 12/25 20:20
atobela: 淚推,程式語言用到後來真的每個都要插個幾下 12/25 20:28
wsx1678904: 那obov說的懶叫學習要從哪個語言開始學才好? 12/25 20:32
autoimmune: 推大神 12/25 20:34
attis: 這篇不錯 但我是從asm先學的 12/25 20:38
ziso: . 12/25 20:54
alway70345: 大推 12/25 20:59
DoraGian: deep learning 就python掛tensorflow 12/25 21:03
riker729: 想當年我第一個學的是basic 現在已經消失了? 12/25 21:11
LinkedList: C 一招走天下 12/25 21:18
george40516: 好文推 12/25 21:33
Gold740716: C -x perl -> linux bash -> javascript 12/25 21:44
st2913sbck: 好文 12/25 21:44
ferocious: 推一個 想知道 因為...所以...的內容XDD 12/25 21:45
bbo6uis122: 推 12/25 22:31
sank: 推 12/25 22:35
tweence: 12/25 22:38
yesyesyesyes: 推 我是C -> C++ -> C# 真覺得自己在亂做... 12/25 22:42
godchildtw: 還好我19年前決定退出江湖改行,現在今日事今日畢 12/25 23:01
charlly: 推推 12/25 23:21
mamaka: 好文 12/26 00:01
jokker: 推 12/26 00:10
nucleargod: 其實學 C 我一本書都沒看過,只是去解題庫而已 12/26 00:39
selvester: java被綁架了 勒索專職Oracle 大家快棄船啊! 話說dll 12/26 00:49
selvester: 修改器和app+伺服 要從哪開始? 12/26 00:49
king22649: 額 賣了四年賣不完 真的是稱讚嗎=口= 12/26 01:50