此份簡報是 Will 保哥在【Modern Web 2015】的演講內容。
Web技術的變化之快速,不再有任何一家公司或團體可以主導其走向,即便軟體界的巨人微軟也不例外,ASP.NET經過了十多年的發展與演進,終於來到了一個架構翻新的時刻,即將推出的ASP.NET 5到底從架構面、工具面做出了哪些創新與變革,將在這場演說中一一展現。
本次講座 Will 保哥將分享如何透過 Visual Studio 的 StyleCop 擴充套件做到全自動的程式碼撰寫風格檢查,讓每個人都不用看規範文件,透過工具用最無腦的方式自動幫你做好到程式碼風格檢查。如要觀看完整講座內容,可報名線上課程進行一步查看實際展示與技術講解,網址:
http://miniasp.kktix.cc/events/stylecop-in-action-online
此份簡報是 Will 保哥在【Modern Web 2015】的演講內容。
Web技術的變化之快速,不再有任何一家公司或團體可以主導其走向,即便軟體界的巨人微軟也不例外,ASP.NET經過了十多年的發展與演進,終於來到了一個架構翻新的時刻,即將推出的ASP.NET 5到底從架構面、工具面做出了哪些創新與變革,將在這場演說中一一展現。
本次講座 Will 保哥將分享如何透過 Visual Studio 的 StyleCop 擴充套件做到全自動的程式碼撰寫風格檢查,讓每個人都不用看規範文件,透過工具用最無腦的方式自動幫你做好到程式碼風格檢查。如要觀看完整講座內容,可報名線上課程進行一步查看實際展示與技術講解,網址:
http://miniasp.kktix.cc/events/stylecop-in-action-online
本簡報是 Will 保哥在 2016/6/24 於 CTJS 中台灣 JavaScript Conference 的演講簡報
[ 相關連結 ]
本次演講的 Live Demo 原始碼
https://github.com/doggy8088/ctjs2016-ng2demo
The Will Will Web記載著 Will 在網路世界的學習心得與技術分享
http://blog.miniasp.com/
Will 保哥的技術交流中心 (臉書粉絲專頁)
http://www.facebook.com/will.fans
Will 保哥的噗浪
http://www.plurk.com/willh/invite
Will 保哥的推特
https://twitter.com/Will_Huang
「我是一個前端工程師,每次要進行頁面套版時,都要等後端工程師寫好 API 才能測試,我覺得很痛苦,但公司的後端我又叫不動,有沒有甚麼方法可以簡單的設計出 RESTful API,讓我可以立即套版使用?我不想每次都苦苦哀求後端工程師快點生出 API 給我!」這是之前某位學生告訴我的一段話,也想必是許多前端工程師的痛,現在,你可以不一樣!
我將在這場分享中講解如何利用 JSON Server 快速建立 RESTful API 服務,讓前端工程師可以在完全沒有後端開發能力的情況下,自行設計出任意格式的 API 讓自己使用。本次直播完全免費,當天還會簡單示範如何在 Angular 使用 Http 服務元件呼叫自製的 API!
這是 Will 保哥在【微軟技術關卡破解日】的演講簡報,探索 ASP.NET MVC 5.0 與 ASP.NET MVC 5.1 的各種新功能增強,包括如何從 ASP.NET MVC 4 升級至 ASP.NET MVC 5 等實戰主題。
Will 保哥的技術交流中心
https://www.facebook.com/will.fans
本簡報是 Will 保哥在 2016/6/24 於 CTJS 中台灣 JavaScript Conference 的演講簡報
[ 相關連結 ]
本次演講的 Live Demo 原始碼
https://github.com/doggy8088/ctjs2016-ng2demo
The Will Will Web記載著 Will 在網路世界的學習心得與技術分享
http://blog.miniasp.com/
Will 保哥的技術交流中心 (臉書粉絲專頁)
http://www.facebook.com/will.fans
Will 保哥的噗浪
http://www.plurk.com/willh/invite
Will 保哥的推特
https://twitter.com/Will_Huang
「我是一個前端工程師,每次要進行頁面套版時,都要等後端工程師寫好 API 才能測試,我覺得很痛苦,但公司的後端我又叫不動,有沒有甚麼方法可以簡單的設計出 RESTful API,讓我可以立即套版使用?我不想每次都苦苦哀求後端工程師快點生出 API 給我!」這是之前某位學生告訴我的一段話,也想必是許多前端工程師的痛,現在,你可以不一樣!
我將在這場分享中講解如何利用 JSON Server 快速建立 RESTful API 服務,讓前端工程師可以在完全沒有後端開發能力的情況下,自行設計出任意格式的 API 讓自己使用。本次直播完全免費,當天還會簡單示範如何在 Angular 使用 Http 服務元件呼叫自製的 API!
這是 Will 保哥在【微軟技術關卡破解日】的演講簡報,探索 ASP.NET MVC 5.0 與 ASP.NET MVC 5.1 的各種新功能增強,包括如何從 ASP.NET MVC 4 升級至 ASP.NET MVC 5 等實戰主題。
Will 保哥的技術交流中心
https://www.facebook.com/will.fans
此簡報為 Will 保哥 於 2015/6/25 (四) 接受 SQL PASS Taiwan 邀請演講的內容。
現場錄影: http://www.microsoftvirtualacademy.com/training-courses/sql-server-realase-management?mtag=MVP4015686
[ Will 保哥的部落格 - The Will Will Web ]
http://blog.miniasp.com
[ Will 保哥的技術交流中心 ] (Facebook 粉絲專頁)
https://www.facebook.com/will.fans
[ Will 保哥的噗浪 ]
http://www.plurk.com/willh/invite
[ Will 保哥的推特 ]
https://twitter.com/Will_Huang
[ Will 保哥的 G+ 頁面 ]
http://gplus.to/willh
全新 Windows Server 2019 容器技術及邁向與 Kubernetes 整合之路 (Windows Server 高峰會)Will Huang
Windows Server 2019 隨之而來的容器功能,帶領 Windows 容器化邁向另一個里程碑。本次演講將介紹全新容器功能,以及跟 Kubernetes 整合的歷程,並透過線上展示 Windows Server 2019 加入到 Kubernetes 叢集的完整步驟!
👉 Windows Server 高峰會
https://www.microsoft.com/taiwan/events/windows-server-2019/
ASP.NET MVC 就快進入4了,您跟上了嗎? 如何將現有的 MVC3 如何升級到MVC4呢?無痛升級系列。以及ASP.NET MVC4 新增功能介紹。
課程內容:
ASP.NET MVC 3 升級到 ASP.NET MVC4 的示範與常見問題說明
Basic Project & Empty Project Template
從無到有,建置ASP.NET MVC4 Web API應用程式、How to self-host a web API
Display Modes
View Switcher
Bundling and Minification
Task Support for Asynchronous Controllers
Mobile Project Template
這是我在 Study4.TW 舉辦的【Study4Love - 與大師對談】活動演講簡報 (2018/1/6)!
http://study4.tw/Activity/Details/12
Windows 容器技術自從隨著 Windows Server 2016 推出之後,已經有越來越多企業開始考慮導入容器化技術,藉此實現微服務化企業,打造一個分散式、輕量、可靠的企業服務。以往在 Windows 平台架設叢集伺服器架構,不外乎透過 Windows 內建的叢集架構來實現,但由於容器化技術的發展迅速,現在你可以有更快、更穩定、更容易延展的 Kubernetes (k8s) 叢集來管理 Windows 容器。本次講座將分享 Kubernetes 叢集架構在 Windows 容器的相關研究,帶大家認識這個極具潛力的容器管理平台!
現場示範的 Demo Script 整理如下:
https://gist.github.com/doggy8088/644dc9e5b6dd702805cafa2acb592056
9. ASP.NET 5 與 .NET Core 簡介
ASP.NET 5 and .NET Core Introduction
10. ASP 開發技術的歷史
• 1996 – Active Server Pages (ASP)
• 2002 – ASP.NET
• 2008 – ASP.NET MVC
• 2010 – ASP.NET Web Pages
• 2012 – ASP.NET Web API, SignalR
• 2014 – ASP.NET 5
11. ASP.NET 5 是甚麼?
• 一個重新設計的 ASP.NET 框架
( 目前 ASP.NET 5 還處於預覽階段 )
• 一個精鍊的、可重組的框架,
用來建構網站與雲端應用程式。
• ASP.NET 5 完全開放原始碼,
並且發布於 GitHub 平台。
12. ASP.NET 5 的特性 ( 1 / 3 )
• ASP.NET 5 有真正「跨平台」的執行環境
– Full .NET CLR (Common Language Runtime)
• 完整的 .NET 執行環境 ( 即 .NET 4.5 / 4.6 )
– Core CLR (針對雲端執行環境最佳化過的執行環境)
• 將部分 Full CLR 拆解成各自獨立的 NuGet 套件
• 個別的套件可以個別更新,更新速度更快
• 所有的套件都將隨著專案部署 (伺服器不用預裝)
– Cross-Platform CLR
• 微軟將會官方支援 Linux 與 Mac OS X 執行環境
• 短期內可透過 Mono 執行 ASP.NET 5
• ASP.NET 5 有個完全模組化的 HTTP 要求管線
– 很多事情都跟你想像的不一樣了!
13
13. ASP.NET 5 的特性 ( 2 / 3 )
• ASP.NET 5 有個全新的設定檔管理機制
– 開發環境設定 config.json
– 正式環境設定 global.json、環境變數、自動覆寫 config.json
– 專案設定 project.json
• ASP.NET 5 有個全新的 Session State 管理機制
– 會依據執行環境自動判斷 Session State 該寫到哪裡去 ( Cloud First )
– 所有寫進 Session 的物件都將需要「強制」序列化 ( Cloud First )
• ASP.NET 5 有個全新的 Cache 管理機制
– 全自動管理,無須再額外設定 ( Cloud First )
• ASP.NET 5 有個全新的追蹤機制
– 支援一個共用的追蹤堆疊 (Tracing Stack)
– 從最底層一直追蹤到 ASP.NET Web Form, ASP.NET MVC,
ASP.NET Web API, ... 通通都可以用。
14. ASP.NET 5 的特性 ( 3 / 3 )
• ASP.NET 5 提供統一 ASP.NET 框架的開發模型
– MVC、Web API 與 Web Pages 都將採用相同的開發流程、介面、類別
– 開發模型 (programming model) != 應用程式介面 (API)
• ASP.NET 5 開發過程完全不需要手動執行建置動作
– 採用全新 Rosyln 編譯器平台,所有編譯動作在背景完成
– Rosyln = 編譯即服務 ( Compile-as-a-Service )
• ASP.NET 5 與 .NET Framework 的連結是綁在一起的
– ASP.NET 5 可以用 .NET 4.5.x、.NET 4.6 甚至是 .NET Core 都可自由選
擇
– 未來不用再等 Microsoft 每個數月才做一次大更新,也降低了套件相依性
• ASP.NET 5 可以更加彈性的執行在任意 Host 環境
– 依然可以跑在 IIS 上
– 也可以跑在自訂的 Console 應用程式或 Windows 服務裡 (self-host)
• ASP.NET 5 在 GitHub 上開放原始碼!
15. ASP.NET 5 與舊版的相容性
• ASP.NET 4.5 (ASP.NET MVC 5) 以前的網
站
– 可以不用重寫!
– 依然可以跑在 .NET Framework 4.6 上!
– 請記得:
• ASP.NET 5 是一種開發模型的轉變!
• 如果想用到 ASP.NET 5 的新功能特性
– 必須微調部分程式碼與專案架構才能用!
16. 什麼是 "k"?
• 一套用來管理 ASP.NET 5 執行環境的工具
– KVM = K Version Manager
• 用來管理 KRE 的工具
• kvm list
• kvm use default
– KRE = K Runtime Environment
• 一個 .NET 版本就是一個 KRE
• klr 執行 KRE 的主要程式
• k 方便執行 klr 的批次檔
• kpm KRE 的套件管理員
19. ASP.NET 5 專案範本類型
• ASP.NET Web Application
– 建立 ASP.NET 5 網站應用程式
• ASP.NET 5 Class Library
– 建立與 ASP.NET 5 相容的類別庫
• ASP.NET 5 Console Application
– 建立可被 "k" 呼叫的主控台應用程式
20. ASP.NET 5 專案範本
• ASP.NET Web Application 的專案範本
– 上一版有的範本現在還是都有
• Empty, Web Forms, MVC, Web API, Single Page
Application, Azure Mobile Service
– 新版多了兩個 ASP.NET 5 範本 ( 不能勾選核心參考 )
• ASP.NET 5 Empty
• ASP.NET 5 Starter Web
33. ASP.NET Web API 哪裡不一樣了?
• MVC + Web API + Web Pages
= ASP.NET MVC 6!
• Web API 的 API 被犧牲了!
– 預設採用跟 ASP.NET MVC 一樣的 Routing,
Filters, Model Binding, … etc.
– 類別不需要再繼承 ApiController
直接繼承 Controller 即可
不繼承 Controller 一樣可用 (透過 DI/IoC 機制)
34. ASP.NET 5 從核心方面的改變
• 什麼!Global.asax 沒了?
• 什麼!Web.config 沒了?
– ASP.NET 5 採用全新設計的 HTTP 要求管線
• 只剩 Startup.cs 來定義應用程式特性
– Startup()
• 用來設定參數來源
– ConfigureServices()
• 使用 ASP.NET 5 內建的 DI 機制進行服務註冊
– Configure()
• 當 ConfigureServices() 執行完後會執行這個方法
46. • ASP.NET 5 這次真的打掉重練
– ASP.NET 5.0 事實上跑在 .NET 4.5 CLR 上面
– ASP.NET 5.0 自己是一個 Process Container
– ASP.NET 5.0 是個開發模型(Programming Model)
– ASP.NET 5.0 與 ASP.NET Core 5.0 開發模型相
同
– ASP.NET 5.0 須跑在一個支援 KRuntime 的環境
– ASP.NET 5.0 改用全新的專案架構 (*.kproj)
• ASP.NET MVC 6
– 核心觀念與架構都沒變,僅新增幾個小功能
• 建議多學點前端工程的技能 (大勢所趨)
47. 聯絡資訊
• The Will Will Web
記載著 Will 在網路世界的學習心得與技術分享
– http://blog.miniasp.com/
• Will 保哥的技術交流中心 (臉書粉絲專頁)
– http://www.facebook.com/will.fans
• Will 保哥的噗浪
– http://www.plurk.com/willh/invite