Ten Software Patterns Every Student Should Know
暫譯: 每位學生應該了解的十種軟體設計模式

Kilian, Michael

  • 出版商: Springer
  • 出版日期: 2026-06-16
  • 售價: $2,630
  • 貴賓價: 9.5$2,498
  • 語言: 英文
  • 頁數: 252
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 9819202590
  • ISBN-13: 9789819202591
  • 相關分類: Design Pattern
  • 海外代購書籍(需單獨結帳)

商品描述

作者簡介

After earning an MS in Computer Science from Rensselaer Polytechnic Institute, Michael Kilian went to work for the DEC Eastern Research Laboratory working on incremental compilation techniques for the Trellis object-oriented programming language. This effort produced one of the first compilation systems that treated code as objects, allowing small fragments to be modified and integrated into a complete program. On the strength of this work, Michael was accepted into the DEC Graduate Engineering Education Program, and earned a Ph.D. with his thesis Parallel Sets: An Object-Oriented Methodology for Massively Parallel Programming. Such was the beginning of nearly five decades in Software Engineering. His projects ranged from parallel object-oriented databases (using techniques from his thesis) to a distributed computation engine designed to robustly perform millions of complex transactions per second spread over commodity server platforms.

Throughout this career, several key technologies recurred: hash tables, finite state machines, and message-passing protocols to perform computations across multiple servers. While interviewing new graduates for engineering positions, it became apparent that some of these basic building blocks of complex systems were not being taught. Just as English Majors must be familiar with fundamental works in the English Language, Michael believed that certain software ideas were fundamental and should be understood regardless of whether a particular project required them

A laundry list of these topics was compiled and circulated to a number of colleagues and the ten patterns presented in this book is the result of those discussions. The list is not comprehensive. It also contains ideas that could be eliminated in a truly minimal list, but which have such elegance that a programmer should be exposed to them. The goal is to make a student familiar -- if not comfortable -- with programming models that have proved useful time and again.

Michael now consults for companies that need help in assessing software architectures to improve their own products, enter new businesses, or to qualify potential acquisitions. When not busy with his consulting, he enjoys woodworking, kayaking, and biking and continues to program.

作者簡介(中文翻譯)

在倫斯勒理工學院獲得計算機科學碩士學位後,Michael Kilian 進入 DEC 東部研究實驗室,從事 Trellis 物件導向程式語言的增量編譯技術的工作。這項努力產生了第一批將程式碼視為物件的編譯系統之一,允許小片段被修改並整合成完整的程式。基於這項工作,Michael 被接受進入 DEC 研究生工程教育計畫,並以其論文《Parallel Sets: An Object-Oriented Methodology for Massively Parallel Programming》獲得博士學位。這標誌著他近五十年軟體工程生涯的開始。他的專案範圍從平行物件導向資料庫(使用其論文中的技術)到設計用於穩健執行每秒數百萬個複雜交易的分散式計算引擎,這些交易分佈在商品伺服器平台上。

在這段職業生涯中,幾項關鍵技術反覆出現:雜湊表、有限狀態機和消息傳遞協議,以在多個伺服器之間執行計算。在面試新畢業生擔任工程職位時,顯然有些複雜系統的基本構建塊並未被教授。正如英語專業的學生必須熟悉英語文學的基本作品,Michael 認為某些軟體理念是基本的,應該被理解,無論特定專案是否需要它們。

這些主題的清單被編制並發送給多位同事,而本書中提出的十個模式正是這些討論的結果。該清單並不全面。它還包含一些在真正的最小清單中可以被排除的想法,但這些想法具有如此的優雅,以至於程式設計師應該接觸到它們。目標是讓學生熟悉——即使不一定感到舒適——那些一再證明有用的程式設計模型。

目前,Michael 為需要幫助評估軟體架構以改善自身產品、進入新業務或評估潛在收購的公司提供諮詢服務。在不忙於諮詢工作時,他喜歡木工、皮划艇和騎自行車,並持續進行程式設計。

類似商品