Re: [魯蛇] 新手寫game分享微薄心得

看板GameDesign作者 (我要加入劍道社!)時間10年前 (2013/12/01 12:42), 編輯推噓1(1011)
留言12則, 4人參與, 最新討論串2/4 (看更多)
※ 引述《rubric (其實我正在找第幾篇)》之銘言: : ===========心得分享開始 : 1. 命名變數時,名稱盡量寫得愈清楚愈好 : (不一定是愈長,但能在何時何地,甚至是幾天後看見這個變數, : 都能讓自己立即看懂最重要) 我個人原則是 scope 愈大的變數名字要愈完整 : 2. 命名變數時,可註解: : a. 該變數的用途、名稱 : b. 該變數的值是如何被決定、在哪個method裡被決定的 : 甚至有些可附上決定該變數的值的式子,例如: : c. 該變數取得後將被用在哪個method、或是用在哪個位置 b 和 c 基本上不切實際 因為你要寫的太多了 而且這些資訊其實 IDE 可以幫你查出來 如果把這些資訊全部記下來 日後改寫 code 時還要全部更新所有註解 通常會導致你的註解與 code 並不吻合 而錯誤的註解其實比沒有註解更糟糕 : 3. 每當進入一個method時,可以考慮print出"已經進入XX method或thread裡" : 如此一來就可以在程式出問題時,觀察到究竟是進入哪個method、判斷式 : 或迴圈中時出問題。 : (老實說這一點是因為我不會用eclipse附的debug功能 去學 debugger 吧 : 4. 遇到多於一個bug時,先處理看起來比較簡單的bug, : 有時複雜的bug反而因此隨著消失。 絕對不要因為它消失就以為它被修好了 XD : 5. 有時儘管是很小的修改,但也要認真跑跑看程式;否則修改的地方累積愈來愈多 : 的時候,最後出現bug時,反倒不知道是當初修改的哪個部分出問題。 : (聽起來很基本,但這一點我吃了很大的虧 要寫 unit test 讓測試自動化 手動測試很煩又容易出錯 : 最後幾點是純粹個人習慣: : a. 我會每當要做怎麼樣的修改,或增加什麼功能, : 我都會在記事本上寫下流水帳(或任何閃過腦海的事情) 如下: : <目前正在修改某某bug... 目前瀏覽到第幾行... : 記得增加某某功能... 衣服洗好還沒掛等等...> : 然後將已經完成的部分刪除 : b. 每過一段時間(例如說3天)等等,重新瀏覽並精簡所有程式碼 : 你會發現有很多地方可以省略,或是忘了那些變數是在做什麼 : (這時就可以替該變數加上註解),甚至是簡化程式碼, : 很不幸地抓到新的bug等等XD : c. 每當有一次(覺得可能會出問題)的修改,都要存一份修改前的檔案 用版本控製系統 新手用 git 可能難了些 hg 算是不錯的選擇 : 不好意思囉嗦了這麼多 : 以上純屬新手的心得,歡迎討論分享 ~(‧ω‧‵)~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.3.139

12/01 14:39, , 1F
純推b,c不實際@@
12/01 14:39, 1F

12/01 14:40, , 2F
根據封裝概念,裡面的東西不給外部使用,給外部使用的東西
12/01 14:40, 2F

12/01 14:41, , 3F
不管任何地方都可以使用,要去描述哪邊定義哪邊使用就..
12/01 14:41, 3F

12/01 14:42, , 4F
這是理論上,有時候會有一些特殊目的(省效能記憶體?)
12/01 14:42, 4F

12/01 14:43, , 5F
都是直接在旁邊加註解了事XDD 其實這個變數/函式在哪邊用
12/01 14:43, 5F

12/01 14:43, , 6F
電腦都找的到@@
12/01 14:43, 6F

12/01 17:42, , 7F
受教了 一午休完就這麼多知識,真開心( ̄▽ ̄)b
12/01 17:42, 7F

12/01 17:43, , 8F
確實有些不能因為消失就以為好了,沒理解bug出現原因
12/01 17:43, 8F

12/01 17:44, , 9F
就繼續有其風險
12/01 17:44, 9F

12/01 17:53, , 10F
debugger 看起來好難XD
12/01 17:53, 10F

12/01 18:46, , 11F
debugger其實不難,省下的時間跟printf魔術差很多
12/01 18:46, 11F

12/02 20:29, , 12F
12/02 20:29, 12F
文章代碼(AID): #1IchuSG8 (GameDesign)
討論串 (同標題文章)
文章代碼(AID): #1IchuSG8 (GameDesign)