作者: mingming123 時間: 2017-3-16 16:33 標題: 你地出道幾多年先寫clean code
我而加做到舊野出黎就算, 唔夠時間寫得精簡d
via HKEPC Reader for Android
作者: kasterli 時間: 2017-3-16 17:45
公司迫用 Viper architecture + TDD,全部都要出 Pull request
焗住一定要 Clean code 如果唔係會俾人打回頭
作者: 梁炳 時間: 2017-3-16 17:51
本帖最後由 梁炳 於 2017-3-16 18:00 編輯
人生苦短,只要係合理時間內寫到main到就得
最緊要創造到user value
"Programming in the large" 又係另一回事,d code要用好多年,經好多手改,咁就真係要clean
樓上師兄應該係寫呢類
不過我覺得clean API重要過clean code
睇你領悟力,基本都5年以上吧
fresh grad頭兩年都拾下拾下
作者: snoopy11hk 時間: 2017-3-16 20:46
API 寫到好古怪, 或者無 API
咁就真係 orz....
作者: Sora 時間: 2017-3-17 01:31
睇老細比幾多資源同時間
作者: DarkHero 時間: 2017-3-17 04:31
公司迫用 Viper architecture + TDD,全部都要出 Pull request
焗住一定要 Clean code 如果唔係會俾人打 ...
kasterli 發表於 2017-3-16 17:45
通常幾耐先完成一個PR?
作者: gamezz 時間: 2017-3-17 08:55
回復 4 #snoopy11hk
睇下你做in house定per job, 人地無要求又細project, 就唔會寫了。
via HKEPC Reader for Android
作者: seasky 時間: 2017-3-17 09:02
提示: 作者被禁止或刪除 內容自動屏蔽
作者: shing1630 時間: 2017-3-17 10:39
回覆 8# seasky
agree
作者: 7h1r733n 時間: 2017-3-17 12:34
project仔.. 寫到work就算.... 除非係performance critical先會寫好D同做performance tuning... (例如Game........ 個"GameScene", 其他Scene只要佢唔死.. 唔爆memroy, Work到就得...)
Web仔.. App仔.. 郁到就得... 大System有時database tuning返而重要過寫得好唔好...
作者: snoopy11hk 時間: 2017-3-17 23:06
回復 snoopy11hk
睇下你做in house定per job, 人地無要求又細project, 就唔會寫了。
via HKEPC Reader fo ...
gamezz 發表於 2017-3-17 08:55
有一 set 用開的 api
係好好多, 做野快手又方便
作者: kasterli 時間: 2017-3-19 06:19
通常唔會多過兩日
一個 Sprint 兩個星期,開 Sprint 前個 PM 都拆好晒 Stories / Subtasks,有晒 Jira ticket
所以每個 PR 都唔會大,都好快有 Feedback 可以 Merge 定係有嘢要改
作者: ngtszman000 時間: 2017-3-19 17:50
clean code 定義?
作者: snoopy11hk 時間: 2017-3-19 21:46
project仔.. 寫到work就算.... 除非係performance critical先會寫好D同做performance tuning... (例如Game ...
7h1r733n 發表於 2017-3-17 12:34
起碼唔好 copy and paste.....
執番好 D function, pack 埋一齊 砌個 basic library
作者: kasterli 時間: 2017-3-20 02:48
咁你要睇吓 Uncle Bob 啲書喇
作者: 3ldk 時間: 2017-3-22 01:25
公司迫用 Viper architecture + TDD,全部都要出 Pull request
焗住一定要 Clean code 如果唔係會俾人打 ...
kasterli 發表於 2017-3-16 17:45
你公司係寫邊類型既program? 同埋係咩野language?
任何類型既program同language都可以套用TDD的嗎?
作者: kasterli 時間: 2017-3-22 20:20
回覆 16# 3ldk
我全公司唔同 team 由 Frontend 到 Backend 都係行 XP + TDD
呢個係一套 methodology / process,係一個 mindset 而唔係一個 tool
所以唔會受限於你係咩 application / language
作者: 7h1r733n 時間: 2017-3-22 21:40
回覆 3ldk
我全公司唔同 team 由 Frontend 到 Backend 都係行 XP + TDD
呢個係一套 methodology / proce ...
kasterli 發表於 2017-3-22 20:20
有資源($$$)當然可以TDD...
作者: spike 時間: 2017-3-22 22:50
有錯請指正!
以我理解,Clean Code 主要唔係要做 performance improve 之類既事,反而係 improve 自己寫既 code 易唔易比人睇得明白同修改。
例如:variable naming 用a/b/c 或meaningless 同 meaningful 係電腦上係冇分別,唔會因為長短有影響(當然長啲可能用 ram 會多啲
),但整體上速度係冇咩分別。但下一手就會比較難去理解,如果用一堆 a/b/c 或meaningless 黎命名 variable。另外,Clean Code 係想要用最少effort 黎改善到 code quality,例如點命名 variable/function/class 或 code style 之類(當然仲有好多)。簡而言之,就係用一些 "rule" 黎改善自己寫 code 既方法。但當然點樣演繹就睇自己同Team 點樣配合。
我自己做Programmer 都做咗5﹑6年,都係近呢個月嘗試緊Clean Code,自己都係摸索緊一套啱自己既Clean Code。而且亦嘗試緊Clean Code 用落堆stored procedure 到
作者: 3ldk 時間: 2017-3-23 02:40
回覆 3ldk
我全公司唔同 team 由 Frontend 到 Backend 都係行 XP + TDD
呢個係一套 methodology / proce ...
kasterli 發表於 2017-3-22 20:20
雖然我無玩過TDD, 亦無好深入了解, 但以我既理解應該會受限application / language
或者我舉個好簡單既例子
用vc++, 寫一個window, 入面有三個textbox, 一個button, 頭兩個textbox各入一個數字, 按一下button, 第三個textbox出sum
就係一個咁簡單既program, 試問你有咩tools, 可以寫個program去入兩個數字去人地個program, 再按埋人地個program粒button?
如果話係Java, 超碼都叫有JUnit, vc++就無VUnit了
如果係無GUI, 就可以寫script test, 否則你點做auto test?
作者: KinChungE 時間: 2017-3-23 10:14
如果情況係複雜少少
個window layout唔係固定
係俾個user open一個file, 然後跟據個file再出唔同layout (入面save住要出乜button/textbox, x/y/width/height)
咁呢D情況就應該點寫test case?
作者: 7h1r733n 時間: 2017-3-23 13:14
https://msdn.microsoft.com/en-us/library/hh212233.aspx
作者: justlazy 時間: 2017-3-23 13:15
師兄形容嘅係 e2e (end-to-end) test case。呢種 test case 盡量模仿 user flow,一次過 test 曬由 frontend 到 backend 到 database 所有嘢。
除咗 e2e,仲有 unit test 同 functional test。佢地嘅分別就唔詳述,但一般嚟講 unit test : function test : e2e test 嘅比例應該大約係 6 : 3 : 1。 e2e test 佔最少因為 implementation effort 大之餘仲要成日 update。
作者: LoneGumMan 時間: 2017-3-26 23:52
巿面上有好多做 UI test o既系統. Mercury Test Director / Quick Test Pro (後來俾 HP 買左) 用VB script 左個 UI interaction, 做web 有 selenium...
不過學樓上師兄講, UI testing update 到仆街 :)
作者: wfu2009 時間: 2017-4-17 23:42
其實clean code就係寫D 畀人類睇得明既改
所以點解要改名, 玩行數, 玩indention, 拆大function
仲有unit test既意義都係為左有live documentation

