Re: [請益] 程式該怎麼越寫越好呢

看板Programming作者 (眠月)時間15年前 (2009/08/20 03:17), 編輯推噓20(2000)
留言20則, 20人參與, 最新討論串5/34 (看更多)
※ 引述《miniroom549 (takecoe)》之銘言: : 程式該怎麼越寫越好呢 : 是否有程式高手可提供一下意見?? 我不是高手,我懂一點點程式設計,但是我可以分享一點點經驗。 程式設計是一門藝術, 多寫當然很重要,但是閉門造車狂寫的話,除非是絕世天才,不然就掰了, 多看大師等級的程式碼絕對比自己死命寫進步的快好幾倍。 就像音樂跟繪畫,多看多接觸多欣賞別人的經典,絕對是好的。 但是看要看得懂,光看到程式碼看不懂背後設計的精髓的話還是沒用, 要看懂那些東西你得先有基本的資料結構演算法跟進階的設計模式等功力, 當然,除了理論以外,程式語言本身你也要熟撚。 所以以上基本教材先念熟,這是進入高階殿堂的鑰匙。 這些東西沒有的話,想要進殿堂連門都沒有。 然後去找網路上有些「xx源碼解析」, 裡面都會找一些經典的程式碼,然後解釋背後的設計理念, 看懂就是你的,這個時候你對軟體的結構就開始有點概念了。 看不懂的話,你就去好一點的討論版問, 因為到這個程度,死大學生討作業的爛版已經不能滿足你問題的難度了。 高手不少,但是既然是高手,他們對無聊的問題就一點興趣也沒有, 要把他們釣出來你的問題就要夠好,他們遇到好的問題就會掏心掏肺, 因為他們有些人很無聊,每天都在看板,但是很少發文,因為沒的發揮, 難得有機會發揮的話,他們就不會放過,所以你要看這個。 http://catb.org/~esr/faqs/smart-questions.html 當然閱讀吸收很重要,但是還要多寫, 寫沒多久你就會發現開發環境很重要,選一個好的 IDE,絕對不要虐待自己。 選用的時候要多看多問多評估,因為這是你寫程式的時候會一直接觸的東西, 程式設計師需要保持快樂,不快樂的程式設計師就是沒有產能的程式設計師。 程式碼累積一定程度之後你會發現程式碼的整理也很重要, 這個時候你可能會注意到有版本管理系統這種東西, 當然,選用之前要多評估,爛的版本管理系統會讓你大腦發煙。 也許有一天你需要回頭用或是看自己的程式碼, 你會發現幹他媽的寫這個程式的人是他媽的豬嗎!?為什麼我一行都看不懂!? 所以你需要寫文件跟註解,請選一個好的文件系統。 文件也可以避免別人看著你的程式碼罵你是他媽的豬。 而且懶惰是程式設計師的美德,如果你不想一直解釋重複的問題, 寫好文件就是讓你脫離當幼稚園老師的不二法門:「Read The Fucking Manual」 搞不好你在當學生的時候就可以作到以上全部, 然後不管你工作了沒有,你可能會開發大型軟體, 我是說型軟體,一個人寫不出來的那種。 這個時候你會發現寫軟體就像是蓋房子,需要工程方法, 一堆程式設計師在一起沒有統籌跟良好方法的話,是作不出好的大東西的, 大東西可能做的出來,但是不好的大東西不叫做大程式,叫做大便, 真的,因為你會看著那堆程式碼整天直呼「shit!」 軟體工程,不過他不是大型軟體才需要, 你最好在越過學徒階段之後就要抱有軟體工程的概念。 如果你有幸堅持到這一步, 當別人問你是不是高手的時候, 你也許就可以回答他說「我懂一點點程式設計」然後跟他分享你的經驗了。 -- To iterate is human, to recurse, divine. 遞迴只應天上有, 凡人該當用迴圈.   L. Peter Deutsch -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.114.180

08/20 03:19, , 1F
最後一句收的漂亮...
08/20 03:19, 1F

08/20 03:59, , 2F
推~~寫得不賴,尤其是最後一句 XD
08/20 03:59, 2F

08/20 08:31, , 3F
好一個首尾呼應法 推 XDDDD
08/20 08:31, 3F

08/20 09:39, , 4F
08/20 09:39, 4F

08/20 11:45, , 5F
很不錯的經驗分享......
08/20 11:45, 5F

08/20 12:07, , 6F
好到想罵髒話的推!! 可以借轉嗎?
08/20 12:07, 6F

08/20 13:17, , 7F
推一個要保持快樂...
08/20 13:17, 7F

08/20 15:10, , 8F
這篇文章 1.值得推薦
08/20 15:10, 8F

08/20 15:24, , 9F
推yoco
08/20 15:24, 9F

08/21 20:04, , 10F
推 yoco
08/21 20:04, 10F

08/23 11:21, , 11F
08/23 11:21, 11F
PsMonkey:轉錄至看板 java 08/24 08:57

08/24 09:04, , 12F
推!
08/24 09:04, 12F

08/25 13:29, , 13F
08/25 13:29, 13F

08/29 17:37, , 14F
08/29 17:37, 14F

09/08 12:51, , 15F
收錄
09/08 12:51, 15F

09/23 14:43, , 16F
推最後一句!!讚
09/23 14:43, 16F

09/29 18:51, , 17F
真是好文
09/29 18:51, 17F

10/07 05:56, , 18F
10/07 05:56, 18F

11/12 00:31, , 19F
值得一推!
11/12 00:31, 19F

04/27 22:16, , 20F
大推!
04/27 22:16, 20F
文章代碼(AID): #1AZ4-r4d (Programming)
討論串 (同標題文章)
文章代碼(AID): #1AZ4-r4d (Programming)