📌 软件开å‘的第一原则是什么ã€è®©ç¼–ç¨‹å†æ¬¡ä¼Ÿå¤§#22】 - YouTube
Original URL: https://youtu.be/Sju32NqjQUc
📌 软件开å‘的第一原则是什么ã€è®©ç¼–ç¨‹å†æ¬¡ä¼Ÿå¤§#22】 - YouTube
ã€å®¹æ˜“懂 Easy Know】
寫程å¼å°±åƒè“‹ä¸€å€‹çŽ©å…·è»Šå。首先,最é‡è¦çš„æ˜¯ã€Œè®“它能動ã€ï¼ˆMake it workï¼‰ã€‚å°±ç®—æ˜¯ç”¨è† å¸¶é»çš„ã€æªæªæ‰æ‰çš„,åªè¦å®ƒèƒ½è·‘就好。這就åƒå¯«å‡ºä¸€å€‹é›–然功能簡單,但真的能用的程å¼ã€‚接下來,ç‰å®ƒæœƒå‹•äº†ï¼Œå†æŠŠå®ƒã€Œåšå¥½ã€ï¼ˆMake it rightï¼‰ã€‚æ„æ€æ˜¯è®“å®ƒæ›´ç©©å›ºã€æ›´æ¼‚äº®ï¼ŒæŠŠè† å¸¶æ›æˆèžºçµ²ï¼Œå¡—上é¡è‰²ã€‚é€™å°±åƒæŠŠç¨‹å¼çš„æž¶æ§‹å¯«å¥½ï¼Œè®“它更容易修改和ç¶è·ã€‚最後,如果真的需è¦ï¼Œæ‰åŽ»ã€Œè®“å®ƒè®Šå¿«ã€ï¼ˆMake it fast)。è£ä¸Šæ›´å¥½çš„輪åï¼Œæˆ–åŠ å€‹å°é¦¬é”,讓車å跑得飛快。這就åƒå„ªåŒ–程å¼çš„æ•ˆèƒ½ã€‚影片說,最é‡è¦çš„å°±æ˜¯é€™å€‹é †åºã€‚å¦‚æžœä½ ä¸€é–‹å§‹å°±æƒ³åšå‡ºåˆå¿«åˆæ¼‚亮的車å,å¯èƒ½æ°¸é 都åšä¸å‡ºä¾†ã€‚先把基礎åšå¥½ï¼Œæ‰èƒ½ä¸€æ¥ä¸€æ¥æ”¹é€²ã€‚很多程å¼å…¶å¯¦åªè¦èƒ½å‹•ã€èƒ½ç”¨å°±å¤ 了,ä¸ä¸€å®šè¦åšåˆ°æœ€å¿«ã€‚
---
ã€ç¸½çµ Overall Summary】
這段影片深入探討了軟體開發ä¸ä¸€å€‹é‡è¦çš„原則:「讓它能動,讓它åšå°ï¼Œç„¶å¾Œè®“它變快ã€ï¼ˆMake it work, make it right, and make it fastï¼‰ã€‚å½±ç‰‡å¼·èª¿ï¼Œé€™å€‹åŽŸå‰‡çš„æ ¸å¿ƒåƒ¹å€¼åœ¨æ–¼å…¶æ¥é©Ÿçš„**å…ˆå¾Œé †åº**ï¼šå¿…é ˆå…ˆè®“è»Ÿé«”èƒ½å¤ åŸºæœ¬é‹ä½œï¼ˆMake it work),在æ¤åŸºç¤Žä¸Šæ‰èƒ½è«‡è«–如何將它åšå¾—更完善(Make it right),最後æ‰è€ƒæ…®å¦‚何æå‡å…¶åŸ·è¡Œæ•ˆçŽ‡ï¼ˆMake it fast)。影片引用一ä½å¤§å¸ç”Ÿå› 䏿–·ä¿®æ”¹å’Œå„ªåŒ–é …ç›®å°Žè‡´ç„¡æ³•å®Œæˆçš„æ¡ˆä¾‹ï¼Œèªªæ˜Žè¨±å¤šäººåœ¨é–‹ç™¼éŽç¨‹ä¸å®¹æ˜“陷入無æ¢ç›¡çš„釿§‹èˆ‡è¿½æ±‚完美,å而讓專案無法抵é”終點。作者èªç‚ºï¼Œä¸€å€‹æ²’有實際完æˆã€æ²’有上線或被使用的軟體,無論其架構多麼精良ã€ç¨‹å¼ç¢¼å¤šéº¼å„ªç¾Žï¼Œéƒ½æ˜¯æ²’有實質æ„義的空談,也無法在實戰ä¸çœŸæ£é«”ç¾æŠ€è¡“çš„åƒ¹å€¼ã€‚å¼·èª¿ã€Œè®“å®ƒèƒ½å‹•ã€æ˜¯è»Ÿé«”開發的首è¦ä»»å‹™ï¼Œå› 為這æä¾›äº†å¾ŒçºŒæ”¹é€²çš„基礎和åƒè€ƒåŽŸé»žã€‚è‡³æ–¼ç‚ºä½•ä¸èƒ½ä¸€é–‹å§‹å°±ã€Œåšå¾—å°ã€ï¼Ÿå½±ç‰‡è§£é‡‹èªªï¼Œã€Œå°ã€ä¸¦éžçµ•å°çš„常é‡ï¼Œè€Œæ˜¯æœƒéš¨æ™‚é–“å’Œæƒ…å¢ƒè®ŠåŒ–ã€‚é€™å–æ±ºæ–¼å€‹äººçš„知è˜å¢žé•·ã€ç”¢æ¥è¶¨å‹¢çš„æ¼”變(例如技術框架的è¿ä»£ï¼‰ï¼Œä»¥åŠè»Ÿé«”開發本身ä¸å˜åœ¨çµ•å°çš„å°éŒ¯ï¼Œåªæœ‰ç›¸å°çš„優劣(better/worst)。éŽåº¦è¿½æ±‚一æ¥åˆ°ä½æˆ–完美方案,åè€Œæœƒæ‹–æ…¢æ•´é«”é€²åº¦ï¼Œå› ç‚ºå¾ˆå¤šæ™‚å€™ã€Œè¶³å¤ å¥½ã€å°±å·²è¶³å¤ 應付當å‰éœ€æ±‚。而「讓它變快ã€é€™å€‹éšŽæ®µï¼Œå½±ç‰‡èªç‚ºå¤§å¤šæ•¸è»Ÿé«”å°ˆæ¡ˆç”šè‡³ä¸æœƒèµ°åˆ°é€™ä¸€æ¥ã€‚å› ç‚ºè¨±å¤šæ‡‰ç”¨å ´æ™¯å°æ€§èƒ½çš„æ„ŸçŸ¥ä¸¦ä¸æ¥µç«¯ï¼Œä¸”å¤–éƒ¨å› ç´ ï¼ˆå¦‚ç¶²è·¯æœå‹™ã€éƒ¨ç½²ç–略)å°ç”¨æˆ¶é«”驗的影響往往大於程å¼ç¢¼å±¤é¢çš„å¾®å°å„ªåŒ–ã€‚æ›´å¸¸è¦‹çš„æƒ…æ³æ˜¯ï¼Œæ€§èƒ½å„ªåŒ–ä»»å‹™æœƒè¢«ä¸æ–·æ¹§ç¾çš„其他更高優先級的工作(如修復錯誤ã€é–‹ç™¼æ–°åŠŸèƒ½ï¼‰æ‰€å–ä»£ã€‚ä½œè€…ç¸½çµæŒ‡å‡ºï¼Œæ•´å€‹åŽŸå‰‡çš„æœ€å¤§åƒ¹å€¼åœ¨æ–¼æç¤ºäº†è»Ÿé«”開發是一個**階段性**å’Œ**動態性**çš„éŽç¨‹ã€‚試圖一開始就åšåˆ°æœ€å¥½å¾€å¾€å°Žè‡´åœæ»¯ä¸å‰ã€‚先將專案推進到「能動ã€çš„狀態,是讓開發æŒçºŒå‰é€²ã€è®“技術真æ£è½åœ°æ‡‰ç”¨çš„é—œéµã€‚
---
ã€è§€é»ž Viewpoints】
影片的主è¦è§€é»žåŒ…括:
1. Make it work, make it right, and make it fast 原則的é‡é»žåœ¨æ–¼å…¶**å…ˆå¾Œé †åº**ï¼Œå¿…é ˆå…ˆå®Œæˆèƒ½å‹•的版本。
2. ä¸€å€‹æ²’æœ‰å®Œæˆæˆ–沒有實際被使用的軟體專案,無論其è¨è¨ˆå¤šå¥½ï¼Œéƒ½ç‰åŒæ–¼æ²’有生命,沒有實質價值。
3. å±¥æ·ä¸Šåˆ—出未完æˆçš„炫酷專案,其價值é ä¸å¦‚一個真æ£èƒ½é‹ä½œä¸¦è¢«ä½¿ç”¨çš„å°ˆæ¡ˆï¼Œå› ç‚ºå¯¦æˆ°ç¶“é©—ç„¡æ³•æ›¿ä»£ã€‚
4. 軟體開發ä¸çš„「å°ã€ï¼ˆright)並éžçµ•å°æ¨™æº–,而是會隨個人èªçŸ¥ã€ç”¢æ¥ç™¼å±•和相å°å„ªåŠ£è€Œè®ŠåŒ–ï¼Œæ˜¯å€‹å‹•æ…‹æ¦‚å¿µã€‚
5. 䏿‡‰éŽåº¦è¿½æ±‚一æ¥åˆ°ä½çš„å®Œç¾Žï¼Œå› ç‚ºç¾å¯¦ä¸ã€Œè¶³å¤ 好ã€å¾€å¾€å°±å·²è¶³å¤ 推動專案å‰é€²ï¼ŒéŽåº¦ç³¾çµæœƒæ‹–慢整體進度。
6. 「讓它變快ã€ï¼ˆmake it fast)通常是軟體開發的最後一æ¥ï¼Œè¨±å¤šå°ˆæ¡ˆç”šè‡³ä¸éœ€æˆ–無法é”到æ¤éšŽæ®µï¼Œä¸”å¤–éƒ¨å› ç´ å¸¸æ¯”ç¨‹å¼ç¢¼å„ªåŒ–更影響性能。
7. æ·±å…¥çš„åº•å±¤æŠ€è¡“å„ªåŒ–ï¼ˆå¦‚è³‡æ–™çµæ§‹ã€æ¼”ç®—æ³•ï¼‰åªæœ‰åœ¨è»Ÿé«”èƒ½å‹•ä¸”æž¶æ§‹ç©©å›ºå¾Œæ‰æœ‰å¯¦éš›æ„ç¾©å’Œç™¼æ®ç©ºé–“。
---
ã€æ‘˜è¦ Abstract】
📌 Make it work, make it right, make it fast,é‡é»žåœ¨æ–¼å…ˆå¾Œé †åºï¼šå…ˆå®Œæˆï¼Œå†åšå°ï¼Œæœ€å¾Œåšå¿«ã€‚
âš ï¸ ä¸æ–·å„ªåŒ–未完æˆçš„å°ˆæ¡ˆï¼Œåªæœƒè®“ä½ é›¢çµ‚é»žè¶Šä¾†è¶Šé 。
✅ 一個沒有實際é‹ä½œæˆ–使用的軟體,其任何技術細節都無æ„義。
📌 軟體的生命始於上線被使用的那一刻。
✅ 先讓軟體能動(Make it work),是所有後續改進的基礎與原點。
âš ï¸ ã€Œæ£ç¢ºçš„åšæ³•ã€ä¸¦éžå›ºå®šä¸è®Šï¼Œå®ƒæœƒéš¨çŸ¥è˜ã€ç”¢æ¥å’Œæƒ…境而變化。
✅ 在許多情æ³ä¸‹ï¼Œã€Œè¶³å¤ å¥½ã€æ¯”追求完美更有效率。
âš ï¸ å¤§å¤šæ•¸è»Ÿé«”å°ˆæ¡ˆä¸æœƒèµ°åˆ°ã€Œè®“它變快ã€ï¼ˆMake it fast)階段,且性能優化常å—å¤–éƒ¨å› ç´ å½±éŸ¿ã€‚
📌 軟體開發是一個具有階段性ã€å‹•態性的éŽç¨‹ã€‚
---
ã€FAQ 測驗】
第一題: æ ¹æ“šå½±ç‰‡å…§å®¹ï¼Œã€ŒMake it work, make it right, and make it fastã€é€™å€‹åŽŸå‰‡æœ€æƒ³å¼·èª¿çš„æ˜¯ä»€éº¼ï¼Ÿ
A. è»Ÿé«”é–‹ç™¼æ‡‰åŒæ™‚è¿½æ±‚åŠŸèƒ½ã€æ£ç¢ºæ€§å’Œé€Ÿåº¦ã€‚
B. è»Ÿé«”é–‹ç™¼çš„ç†æƒ³ç‹€æ…‹æ˜¯åˆæ£ç¢ºåˆå¿«é€Ÿã€‚
C. 完æˆåŠŸèƒ½çš„å…ˆå¾Œé †åºæ¯”單純追求技術水平é‡è¦ã€‚
D. åªè¦åŠŸèƒ½å®Œæ•´ï¼Œå…¶ä»–ç´°ç¯€éƒ½ä¸é‡è¦ã€‚
æ£ç¢ºç”案:Cã€‚å½±ç‰‡æ ¸å¿ƒè«–é»žåœ¨æ–¼å·¥ä½œã€åšå°ã€è®Šå¿«é€™ä¸‰å€‹æ¥é©Ÿçš„å…ˆå¾Œé †åºï¼Œå¼·èª¿å¿…é ˆå…ˆè®“è»Ÿé«”èƒ½å‹•ã€‚
第二題: å½±ç‰‡ä¸æåˆ°ï¼Œç‚ºä»€éº¼ä¸å»ºè°ä¸€é–‹å§‹å°±ç›´æŽ¥ã€ŒMake it rightã€ï¼ˆåšå¾—å°ï¼‰ï¼Ÿ
A. å› ç‚ºã€Œå°ã€çš„定義很難,沒有人知é“ä»€éº¼æ˜¯çµ•å°æ£ç¢ºã€‚
B. å› ç‚ºã€Œå°ã€æ˜¯ç›¸å°ä¸”動態變化的,會隨個人å¸ç¿’和產æ¥ç™¼å±•而改變。
C. å› ç‚ºã€Œåšå¾—å°ã€æœƒèŠ±è²»å¤ªå¤šæ™‚é–“ï¼Œä¸å¦‚先快速完æˆã€‚
D. å› ç‚ºåˆå¸è€…沒有能力一開始就寫出æ£ç¢ºçš„程å¼ã€‚
æ£ç¢ºç”案:B。影片明確指出「æ£ç¢ºçš„åšæ³•ã€ä¸¦éžå¸¸é‡ï¼Œè€Œæ˜¯è®Šé‡ï¼Œå—個人èªçŸ¥ã€ç”¢æ¥ç™¼å±•å’Œç›¸å°æ€§ç‰å› ç´ å½±éŸ¿ã€‚
第三題: æ ¹æ“šå½±ç‰‡ï¼Œä¸€å€‹åœ¨å±¥æ·ä¸Šåˆ—å‡ºã€æž¶æ§‹ç²¾è‰¯ä½†å°šæœªä¸Šç·šæˆ–使用的軟體專案,其價值如何?
A. 價值很高,顯示開發者具備高水平的技術è¨è¨ˆèƒ½åŠ›ã€‚
B. 價值有é™ï¼Œå› 為它還沒有真æ£ç¶“æ·è€ƒé©—,沒有「活éŽã€ã€‚
C. åƒ¹å€¼å–æ±ºæ–¼ä½¿ç”¨çš„æ–°æŠ€è¡“是å¦å¤ 炫酷。
D. 價值ä¸é«˜ï¼Œå› 為無法確定是å¦ç¬¦åˆæ¥ç•Œæœ€ä½³å¯¦è¸ã€‚
æ£ç¢ºç”案:B。影片強調軟體的生命始於上線使用,未經實際é‹ä½œå’Œä½¿ç”¨çš„專案,其技術優劣都是空談。
✡ Oliå°æ¿ƒç¸® Summary bot 為您濃縮é‡é»ž ✡
â–¶ https://youtu.be/Sju32NqjQUc