狠狠撸
Submit Search
別傻了 你就是不寫測試才會沒時間!CL ft. Hamastar.pdf
?
1 like
?
156 views
Y
Yu-Song Syu
Follow
Unit Test and Design
Read less
Read more
1 of 48
Download now
Download to read offline
More Related Content
別傻了 你就是不寫測試才會沒時間!CL ft. Hamastar.pdf
1.
別傻了 你就是不寫測試才會沒時間! Kuma Syu ->
講者怕寂寞,歡迎發問或互動 XD X
2.
關於我 https://medium.com/kuma老師的軟體工程教室 2 -> 講者怕寂寞,歡迎發問或互動 XD
3.
如果你有朋友在找工作的話… We are Hiring!(全遠端) 3
4.
無情工商 4
5.
在開始之前 你今天有什麼想了解的問題? 寫下來 一張一題 用粗筆寫 2 mins 5
6.
寫下來以後… 起立! 找一位「今天你還沒與他講到話的伙伴」 交換一下意見 5 mins 6
7.
還沒有得到解答的… 7
8.
RD 最困擾的事情? 沒時間 120% 8
9.
為什麼沒時間? 9
10.
為什麼沒時間 老闆亂接需求 客戶不懂程式 設計不好 修 bug 花太多時間 改東壞西 不敢改舊東西,只好複製貼上 10
11.
什麼是好設計? 11
12.
什麼是好設計? 高內聚、低耦合 12
13.
什麼是好設計? 為了 A 而做的修改不會破壞服務
B 的元件 已經存在好好的東西不用一直改 細節有變時,使用者就算不知道,也不會壞 使用者只使用「量身打造」的介面 使用者專注在自身的抽象邏輯,不用太在意依賴的細節 13
14.
什麼是好設計? 為了 A 而做的修改不會破壞服務
B 的元件 已經存在好好的東西不用一直改 細節有變時,使用者就算不知道,也不會壞 使用者只使用「量身打造」的介面 使用者專注在自身的抽象邏輯,不用太在意依賴的細節 SRP OCP LSP ISP DIP 14
15.
原則有了,那實際應用呢? 15 以建築業為例…
16.
16 這兩個設計哪個好?
17.
沒有 Context 的
Solution,無法評論其優劣。 17
18.
18 這個設計好不好?
19.
什麼時候設計? 19 Ref: Winston Royce:
Managing the development for large software systems http://www-scf.usc.edu/~csci201/lectures/Lecture11/royce1970.pdf
20.
20
21.
所謂的「never succeed」: 21
22.
Zoom In 一下: 22
23.
所以說… 人對系統與領域的了解,會隨參與時間越久而越深入 在一開始時對系統做的設計,往往不合後來的使用 雖然一開始也要設計,但此後還是要經常改設計 (e.g., 重構) 設計總在重構時
=> 天天重構,你敢嗎? 23
24.
誰給你勇氣? 24
25.
誰給你勇氣? 25
26.
科學與數學 Q:軟體是科學還是數學? 26
27.
Test First? Code
First? 27
28.
Test First 專注於行為,而非實作細節 士氣 斷絕後路 少打 Code Code
First Test First 28
29.
光 Test First
不夠 還是要力行「重構」 29
30.
多久一次?我是指重構 越短越好。我是指週期。 30
31.
所謂的「短」... 31
32.
32
33.
Flashback 沒時間 設計與 Context 時時重構才會快 測試給你勇氣 科學、TDD,與快速反饋 所謂的「快」… 33
34.
但…我們專案有 spec 了,不就照刻就好嗎? 好問題! 34
35.
朋友買了一件衣料... 「啊,好像棋盤似的。」 「我看倒有點像稿紙。」我說。 「真像一塊塊綠豆糕。」 35
36.
那…叫 QA 測不行嗎? 好問題! 36
37.
動態系統下的 RD 與單元測試 沒時間 系統簡潔度 SRP OCP LSP ISP DIP 37
38.
動態系統下的 RD 與單元測試 沒時間 系統簡潔度 ? B 38
39.
Delay 動態系統下的 RD 與單元測試 沒時間 系統簡潔度 單元測試 B 支持重構 39
40.
Delay 動態系統下的 RD 與單元測試 沒時間 系統簡潔度 單元測試 B 分給
QA 的 功能測試數 B 40
41.
Delay 動態系統下的 RD 與單元測試 沒時間 系統簡潔度 單元測試 B 分給
QA 的 功能測試數 B 外界對 RD 速度的期待/幻想 41
42.
Delay 動態系統下的 RD 與單元測試 沒時間 系統簡潔度 單元測試 B 分給
QA 的 功能測試數 B 外界對 RD 速度的期待/幻想 超額工作 42
43.
Delay 動態系統下的 RD 與單元測試 沒時間 系統簡潔度 單元測試 B 分給
QA 的 功能測試數 B 外界對 RD 速度的期待/幻想 超額工作 R 43 時程壓力
44.
所謂的「軟體工程」… Scrum 在哪裡? CI/CD 在哪裡? Spring
Boot 在哪裡? Kent Beck / Ron Jeffries 44
45.
Live Coding 45
46.
Live Coding 單元測試 ABC TDD
與重構 Legacy Code 重構與 Design Pattern 46 Return, status, verify FizzBuzz Greeting Cache Decorator
47.
一些遺珠… Clean Architecture User Story Exception
Handling Multi-Threads Anti-Patterns … etc 47
48.
Q&A 以上內容節錄自: 加入我們: 48
Download