Skip to Main Content
AGILE學習手冊 | SCRUM、XP、精實和看板方法
book

AGILE學習手冊 | SCRUM、XP、精實和看板方法

by Andrew Stellman, Jennifer Greene
July 2015
Intermediate to advanced content levelIntermediate to advanced
396 pages
6h 57m
Chinese
GoTop Information, Inc.
Content preview from AGILE學習手冊 | SCRUM、XP、精實和看板方法
222
|
第七章
程式庫與框架有什麼差異?
如果你能夠在你專案裡帶入一個獨立的部分,你就知道你在使用一個程式庫,不需要
帶入其他的部分。差異在於,程式庫將程式碼
拆解
成小型的、可重複使用的零件。如
果目標是要建構一個簡單的程式碼,那所有的零件應該只做一件事;一個零件要是做
太多事那就應該要拆解成更小的單元。這種拆解方式叫做關注點分離Separation Of
Concerns),而有效率的 XP 程式設計師知道這對簡化程式碼的重要性。
另一方面,框架則是將許多小型又可重複使用的零件
組合
到一個大的系統裡。舉例而
言,學習 C# 通常代表要學習如何使用 .NET 框架與 C# 語言的語法。這包括讀取檔案、
計算數學、連線到網路,還有很多很多東西(沒錯,包括按鍵)的程式庫。當你開始用
C# .NET 來建構你的程式時,你會「免費」得到這些東西,因為它們是 .NET 框架的
一部分。一般來說是沒有辦法能把它們分開的。而且在不是用 .NET 寫的程式裡使用一
部分的 .NET 框架也不符合邏輯。跟大多數的框架一樣,許多零件都可以用來組合成一
個巨大的系統。
框架比程式庫複雜,當程式庫較為合適時,團隊試圖建構框架常常會變得過於複雜。常
見的錯誤是程式設計師看到其他框架可以節省他們很多時間,然後也想要他們的程式碼
做一樣的事:「我沒有需要在我的 .NET 程式中加入任何程式庫來做這個按鍵,我是『免
費』拿到的。如果我為整個系統建構一個框架,那我也可以『免費』把這些東西給其他
程式設計師!」
這種解決問題的壞處是,如果你要免費得到這些東西 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

程式設計人應該知道的97件事 | 來自專家的集體智慧

程式設計人應該知道的97件事 | 來自專家的集體智慧

Kevlin Henney
精通機器學習|使用Python

精通機器學習|使用Python

Sarah Guido, Andreas C. Mueller

Publisher Resources

ISBN: 9789863476733