本書系統介紹了微軟新一代高效、跨平臺的應用平臺.NET Core 1.0。借助.NET Core,原本只能運行在Windows 上的.NET 應用可以運行在Linux、OS X甚至是UNIX上。結合微軟的Apache Cordova 和Xamarin 等工具,可以構建從服務端到客戶端的完整開源、跨平臺的解決方案。本書主要內容包括微軟云 端戰略,革命性的ASP.NET Core,開源跨平臺的設備端開發,項目介紹和需求分析,構建開發環境,構建實體模型,創建Web 網站,創建Web API,在Azure 上部署服務,AngularJS和Ionic Framework,使用Cordova開發跨平臺移動應用,使用Xamarin開發跨平臺移動應用等內容。
本書詳細論述了利用微軟技術快速構建開源、跨平臺的移動應用解決方案。本書并不限于僅僅介紹.NET Core 技術,而是向讀者介紹如何將微軟提供的一系列平臺和技術串聯起來,形成確切方案進而為用戶解決實際問題。
本書全面系統論述了如何使用微軟開源技術ASP.NET Core和跨平臺移動開發技術Xamarin 與Apache Cordova 在Azure 云端快速地開發部署一個支持網站瀏覽和移動客戶端的電子商務應用。全書論述了如下主題:(1) 微軟云 端站略(2) 開源跨平臺的ASP.NET Core(3) 開源跨平臺的設備開發(4) 項目設計和需求分析(5) 構建開發環境(6) 構建實體模型(7) 創建Web API 網站(8) 創建Web API 服務(9) 在Azure 上部署服務(10) AngularJS 和Ionic(11) 使用Cordova開發跨平臺移動應用(12) 使用Xamarin開發跨平臺移動應用Azure 上的Web App
前言
2016年5月11日,我在新浪微博上留言不是我不明白,這世界變化快啊! 坐在微軟的辦公室里研究了一宿Ubuntu Linux,五年前想都不敢想,并配發了一張Ubuntu gcc編譯開源項目時的截屏。是啊,這個世界變化真是太快了!別說五年前,就是三年前,一直從事微軟技術路線的我也沒有想過未來將要在Linux 上部署我的應用。微軟公司在新任CEO 的帶領下開始踏上了新的征程,迅速地開始向開源領域轉型。公司向開源領域轉型的第一個動作就令人矚目,微軟首席執行官 Satya Nadella 在2014年10月直接對媒體喊出了Microsoft Loves Linux!緊接著,微軟在2014年年底宣布.NET Core 要支持跨平臺,操作系統囊括了Linux、OS X 甚至FreeBSD,并且將.NET Core 的代碼放到了Github 上。然后,微軟又推出了廣受好評的輕量級跨平臺的IDE: Visual Studio Code。至今開源界已經給Visual Studio Code 貢獻了上千個擴展插件。進一步,微軟宣布SQL Server將在2017年正式支持Linux,并且通過收購Xamarin 公司一舉攬收了Gnome和Mono 項目的創始人Miguel de Icaza這種開源界明星級別的人物進入公司……微軟公司目前已經和開源界展開了緊密的合作,從云端大數據平臺到移動端開發,在微軟的產品中你都可以看到世界著名開源軟件基金會Apache 的身影。現在再討論要不要開源?要不要跨平臺?已經毫無意義了。微軟的工程師現在只關心一個項目或者產品的哪部分要開源?要支持幾種操作系統平臺?為什么要寫這樣一本書?這是一個好問題!經過這三年微軟向開源和跨平臺領域的轉變,微軟已經在開源和跨平臺領域構建出了一套自己的技術體系。從服務器端的.NET Core、ASP.NET和Web API,到Web 端的TypeScript 腳本語言,再到移動端的Apache Cordova 和Xamarin,微軟已經可以支持開發者使用完全開源和跨平臺的技術構建自己的應用。再配合免費的Visual Studio Community版本以及支持Git版本控制的Visual Studio Online,開發者可以不花一分錢就可以在微軟的平臺上實現基于開源項目的應用程序生命周期管理。在李克強總理提倡的大眾創業,萬眾創新的大潮中,微軟現在的開源技術體系架構可以幫助創業者和開發人員大大降低創業的門檻和成本,迅速地將自己的創新想法變成現實。作者編寫這本書,主要是為了通過一個非常簡單的電商項目,將目前微軟開源跨平臺的技術體系結構串聯起來,幫助創業者和開發人員了解和掌握如何使用微軟的開源跨平臺技術來迅速構建自己的應用。然后啟用微軟云Azure 的力量,快速部署和集成,迅速地將自己的技術產品和想法推廣到每個用戶手中。
本書不是一本單獨講解某個微軟開源技術的圖書。恰恰相反,本書是把微軟開發工具和開發服務(Visual Studio 2015、Visual Studio Online),微軟開源開發技術(.NET Core1.0、Apache Cordova、Xamarin)和微軟云(Azure)等各種相關技術串聯起來的一本書。通過本書讀者可以了解到如何利用這些開源、免費的工具和技術構建自己的應用。本書的代碼全部開源,讀者有興趣可訪問https://github.com/micli/MuscleFellow 獲取本書相關的源代碼。同時讀者也可以通過訪問http://musclefellow.chiancloudapp.cn 來體驗已經部署好的網站和Web API。本書的創作始于2016年1月,截止到2016年7月2日。期間,.NET Core 從beta 8 演進到1.0 RTM。種種變化也給作者寫作帶來極大的痛苦,很多工作在每次.NET Core 新版本發布之后都要重新調整,很多章節的內容也因此全部失效而永遠無法與讀者見面。如何高效地閱讀本書對于已經非常熟悉微軟戰略的讀者,可以直接從第3章開始閱讀。對于云計算和微軟戰略不是很熟悉的讀者,建議從頭開始閱讀。從本書第5章開始,將涉及開發和代碼。建議讀者從Github上下載代碼,再與本書內容對照著學習和閱讀。本書適合哪些讀者本書適合那些對使用微軟技術構建應用以及對微軟云平臺Azure 部署應用感興趣的人員,也適用于對開源技術感興趣的讀者。同時,本書對有志于互聯網創業,尤其是期望快速搭建應用的創業者極具參考價值。致謝首先,我要感謝我的家人,尤其是我的女兒。在女兒需要陪伴成長的年紀,我占用了大量本屬于她的時間去寫作。尤其是連續寫作兩本書的情況下,使得我很長一段時間都沒有好好地陪她。我對我的女兒充滿了愧疚。此外,我也非常感謝我內心深愛的那個人。其次,我要感謝我的同事劉穎老師和清華大學出版社的盛東亮編輯。本書的成書是和你們的鼓勵和支持密不可分的。最后,我還想感謝胡德民(Peter Hu) 和我的老板趙立威。在最近一年的時間里,胡德民幫我安排了很多與微軟開源、跨平臺相關的技術演講,使我有機會全方面地接觸微軟相關的開源技術,尤其是Xamarin。同時,我的老板趙立威也非常支持我的寫作,在寫作過程中給予我很大的鼓勵和支持。作者聯系方式由于作者能力有限,書中難免會有疏失之處,請讀者多多諒解也請不吝賜教。電子郵件地址: mic_lee2000@foxmail.com微博: @邁克爾老李
李爭:微軟(中國)有限公司開發者體驗與平臺合作事業部擔任技術顧問。專注于微軟公有云平臺Azure的解決方案和架構設計、Azure應用的實施,以及Azure上的開源技術等工作。曾在微軟企業服務部作為原廠技術支持工程師工作多年,承擔企業開發者代碼調試和技術支持、Web應用前端后端代碼調優,以及IIS 的問題診斷、調優、培訓等工作。具有豐富的企業客戶臨場解決嚴重系統問題的經驗。擁有四十多門微軟認證證書,涵蓋了幾乎全部微軟開發相關技術,同時也是一位具有十多年豐富授課經驗的微軟認證講師(MCT)。 著有《微軟互聯網信息服務(IIS)*實踐》。