-
出版商:
Springer
-
出版日期:
2026-01-03
-
售價:
$2,660
-
貴賓價:
9.5 折
$2,527
-
語言:
英文
-
頁數:
298
-
裝訂:
Quality Paper - also called trade paper
-
ISBN:
3032118204
-
ISBN-13:
9783032118202
-
相關分類:
Object-oriented、Java 程式語言
商品描述
This textbook provides an in-depth introduction to software design, with a focus on object-oriented design, and using the Java programming language. Its goal is to help readers learn software design by discovering the experience of the design process. To this end, the text follows a continuous narrative that introduces each element of design know-how in context, and explores alternative solutions in that context. This narrative is complemented by hundreds of code fragments and design diagrams. The first chapter is a general introduction to software design and the subsequent chapters cover design concepts and techniques. The concepts and techniques covered include interfaces, encapsulation, inheritance, design patterns, composition, functional-style design, unit testing, and many more. A major emphasis is placed on coding and experimentation as a necessary complement to reading the text. To support this aspect of the learning process, a companion website with practice exercises is provided, as well as two complete sample applications. Guidance on these sample applications is provided in "Code Exploration" insets throughout the book. Although the Java language is used as a means of conveying design-related ideas, the book's main goal is to address concepts and techniques that are applicable in a host of technologies. This third edition improves the presentation of numerous topics and provides a thoroughly revised set of code fragments that incorporate the latest features of the language and follow a more effective style. The diagrams have also been improved for presentation quality and to follow the UML standard more closely. The book is intended for readers who have a minimum of programming experience and want to move from writing small programs and scripts to tackling the development of larger systems. This audience naturally includes students in university-level computer science and software engineering programs. As the prerequisites to specific computing concepts are kept to a minimum, the content is also accessible to programmers with no previous background in computing. In a similar vein, understanding the code fragments requires only a minimal grasp of the Java language, such as would be taught in an introductory programming course.
商品描述(中文翻譯)
這本教科書深入介紹了軟體設計,重點在於物件導向設計,並使用 Java 程式語言。其目標是幫助讀者透過探索設計過程的經驗來學習軟體設計。為此,文本遵循連貫的敘述,將每個設計知識要素置於上下文中介紹,並在該上下文中探索替代解決方案。這種敘述輔以數百個程式碼片段和設計圖表。
第一章是對軟體設計的一般介紹,隨後的章節涵蓋設計概念和技術。所涵蓋的概念和技術包括介面、封裝、繼承、設計模式、組合、函數式設計、單元測試等。特別強調編碼和實驗作為閱讀文本的必要補充。為了支持這一學習過程的這一方面,提供了一個伴隨網站,內含練習題,以及兩個完整的範例應用程式。關於這些範例應用程式的指導在全書的「程式碼探索」插圖中提供。雖然使用 Java 語言來傳達與設計相關的概念,但本書的主要目標是探討適用於多種技術的概念和技術。
本書的第三版改善了許多主題的呈現,並提供了一套徹底修訂的程式碼片段,這些片段納入了語言的最新特性並遵循更有效的風格。圖表的呈現質量也得到了改善,並更緊密地遵循 UML 標準。
本書適合具有最低限度程式設計經驗的讀者,並希望從編寫小型程式和腳本轉向開發更大型系統。這一受眾自然包括大學計算機科學和軟體工程課程的學生。由於對特定計算概念的先決條件保持在最低限度,內容對於沒有計算背景的程式設計師也同樣可及。類似地,理解程式碼片段僅需對 Java 語言有最基本的了解,例如在入門程式設計課程中所教授的內容。
作者簡介
Martin Robillard is a Professor of Computer Science at McGill University. He has been teaching software design with Java since 2005, and has over two decades of programming experience. His research focuses on the human aspects of software engineering, including knowledge transfer, developer training, and documentation generation. Martin served as the Program Co-Chair for the 20th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE 2012) and the 39th ACM/IEEE International Conference on Software Engineering (ICSE 2017).
作者簡介(中文翻譯)
馬丁·羅比拉德是麥吉爾大學的計算機科學教授。他自2005年以來一直教授使用Java的軟體設計,並擁有超過二十年的程式設計經驗。他的研究專注於軟體工程的人文方面,包括知識轉移、開發者培訓和文件生成。馬丁曾擔任第20屆ACM SIGSOFT國際軟體工程基礎研討會(FSE 2012)和第39屆ACM/IEEE國際軟體工程會議(ICSE 2017)的程序共同主席。