技术、产品、交流、思考 - 微软技术暨生态大会 2018
路
2018 年 10 月 23 日中午,我和林德熙踏上了前往上海的旅程。這是德熙第一次進行如此長途的旅行,之前幾乎一直待在家里。
微軟技術暨生態大會是從 10 月 25 日到 10 月 27 日,而 10 月 24 日是微軟合作伙伴會議。我們當初在制定行程時,并沒有意識到微軟合作伙伴會議與微軟技術暨生態大會是分開的,所以我們其實多準備了一天的行程。不過這也正好可以有額外充足的時間了解世博中心和微軟合作伙伴展示的產品。
我們是乘坐高鐵往返的,平均單程 8 個小時。這是非常久的時間,除了高鐵噪聲之外很安靜。我們可以做非常多的閱讀、思考、交流、準備。當然,我還利用這樣的時間修改分會場課程的課件,然后預演,為課程 預編譯框架 - 開發高性能應用 做準備。
產品
產品展廳自 24 日起就開始展示。合作商覆蓋微軟推廣的各個方向 —— 云、人工智能、DevOps 開發者套件、現代化的工作模式……作為開發者,由于這部分的合作涉及到較多商務上的溝通,所以我們并沒有進行深入的交流。
吃
現場為所有的參會人員準備了午餐盒飯,在 微軟粉絲之夜:IT之家讀者捕捉鋪路集團董事長玄隱 - 微軟,粉絲之夜,技術暨生態大會 - IT之家 中你能找到 MVP 保哥和 MVP 林德熙的午餐圖片。
只有我一個人覺得這份午餐的分量很足還能吃剩嗎?為什么大家都說吃不飽?
額外的,在粉絲之夜有簡餐,是一些西餐甜點,都是涼的。由于我來之前的幾天鬧肚子,所以雖然餓但只吃了一點點。而林德熙也餓,吃了很多,結果第二天開始鬧肚子?。
所以我們竟然四個晚上都光顧了附近外賣的一家粥鋪。
技術
Visual Studio 協同開發
第一天整天都不像是一個技術交流,不過這一切在 26 號起有了變化。由于我早上去分會場進行 27 號分會場課程彩排,所以錯過了一開始的主會場內容。
據小伙伴林德熙的描述,第一個是令人振奮的是 Visual Studio 的協作功能。在現場演示中,工程師通過分享一個 Visual Studio 的協同編輯鏈接,另一位工程師可以協同編寫前者的代碼。在此過程中,編寫和調試都和在另一臺電腦上無異。
這無疑是團隊進行開發協作的一項重大功能!結對編程在軟件工程中不止是共同完成某項功能,減少 Bug,更能讓不同的開發者之間互相學習對方的技術、開發手法以及以及高效習慣。而 Visual Studio 的協同開發功能無疑讓結對編程的成本突然間減小了許多。
當然,不止是協同編輯,還能協同調試。不止在 Visual Studio 中能夠使用,在 Visual Studio Code 中也一樣可以使用。
AppCenter 在一處管理你所有的應用發布
接下來是開源與跨平臺相關的技術演講。
在介紹 Xamarin 的時候,提到了 Xamarin.Forms。如果使用 Xamarin 的原生控件開發方式,那么開發者需要了解各個平臺的界面布局規則。在有了 Xamarin.Forms 的情況下,開發者可以無需了解各個平臺的布局即可開發出適用于各個平臺的應用。當然,這其實引入了一個 UI 間接層,在 UI 的實現中繞了一下,可能不適用于開發稍微復雜一點的應用。當然這些都是以前就有的內容了。
令人興奮的是,隨著 Xamarin,也推出了 AppCenter 服務!你再也不需要針對每一個應用市場走不同的發布流程了,你可以在只在 AppCenter 中完成 App Store 以及 Google Play 或者其他市場的發布流程。
.NET Core 3 與桌面應用
今年五月的 Microsoft Build 大會上就已經發布了重磅消息 .NET Core 3 將為桌面應用帶來支持。不過主會場上與 .NET Core 3 相關的演示依然令人興奮。
演講者使用 .NET Framework 版本的應用進行磁盤文件掃描,得出所有文件目錄的百分比占用的時候用時 7109 毫秒。而相同的代碼使用 .NET Core 3 編譯,進行同樣的操作,耗時是 1763 毫秒!
不止如此,.NET Core 3 還提供了一種編譯方式,將所有的第三方依賴通通發布成一個 exe,這樣,你能直接帶走一個什么依賴都不需要的單個 exe 文件進行分發;相比于此前 .NET Core 3 發布時一大堆第三方依賴包,或者 .NET Framework 時需要的 .NET Framework 環境依賴來說,簡直是方便!
思考方式
大會帶來的不止是產品和商務的碰撞,不止是技術和推廣和交流,更有思考方式上的改變。
No problems can be solved from the same level of consciousness that created it.
在“萬物重構”分會場課程中,韋青老師將云比喻成電,將公有云比喻成電網,將私有云比喻成發電機。曾經在電網不那么穩定,是不是會停電的日子里,可能每家大院都會有一臺發電機,為自家大院供電。不過共有電網因為雄厚的實力,其發展速度是非常快的,無論從穩定性、速度、可用性還有安全性上都好的太多,私有發電機漸漸會失去其作用。私有云就像發電機一樣,是公有云發展過程中的中間方案。
技術是一種賦能,其應用不止是在技術本身。例如電,早期對電的用途就在于發揮它的能源和光屬性;很容易地就用電來驅動點燈。可能早期怎么都不能想到可以使用電來做現代計算機這樣如此復雜和精密的任務。云,如此,不止用來存儲和計算。這是一種賦能,是一種再創造。
大佬
Edi Wang
https://edi.wang/
Edi Wang 是我們第一個遇到的大佬,一直活躍于 Windows 應用開發 UWP 方向。當然后面也在做 Asp.NET Core。
Edi Wang 是個 100% 資深的軟粉,所有的產品都是用微軟的。歌單中還有“軟狗之歌”……
文軒
https://www.ithome.com/
▲ 圖片來自 IT 之家 微軟粉絲之夜:IT之家讀者捕捉鋪路集團董事長玄隱 - 微軟,粉絲之夜,技術暨生態大會,藍衣是玄隱,皮卡丘是文軒
文軒的實名是白天寶,是 IT 之家的編輯。擅長寫深度文章而不是資訊,做微軟產品評測。在青島 IT 之家,快訊一天需要三十篇,而深度文章則不需要那么多。
文軒對對質量的要求很高。不止是自己的文章,還有形象,還有周圍的環境以及給大家的體驗。出發之前理了一個奇妙的發型,于是買了一只耳朵會動的皮卡丘帽子。在 MVP 之夜之前,將酒吧背景音樂換成微軟在各大會場曾經播放過的音樂;將酒吧中所有的顯示器圖案換成 Microsoft Logo;將酒吧燈光換成與 Microsoft Logo 搭配的主題藍色,并搭配一些讓人舒適的暖色。他仔細校準每一個燈光,顯示器中的顯示效果,以求達到最佳的微軟酒吧氛圍。
IT 之家的讀者更多的是粉絲群體,學生很多。如果文章內容過于偏技術,那么不會有多少讀者。所以可能一些非技術性或半技術性文章可以在 IT 之家發布和推廣呢!
梁桐銘
微信公眾號:角落的白板報
梁桐銘是一位 90 后,頻繁活躍于 .NET 社區和成都 .NET 線下。他和張善友一起不斷盡自己的努力改善國內的 .NET 生態環境。
在課程《打造開源的 .NET Core 微服務解決方案》課程中,他介紹了 52ABP.com 微服務框架,可以用在你的 Web 應用上。
紅薯
紅薯是開源中國創始人,碼云創始人。擁抱開源,專治 GitHub 在中國的各種水土不服。
碼云為個人開發者提供免費的 git 倉庫服務,為企業開發者提供付費的私有倉庫服務。企業可以通過簽署合同的方式來保證企業私有倉庫的安全。
期望碼云能夠與開發工具有更多的集成,或者可以提供 API,讓社區來幫助完成這樣的集成。
吳波
http://blog.vichamp.com/
吳波是 PowerShell 方向的 MVP,在福建。對 .NET Framework 和 .NET Core 的遷移也是很感興趣的。他推薦我們可以嘗試使用 Turbo Studio 對 .NET Framework 環境進行虛擬化,這樣應用在部署之后可以不需要系統中安裝的 .NET Framework 環境。
他告訴我們,一般企業會非常支持這種對外的技術交流的,因為對公司來說:
項斌
http://www.cnblogs.com/BeanHsiang/
在 MVP 展臺一直循環播放的視頻中,有一段是校寶在線的。正好我們發現項斌就職于校寶在線。
更多閱讀:鬼才項斌,用人工智能推動教育服務創新
邵猛
https://www.cnblogs.com/shaomeng/
深圳來畫科技的 UWP 版本開發者,在技術和商務上都是領導者。
水歌
水歌的名字是石垚(yáo),做 FCC 培訓內容。FCC 全稱 Free Code Campus。
FCC 為學員免費提供各種語言的學習資料,可以在線從零開始學習編程語言。他為此提供一些課程內容。
領英在沒有與 FCC 有過任何溝通的情況下,把 FCC 認證作為大學認證同級別對待。
張善友
微信公眾號:dotNET跨平臺
▲ 張善友(右)和梁桐銘(左)
張善友的名氣已經不需要介紹了……
Dino
http://www.cnblogs.com/dino623/default.html
Windows 應用圈
微軟主推的 Windows 桌面應用的開發框架是 UWP / WPF / Windows Forms,隨后是原生 Win32 API。
Windows 桌面應用的開發者在國內是真的少,傳說中的后 PC 時代。27 號上午我的課程預編譯框架,開發高性能應用還有很多人參加。雖然說主要適用于桌面應用,不過在思想上也能用于其他 .NET 領域(當然開源社區的小伙伴如果能多多支持也能都支持的)。而邵猛下午的課程利用 Windows 新特性開發出更好的手繪視頻應用聽眾就寥寥無幾了。雖說那個時間已經有不少參會者走了,不過這與國內目前的 UWP(或者說推廣到 Windows 桌面應用)生態不無關系。
Windows 應用 UI 框架的未來發展方向
雖然微軟會持續發力,但 UWP 在未來很長一段時間之內可能只會成為小眾,除非找到下一個爆發點。這真的得益于微軟在 Windows 應用分發平臺上的各種失誤(比如各種商店無法下載……)。
在微軟推廣 UWP 的過程中,WPF 一直作為 UWP 的上一個遺落的版本而存在著,只會處于維護狀態。微軟會為其添加安全更新、添加 .NET Core 遷移相關的支持,而不會再在性能或者一些低概率的 Bug 上耗費太多精力。WPF 會在此狀態下持續很長一段時間,因為微軟必須考慮到自家內部產品中也存在大量基于 .NET Framework 的 WPF 和 Windows Forms 應用,比如 Visual Studio。在未來一兩年內,WPF 和 Windows Forms 最大的變化要屬其 .NET Core 化了,估計 Visual Studio 這種重磅的應用可能面臨著兩種不同的進化路線:
- 如果這種事情發生,那么至少 WPF 會在未來一個較短的數年之內獲得不那么少的維護支持。至少必須確保 Visual Studio 這種大級別的 WPF 應用能夠順利完成遷移而不會產生大量明顯的 Bug。
- 這幾乎相當于對 Visual Studio 的界面代碼進行一次徹頭徹尾的重構。不過考慮到插件的兼容性,也許未來一段時間之內這種跨平臺遷移會采用混合界面框架。
Visual Studio 幾乎不會往 UWP 的方向發展。
未來的 Windows UI 框架選擇
從對微軟內部工具的遷移策略可以對我們的技術棧變化帶來一些可能發展方向的思考。首先,如果是 WPF / Windows Forms,那么向 .NET Core 的遷移幾乎成了一個 100% 要做的事情。無論未來 WPF / Windows Forms 產品要向哪個方向發展,只要不是整個團隊的開發人員換掉,整個技術棧換掉,.NET Core 遷移都是必然的一步。這一步不止能帶來大量的性能提升,還能讓應用不再與操作系統產生大量的耦合,減少 .NET Framework 部署到操作系統中產生的一堆環境問題。
那么可以采用的 UI 框架是什么呢?
對于希望團隊充分進行技術復用,那么幾乎可以考慮遷移到以上 UI 框架,否則可以考慮其他 UI 框架。當然我更推薦使用混合 UI 框架,這樣利于未來 UI 框架的演進,并充分利用到新 UI 框架帶來的 Windows 新特性支持和高性能。
▲ 再見 Tech Summit 2018
回家的時候,高鐵上。再次進入了夜色……
總結
以上是生活随笔為你收集整理的技术、产品、交流、思考 - 微软技术暨生态大会 2018的全部內容,希望文章能夠幫你解決所遇到的問題。