標籤:ieeeSoftware

從 2001 年到 2005 年,我為 IEEE Software 編輯一欄關於設計的專欄。除了自己撰寫多篇專欄文章之外,我也能邀請到一群非常傑出的投稿者。

企業架構師加入團隊

企業架構群組經常與日常開發脫節。這可能會導致他們對開發工作的知識過時,而開發團隊也無法從廣泛的公司角度來考量。我的同事(Thoughtworks 技術長)Rebecca 經常看到這種情況,她認為企業架構師透過加入開發團隊可以發揮更大的效用。

作者:Rebecca Parsons

2005 年 9 月

閱讀更多…

ieeeSoftware 企業架構

設計以適應變更

表格驅動技術,讓系統可以在不進行重大程式碼變更的情況下進行變更。

作者:Dave Thomas

2005 年 5 月

閱讀更多…

ieeeSoftware

您的咖啡廳不使用兩階段提交

咖啡師不會進行同步處理 - 他們的原因可能是您也改用非同步的原因。

作者:Gregor Hohpe

2005 年 3 月

閱讀更多…

ieeeSoftware

清晰之前

清晰的程式碼很好,但您應該為了可測試性而犧牲清晰度嗎?

作者:Michael Feathers

2004 年 11 月

閱讀更多…

ieeeSoftware

快速失敗

如果軟體要往南走,Jim 在這篇專欄中說明了它應該盡可能快地崩潰。

作者:Jim Shore

2004 年 9 月

閱讀更多…

ieeeSoftware

最重要的設計指南?

每個人都有自己的一份重要設計指南清單。Scott 專注於介面,以及如何設計介面,讓它們易於正確使用,且難以錯誤使用。

作者:Scott Meyers

2004 年 7 月

閱讀更多…

ieeeSoftware

MDA:模型師的復仇或 UML 烏托邦?

在 2003 年的 OOPSLA 中,OTI 創辦人 Dave Thomas 對模型驅動架構提出了深思熟慮且有力的批評。在此專欄中,他說明了為何他認為通用的模型驅動方法可能會失敗,並指出 UML 和特定領域語言仍有價值。

作者:Dave Thomas

2004 年 5 月

閱讀更多…

ieeeSoftware

持續設計

重構、JUnit 等工具以及極限程式設計 (XP) 等敏捷方法的日益普及,帶來了一種新的設計風格。持續設計是使用重構持續改善程式設計的過程。在此專欄中,Jim 討論了他對持續設計的經驗,特別是國際化和交易等看似棘手的設計問題。

作者:Jim Shore

2004 年 1 月

閱讀更多…

ieeeSoftware

資料存取常式

封裝的常見部分,特別是在物件導向系統中,是隱藏資料結構。然而,將這些資料的大部分暴露在資料存取常式背後也很常見。在此專欄中,我介紹了一些撰寫資料存取常式的準則。不過,別忘了,如果你可以讓資料保持隱藏,通常會更好。

馬丁·福勒著

2003 年 11 月

閱讀更多…

ieeeSoftware

誰需要架構師?

什麼是架構,誰才是真正的架構師?這些問題似乎讓所有人都很激動。因此,在此 IEEE 軟體專欄中,我讓 Ralph Johnson 說明架構:以一種沒有人同意的方式,符合所有其他定義。我也談到了架構師的兩個亞種:Architectus ReloadusArchitectus Oryzus

馬丁·福勒著

2003 年 7 月

閱讀更多…

ieeeSoftware

行銷架構和技術架構的差異

當我們思考軟體架構時,我們通常會想到它的技術架構。但還有一個重要的架構,我們用它來與軟體的客戶溝通:行銷架構。忽視這個「行銷架構」及其與「技術架構」的關係,可能會讓開發專案陷入許多麻煩。

路克·霍曼著

2003 年 7 月

閱讀更多…

ieeeSoftware

元件與混亂的世界

混亂理論為何表明元件組裝可能不如想像中那麼容易。

作者:Rebecca Parsons

2003 年 5 月

閱讀更多…

ieeeSoftware

模式

我在 IEEE 專欄中提到模式對了解軟體設計的寶貴貢獻。

馬丁·福勒著

2003 年 3 月

閱讀更多…

ieeeSoftware 寫作

何時建立類型

關於何時為值建立新的使用者定義類型 (或類別) 的指南。

馬丁·福勒著

2003 年 1 月

閱讀更多…

ieeeSoftware 程式設計風格

使用元資料

您可以使用基於元資料的方法來消除繁瑣的資料導向任務。

馬丁·福勒著

2002 年 11 月

閱讀更多…

ieeeSoftware 程式設計風格

.NET 的自訂屬性如何影響設計

Jim 和 Alexei 在開發 NUnit 的新版本中扮演領導角色。從中,他們反思新 .NET 語言功能屬性如何影響設計。

作者:James Newkirk 和 Alexei Vorontsov

2002 年 9 月

閱讀更多…

ieeeSoftware

另一篇最佳化文章

許多關於效能最佳化的既定原則鮮為人知,這總是讓我感到驚訝。本文是再次嘗試涵蓋這些原則。

馬丁·福勒著

2002 年 5 月

閱讀更多…

ieeeSoftware

公開介面與已發布介面

許多現代語言會區分模組中的公開和私人功能。公開和已發布功能之間的區別並未如此常見:而這可能是更重要的區別。

馬丁·福勒著

2002 年 3 月

閱讀更多…

ieeeSoftware API 設計

避免重複

避免軟體中重複這個簡單規則有時會如何引導出良好的設計,這相當值得注意

馬丁·福勒著

2001 年 1 月

閱讀更多…

ieeeSoftware

分離使用者介面程式碼

我學到的第一個教訓之一是,永遠讓使用者介面程式碼與其他任何程式碼分開。這不僅仍然是好的建議,而且令人驚訝的是,這項建議經常被遺忘。

馬丁·福勒著

2001 年 3 月

閱讀更多…

ieeeSoftware

受保護的變異:封閉的重要性

Craig 在專欄中的位置探討了開放-封閉原則和受保護變異的重要性,以及 Parnas 的資訊隱藏不只是封裝。他也提供了一些實作受保護變異的方法提示。

作者:Craig Larman

2001 年 5 月

閱讀更多…

ieeeSoftware

降低耦合

思考如何視覺化和降低耦合。

馬丁·福勒著

2001 年 7 月

閱讀更多…

ieeeSoftware

明確說明

設計技術通常用於讓系統更靈活,但最後卻變得更難以使用。原因之一是,明確性是一個在設計中經常被遺忘的屬性。

馬丁·福勒著

2001 年 11 月

閱讀更多…

ieeeSoftware 程式設計風格

測試匯流排的必要性

可測試性是一個如此重要的優點,您應該做出架構決策來改善系統的可測試性。

羅伯特·馬丁著

2005 年 7 月

閱讀更多…

ieeeSoftware

模組組裝

模組化程式設計不只是針對介面進行程式設計,它也關於在沒有各種模組知道它們正在與哪些具體模組對話的情況下將模組組裝在一起。

馬丁·福勒著

2004 年 3 月

閱讀更多…

ieeeSoftware

有目的的建模

您繪製的模型類型取決於您希望將它們用於的目的。約翰描述了概念模型、規格模型和實作模型之間有用的區別。

約翰·丹尼爾斯著

2002 年 1 月

閱讀更多…

ieeeSoftware


所有標籤

API design · agile · agile adoption · analysis patterns · application architecture · application integration · bad things · board games · build scripting · certification · collaboration · computer history · conference panels · conferences · continuous delivery · covid-19 · data analytics · database · design · dictionary · distributed computing magazine · diversions · diversity · documentation · domain driven design · domain specific language · domestic · encapsulation · enterprise architecture · estimation · event architectures · evolutionary design · experience reports · expositional architectures · extreme programming · front-end · gadgets · generative AI · ieeeSoftware · infodecks · internet culture · interviews · language feature · language workbench · lean · legacy rehab · legal · metrics · microservices · mobile · noSQL · object collaboration design · parser generators · photography · platforms · podcast · popular · presentation technique · privacy · process theory · productivity · programming environments · programming style · project planning · recruiting · refactoring · refactoring boundary · requirements analysis · ruby · security · talk videos · team environment · team organization · technical debt · technical leadership · test categories · testing · thoughtworks · tools · travel · uml · version control · web development · web services · website · writing

2024 · 2023 · 2022 · 2021 · 2020 · 2019 · 2018 · 2017 · 2016 · 2015 · 2014 · 2013 · 2012 · 2011 · 2010 · 2009 · 2008 · 2007 · 2006 · 2005 · 2004 · 2003 · 2002 · 2001 · 2000 · 1999 · 1998 · 1997 · 1996

所有內容