編輯推薦
MATLAB麵嚮對象編程—從入門到設計模式(第2版)
本書是市麵上由MATLAB語言開發工程師撰寫的MATLAB編程書籍,凝結瞭作者多年的科研和工作經驗以及對MATLAB語言的深刻理解,旨在推動軟件工程的手段在MATLAB科學工程計算項目中的應用,幫助科學傢和工程師更有效地解決復雜的科研問題。
第2版較第1版增加瞭100多頁的內容,包括單元測試係統、高級數據結構、APPDesigner等新版本中纔有的內容,更全麵,更實用。
本書上一版部分讀者評論如下:
MATLAB大型程序開發必備,比市麵上抄Help的書強太多。這本書主要是講設計模式的,特彆適閤有用戶界麵、存儲、計算等多個復雜功能模塊的大型程序。用MATLAB的麵嚮對象功能,比用c++之類開發速度能快很多,還能利用積纍的MATLAB代碼。
內容簡介
MATLAB麵嚮對象編程—從入門到設計模式(第2版)
本書分為4 部分:第1 部分是麵嚮對象編程初級篇,主要介紹MATLAB 麵嚮對象編程的基礎知識和語法;第2 部分是麵嚮對象編程中級篇,主要介紹麵嚮對象編程的中高級概念,方便讀者在編程中遇到問題時查詢;第3 部分是設計模式篇,把麵嚮對象的編程方法應用到實際問題中,並從實際問題中抽象齣一般的解決方法,即設計模式;第4 部分是框架篇,主要介紹構建在麵嚮對象和設計模式基礎之上的MATLAB測試框架,包括單元測試框架和性能測試框架。
本書既可作為高等院校MATLAB 課程的輔助讀物,也可作為從事科學計算、程序設計等工作的科研人員的參考用書。
作者簡介
徐瀟,MathWorks開發部MATLAB架構C++高級軟件工程師。計算物理學博士,研究方嚮為電子結構計算、密度泛函算法開發;計算機碩士,研究方嚮為圖像處理。2004年,開始使用MATLAB,在科研編程中遇到瞭開發大型程序難以維護的睏難,花瞭很多時間用於改進程序但效果總不盡如人意。2009年,開始使用MATLAB麵嚮對象編程,發現工程進度被迅速加快,於是萌生瞭寫一本介紹MATLAB麵嚮對象編程書的念頭。2011年,在美國取得博士學位之後入職MathWorks,從理科科研工作者和多年的MATLAB愛好者,成為一名MATLAB語言的設計開發和實現的軟件工程師。2016年,作者在MATLAB中文論壇開闢瞭技術專欄,和大傢分享新的行業應用技術和MATLAB編程理念,旨在推動軟件工程中的現代手段在MATLAB科學工程計算項目中的使用,幫助科學傢和工程師們更有效地解決復雜的科研問題。本書凝結瞭作者多年的科研和工作經驗以及對MATLAB語言的理解,希望能對各種規模的科學工程計算項目的MATLAB使用者有所啓發。
李遠,本、碩畢業於北方交通大學,在美國的維剋弗斯特大學取得物理學博士學位。2014年迴國創建北醒(北京)光子科技有限公司,專注於固態激光雷達的研發和生産,産品應用於無人駕駛、無人機和機器人等領域。希望這本《MATLAB麵嚮對象編程——從入門到設計模式(第2版)》能夠給工程科學領域的工作者帶來方便,尤其對於一些需要長期使用而且不斷更新的程序。
內頁插圖
精彩書評
這書思路很好,要成為MATLAB高手,此書必讀。
——北京網友,京東網書評
實用,通俗易懂,強烈推薦,MATLAB5年以上編程經驗,強烈推薦這本書。
不同於市麵上其他一些MATLAB書籍基本靠翻譯Help文檔,這本書的作者確實花瞭很多精力介紹自己的經驗和理解。在作者通俗易懂的案例下,我對於MATLAB麵嚮對象編程技術有瞭更加深刻的理解,現在已經開始使用麵嚮對象編程技術,強烈推薦,MATLAB高級編程者使用此書。
——廣東網友,京東網書評
通俗易懂,極具實用價值,讀得非常暢快。
——北京網友,京東網書評
本書非常實用,之前一直使用麵嚮過程編程,總是無法閤理調節各項參數。看瞭麵嚮對象纔知道什麼是高端優雅編程!
——江蘇網友,京東網書評
這本書我買瞭,以我僅上過一個學期的c++的水平來看,很適閤初學者,思路較官方手冊更簡潔(對於入門足夠)。我個人覺得,後邊的模式設計又對工程來說給瞭很多設計思路上的指導。
——小木蟲網友,程序語言論壇書評
作為一名學生,我一直很喜歡北航齣的技術類書籍,不僅質量比較好,內容充實,與其他的書籍的不同就是能從初學者學習的角度來闡述問題,是學習時不可多得的好書。本書也一樣,由淺入深,逐層剖析,又不局限於編程和實現細節,加入瞭很多編程思想和方法,這是一般技術書籍不具備的。
——全文試讀網友書評
書很好,對於習慣瞭麵嚮過程的編程人,轉換思路可以獲取事半功倍的效果。特彆是本書不僅介紹語法,更注重麵嚮對象的思想。
——江蘇網友,京東網書評
這本書等瞭很久瞭。math一發朋友圈。就果斷買瞭。
——北京網友,京東網書評
這本書的閱讀對象主要是初級用戶。本人的知識結構比較老瞭,正式學的語言是Fortran,像C++、Java這些時髦語言瞭解較少,僅知道“麵嚮對象編程”的說法,不瞭解其內涵。因項目需要,想采用MATLAB做二次開發軟件的界麵(對直觀的圖形顯示要求較高),開始自學MATLAB。起初也看瞭許多入門的書籍,包括張誌湧老師的那本,感覺知識點很多,通讀起來比較睏難。這本書齣版後買瞭一本,作者作為MATLAB的資深應用者,通過通俗的例子(非專業)將麵嚮對象的含義解釋得很清楚,看完有一種豁然開朗的感覺,而且感覺上升瞭一個檔次(當然僅是意識上,離實戰還差得遠)。
其實麵嚮對象是一種思想,一種解決問題的思路和方法,無論做什麼項目都用的到。開展項目前規劃好其架構無疑是非常重要的。
——小木蟲網友,程序語言論壇書評
關於MATLAB麵嚮對象編程的非常推薦的一本書。
——安徽網友,京東網書評
後麵的介紹麵嚮對象的功能真的很引人入勝。
——全文試讀網友書評
粗略看瞭一遍,感覺不錯,所選“麵館”的例子生動形象,貫穿始終,將麵嚮對象的思想講得很透徹,原來許多模棱兩可的概念現在清楚瞭,感謝作者的辛勤勞動!
——ilovematlab論壇網友
目錄
第1部分 麵嚮對象編程初級篇
第1章 麵嚮過程編程和麵嚮對象編程
1.1 什麼是麵嚮過程編程
1.2 什麼是麵嚮對象編程
1.2.1 什麼是對象
1.2.2 什麼是類
1.2.3 什麼是統一建模語言
1.3 麵嚮過程編程有哪些局限性
1.4 麵嚮對象編程有哪些優點
第2章 MATLAB麵嚮對象編程入門
2.1 如何定義一個類
2.2 如何創建一個對象
2.3 類的屬性
2.3.1 如何訪問對象的屬性
2.3.2 什麼是屬性的默認值
2.3.3 什麼是常量屬性
2.3.4 什麼是非獨立屬性
2.3.5 什麼是隱藏屬性
2.4 類的方法
2.4.1 如何定義類的方法
2.4.2 如何調用類的方法
2.4.3 點調用和函數調用類方法的區彆
2.4.4 什麼是方法的簽名
2.4.5 類、對象、屬性和方法之間的關係
2.4.6 如何用disp方法定製對象的顯示
2.5 類的構造函數
2.5.1 什麼是構造函數
2.5.2 如何在構造函數中給屬性賦值
2.5.3 如何讓構造函數接受不同數目的參數
2.5.4 什麼是默認構造函數
2.5.5 用戶一定要定義構造函數嗎
2.6 類的繼承
2.6.1 什麼是繼承
2.6.2 為什麼子類構造函數需要先調用父類構造函數
2.6.3 在子類方法中如何調用父類同名方法
2.6.4 什麼是多態
2.7 類之間的基本關係:繼承、組閤和聚集
2.7.1 如何判斷B能否繼承A
2.7.2 企鵝和鳥之間是不是繼承關係
2.7.3 如何把類組閤起來
2.7.4 什麼是組閤聚集關係
2.8 Handle類的set和get方法
2.8.1 什麼是set方法
2.8.2 什麼是get方法
2.9 類的屬性和方法的訪問權限
2.9.1 什麼是public、protected和private權限
2.9.2 如何設置類的屬性和方法的訪問權限
2.9.3 如何更細粒度地控製訪問權限
2.9.4 MATLAB對屬性訪問的控製與C++和Java有什麼不同
2.1 0clear classes到底清除瞭什麼
2.1 1對象根據類定義的改變而自動更新
第3章 MATLAB的句柄類和實體值類
3.1 引子:參數是如何傳遞到函數空間中去的
3.2 MATLAB的Vlalue類和Handle類
3.2.1 什麼是Value類和Handle類
3.2.2 Value類對象和Handle類對象復製有什麼區彆
3.2.3 Value類對象和Handle類對象賦值有什麼區彆
3.2.4 Value類對象和Handle類對象當作函數參數有什麼區彆
3.2.5 Value類對象和Handle類對象作為默認值有什麼區彆
3.2.6 什麼情況下使用Value類或Handle類
3.3 類的析構函數(Destructor)
3.3.1 什麼是對象的生存周期
3.3.2 什麼是析構函數
3.3.3 對Object使用clear會發生什麼
3.3.4 對Object使用delete會發生什麼
3.3.5 什麼情況下delete方法會被自動調用
3.3.6 齣現異常時delete函數如何被調用
3.3.7 什麼情況下用戶需要自己定義一個delete方法
……
第2部分 麵嚮對象編程中級篇
第3部分 設計模式篇
第4部分 框架篇
附錄
參考文獻
寫在最後
前言/序言
本書第1 版的編寫從2011年4 月開始,2015 年齣版之後作者就開始準備第2 版的新內容,並於2016年11 月完稿。本書從理工科研究人員和學生的角度齣發,分4 部分介紹MATLAB 麵嚮對象編程。
編寫本書的難點是,不僅需要介紹麵嚮對象編程的思想和技巧,而且要讓非計算機專業的讀者領會為什麼需要麵嚮對象編程,它對我們的科研工作將有什麼樣的幫助,並且怎樣把麵嚮對象的思想應用到科研程序中。
本書的特點是:技術實用,重點突齣,代碼簡單易讀,內容講解圖文並茂。
一本技術書籍,純粹的文字敘述是必要的,因為文字敘述是最精確的;一本介紹編程的書,如果盡量提供例子代碼,則能夠幫助讀者更深刻地理解文字概念;“一張圖可勝過韆言萬語”,簡潔明瞭的圖錶可以直觀形象地錶達文意。因此,本書不僅盡量使用最通俗的語言和最形象的圖錶闡述道理,以最典型且簡潔易讀的代碼作為例程,全麵講解MATLAB 麵嚮對象編程從入門到設計模式,而且盡量讓內容的編排更具可讀性,以便帶給讀者更佳的閱讀體驗。
除此之外,本書還加入瞭大量的麵嚮對象編程的統一建模圖(Unified Modeling Language),與所提供的代碼相互對應,以反映代碼中類、對象、屬性、方法之間的關係。
為瞭平衡各專業的需求,書中所列舉的例子大多是“通例”,而不是具體到某個專業領域的專題。但是作者也十分清楚,一本好書是要能夠“深入骨髓”地解決讀者所遇到的最具體的專業問題,最好有對應的範例供參考。所以,在此也希望讀者能夠將“麵嚮對象編程”的專業問題的程序以及産生的問題發布在MATLAB 中文論壇本書的版塊上。日積月纍,論壇上一定會有更多的MATLAB 麵嚮對象編程範例可以參考,也會有更多的科研新人受益其中。
本書第1 版齣版以後,讀者在MATLAB 論壇中提瞭很多問題,根據這些問題我們修訂瞭書中的部分內容,把大傢都有疑問的地方解釋得更詳細一些。另外,本書還針對部分讀者工作中的中大型工程計算問題提供瞭設計上的建議和指導。我們的經驗是,隻要讀者願意積極的思考,保持好奇心,善於探索,再輔以本書設計思想的指導,完全可以使用MATLAB完成工業級彆的工程應用。這也是本書第4 部分——框架篇的由來。
由於作者水平有限,書中存在的錯誤和疏漏之處懇請廣大讀者和同行批評指正。
本書所有內容僅代錶個人觀點,與MathWorks 無關。
作者
2016 年11 月
MATLAB麵嚮對象編程:從入門到設計模式(第2版) 下載 mobi epub pdf txt 電子書 格式