Re: [問卦] 大家都怎麼學程式語言的阿(認真)消失

看板Gossiping作者時間7年前 (2016/12/25 19:49), 7年前編輯推噓37(3706)
留言43則, 40人參與, 最新討論串6/7 (看更多)
※ 引述《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

12/25 19:53, , 1F
這麼認真必須含淚推一下
12/25 19:53, 1F

12/25 19:53, , 2F
這篇可惜了
12/25 19:53, 2F

12/25 19:53, , 3F
Python加1
12/25 19:53, 3F

12/25 19:55, , 4F
PHP+1
12/25 19:55, 4F

12/25 20:00, , 5F
大大對swift的看法如何
12/25 20:00, 5F
你要有錢買 Mac,當然沒有不可以. 可以等到它更版變慢,不要那麼瘋狂改版時再學,比較不會經常在做白工這樣...

12/25 20:00, , 6F
最後還是要靠Stackoverflow
12/25 20:00, 6F

12/25 20:01, , 7F
12/25 20:01, 7F

12/25 20:02, , 8F
好文
12/25 20:02, 8F

12/25 20:03, , 9F
用心幫推推
12/25 20:03, 9F
※ 編輯: freeunixer (60.250.90.238), 12/25/2016 20:12:54

12/25 20:05, , 10F
12/25 20:05, 10F

12/25 20:05, , 11F
先學python建立自信
12/25 20:05, 11F

12/25 20:09, , 12F
學java真的是拿石頭砸自己腳,除非要寫android
12/25 20:09, 12F

12/25 20:13, , 13F
要聽樓上爆卦~
12/25 20:13, 13F

12/25 20:13, , 14F
抽到c++
12/25 20:13, 14F

12/25 20:18, , 15F
樓上加油,佛、菩薩會加持你~
12/25 20:18, 15F

12/25 20:20, , 16F
Fortran->C++->python 一路上來 真的是有需要什麼
12/25 20:20, 16F

12/25 20:20, , 17F
就學什麼XD
12/25 20:20, 17F

12/25 20:28, , 18F
淚推,程式語言用到後來真的每個都要插個幾下
12/25 20:28, 18F

12/25 20:32, , 19F
那obov說的懶叫學習要從哪個語言開始學才好?
12/25 20:32, 19F

12/25 20:34, , 20F
推大神
12/25 20:34, 20F

12/25 20:38, , 21F
這篇不錯 但我是從asm先學的
12/25 20:38, 21F

12/25 20:54, , 22F
.
12/25 20:54, 22F

12/25 20:59, , 23F
大推
12/25 20:59, 23F

12/25 21:03, , 24F
deep learning 就python掛tensorflow
12/25 21:03, 24F

12/25 21:11, , 25F
想當年我第一個學的是basic 現在已經消失了?
12/25 21:11, 25F

12/25 21:18, , 26F
C 一招走天下
12/25 21:18, 26F

12/25 21:33, , 27F
好文推
12/25 21:33, 27F

12/25 21:44, , 28F
C -x perl -> linux bash -> javascript
12/25 21:44, 28F

12/25 21:44, , 29F
好文
12/25 21:44, 29F

12/25 21:45, , 30F
推一個 想知道 因為...所以...的內容XDD
12/25 21:45, 30F

12/25 22:31, , 31F
12/25 22:31, 31F

12/25 22:35, , 32F
12/25 22:35, 32F

12/25 22:38, , 33F
12/25 22:38, 33F

12/25 22:42, , 34F
推 我是C -> C++ -> C# 真覺得自己在亂做...
12/25 22:42, 34F

12/25 23:01, , 35F
還好我19年前決定退出江湖改行,現在今日事今日畢
12/25 23:01, 35F

12/25 23:21, , 36F
推推
12/25 23:21, 36F

12/26 00:01, , 37F
好文
12/26 00:01, 37F

12/26 00:10, , 38F
12/26 00:10, 38F

12/26 00:39, , 39F
其實學 C 我一本書都沒看過,只是去解題庫而已
12/26 00:39, 39F

12/26 00:49, , 40F
java被綁架了 勒索專職Oracle 大家快棄船啊! 話說dll
12/26 00:49, 40F

12/26 00:49, , 41F
修改器和app+伺服 要從哪開始?
12/26 00:49, 41F

12/26 01:50, , 42F
額 賣了四年賣不完 真的是稱讚嗎=口=
12/26 01:50, 42F

12/27 02:20, , 43F
12/27 02:20, 43F
文章代碼(AID): #1ONx9KzX (Gossiping)
討論串 (同標題文章)
文章代碼(AID): #1ONx9KzX (Gossiping)