2009-10-14 00:00 書籍簡介

  自從阿源哥哥『棄武從文』之後(註:小時候的人生目標是當武術教練),就非常喜歡買書,尤其是近幾年來,更是經常買些程式設計方面的書籍。雖然,書架上時常擺滿了中、英、日文的圖書,但是,真正稱得上適合心意的書籍,卻是佔不到4分之1。有許多書籍都是看了技術主題,以及些許的介紹之後,就衝動地購買,但是看不到幾章,就再也找不到繼續讀下去的熱情了。

  歸究原因或許不是因為寫得不好,畢竟與程式設計有關的技術書籍,無論如何也必須花點心思,努力地鑽研一段不算短的時間(或許三、四個月吧),才會有所收穫。只是問題就是在於這段漫長的研讀期間,由於看不到前頭所能預期的成效,熱情就漸漸地冷卻下來,到最後只能把書本丟到一邊了。

 


插播最新消息:



才開賣第一個月就登上了『程式設計暢銷月排行榜』第1名,感謝各位鄉親父老的大力支持,再接再力拼『季排行榜』。



哇,掉到第2名了,沒關係,先拼12月,再看看季排行榜能不能有希望。

 

雖然12月份的成績不怎麼樣,但是季排行還是第1名耶。信心大增,可以開始動手寫第二本了。 

雖然被歸類在【電腦技巧】>【工具軟體】有點奇怪,但是,管他的,還是第1名

被發現了,被歸類回【電腦技巧】>【其它程式】,在該類別排名好像重算了。沒關係,再慢慢爬上去吧!

 

 

被歸類回【電腦技巧】>【其它程式】之後,終於又爬回第1名。

 

 

目前(2010/02/22)被選為「競爭力UP的書」TOP 4,真是有點受寵若驚!希望到票選活動結束還能保持在TOP 5裡面。

 


 

  雖然,以台灣目前的生活水平來說,損失買一本書的錢,或許無所謂,但是,應該沒有人願意承擔徒勞無功的時間浪費吧!因此,在這個新書發表的版面上,阿源哥哥想使用一些圖文敘述,外加影音示範,來介紹這本書,期望讀者能事先確定這本書就是您想要的。在往後漫長的研讀期間,當熱情逐漸消失時,能再回到這裡,看看擺在前頭,在完成學習之後所能得到的獎賞,而繼續忍耐地讀下去。

  首先,請先到出版社的網站查閱這本書的相關章節簡介。接下來會有一支影片說明,希望讀者可以經由影片,事先了解研習完這本書之後,有能力寫到什麼樣層級和品質的商業應用程式。雖然,這本書是使用「員工薪資管理系統」為案例,但是,任何與資料庫應用有關的程式皆適用。所以,接下來看影片時,請將目光集中於應用程式的架構之上。不多說了,請看影片:

 

 

  由上述影片,我們可以查覺,不管是EIP、ERP、CRM,還是進銷存、薪資管理……等系統,大大小小與資料庫有關的商業應用程式(Business Application)都可以抽象化,如下圖所示,雖然表面上最終的結果是,使用者透過電腦將資料寫入(或讀出)資料庫,但是中間夾著依功能區分,可以分成「使用者介面層」、「商業邏輯層」和「資料存取層」的三個功能區塊。

  因為,這三個功能區塊的基礎結構(一大堆規則組合的程式碼)不會因為進一步想要開發的商業應用程式種類而有所改變,因此,可以事先製作成專案範本,方便每次開發新的應用程式時,產生應用程式的空殼子。還是一樣,請先看一段影片:

 

 

  使用專案範本為應用程式建立出空殼子之後,接下來就是依照案例,逐步地加入(組裝出)應用程式所應該有的功能。因為這本書的主要訴求是在於商業應用程式的開發,既然是商業應用程式就離開不了資料庫的:新增(Create)、讀取(Read)、更新(Update)、刪除(Delete),簡稱為CRUD的4個動作。這些與資料庫有關的操作,依所選擇的資料庫種類而有多種技術可供使用,例如:ADO.NET、Entity Framework、LINQ to SQL‥‥等,這本書採用比較簡單的LINQ to SQL來做為實作資料存取層的技術。至於有多簡單,還是一樣請先看一段影片:

 

 

  資料存取層所完成的『物件關聯映射(Object Relational Mapping)』(請參閱:「愛上LINQ」一文)會使用於商業邏輯層中,只要產生資料內容物件(Data Context),並下達適切的LINQ指令(幾乎都只是一、二行)就可以對資料庫進行CRUD的操作。接下來也請再看一段影片示範,看看如何在商業邏輯層中查詢資料庫的資料:

 

 

  接下來就是這本書的重點,請回憶一下剛剛所看到的第一支影片,每一個表單的輸入除了資料層次(例如Master-Detail)之外,只是在於表單上要收集那些資料欄位、資料欄位的型別、資料的驗證、資料的授權、以及與資料庫之間的存取操作而已。而要寫出這些功能,所需要的程式碼,其實有絕大部分都是一些稱為配管作業,一些非常例行公式的操作。

  因此,如果事先歸納出不會因為商業應用程式種類的不同而有所變動的程式碼,並將之製作成項目範本,以及程式碼片段,這樣在往後的應用程式的開發過程當中,只要將心力集中於會因商業應用程式種類的不同而變動的地方,這樣自然而然地就會加快應用程式的開發速度和可靠度。還是一樣,請再看一段影片:

 

 

  最後就是與應用程式使用者接觸的使用者介面層了,順道一提的,從最前面的「資料存取層」到目前為止的「商業邏輯層」的實作,並不會因為接著選用的使用者介面技術(Windows Forms、ASP.NET、WPF,或是Silverlight)而需要改變,因為有了資料繫結,各種使用者介面技術都可以與商業物件繫結,做為與使用者溝通的介面。

  因為,當這本書在撰寫的期間,正是ASP.NET、WPF、Silverlight快推出新版本的尷尬階段,所以,為了省去麻煩就暫且選用了已經發展到頂,將來應該不會再有新版的Windows Forms做為這本書的使用者介面層的表現。當然讀者學會了這本書所建議的應用程式開發模式,將來想改用其它的使用者介面技術並不會有再重新學習的感覺,或許再過一段期間阿源哥哥會再發表與其它使用者介面技術有關的文章或書籍也說不定。最後,還是來看一段影片:

 

 

謝謝您耐心地看完全部的介紹,至止為止,您應該心裡有個譜,知道這本書大概在講些什麼了,並且也應該知道這本書是否就是您正在尋找的。希望不要有買錯書的讀者才好,因為,就算是很認真地看完這本書還是沒辦法寫「小精靈由左到右 嘴巴會開閉」的程式。

  這本書在書名上不去刻意強調要完什麼系統(例如:人事薪資管理系統),因為,所提出的系統不見得就是每一位讀者將來會遇到的。這本書只是想將商業應用程式的開發流程系統化、抽象化,將所有在商業應用程式開發中,所會遇到的模式做個整理(希望都有包括到)。將來在開發實際的案例時,只要正確地分析出是落於那種模式,然後選對方法、選對範本、選對程式碼片段就能夠完成應用程式了。也就是說,把與競爭對手的決戰點拉到系統分析的層面上,而不是在程式設計的技巧上,因為有了工具的幫助,Coding只是剪剪貼貼的工作而已。

 

終於來到贈書活動的時間了。


活動期間:2009/10/14(三) ~ 2009/10/27(二)

活動辦法:只要在活動期間回應本篇文章,並留下Email即可。

注意事項:都是大人了應該知道什麼是不雅的用語,所以留言內容請~~~~三思。

當活動結束之後,阿源哥哥會從中抽出五位,以Email聯絡寄書地址,並把書本寄送給得獎者。


 


贈書活動已經結束,得獎名單如下:

alan0219[at]gmail . com
papot[at]pchome . com . tw
evaoosyz[at]gmail . com
p8695414[at]nckualumni.org.tw
joewgo[at]Gmail . com

阿源哥哥會以Email通知得獎人員,請盡速回覆以方便書籍寄送作業。

非常感謝大家的愛護與支持,沒得獎的先生女士,也請再次期待下次的新書簽名會。

預告:

下一本新書大概會在Visual Studio 2010上市三個月之後完稿,書籍重點會放在「使用者介面」層(Silverlight/WPF)上。


 

 

平均分數:0 顆星    投票人數:0
我要評分:
回應
線上客服

阿源哥哥的新書

書籍內容簡介
關聯訊息









如何使用RSS
Powered by Xuite