SlideShare a Scribd company logo
當ASP.NET MVC遇見Angular.js MVC
講者:KYLE SHEN
關於我
 Kyle (凱爾)
 專注於Web應用程式ASP.NET(Webform & MVC) for C# 、MS SQL、
jQuery、Angular.js
 ASP.NET微軟最有價值專家
 藍色小舖ASP.NET版主
 IT Home 鐵人30天文章比賽
 2014 當ASP.NET MVC 遇見 Angular.js MVC 客戶管理系統
 2013 ASP.NET開發小技巧
 Blog – 程式宅急便
 Github : kyleap
今天會講什麼&得到什麼?
 關於MVC
 了解Angular.js 與 jQuery開發上的差異性
 實作開發了解Angular.js
 ASP.NET Web API
 得到一大堆的參考連結
 本課程完整程式碼下載
 售後服務
關於網頁前後端 & MVC
 Asp
 ASP.NET Webform
 ASP.NET MVC
 ASP.NET MVC & Angular.js
 Controller
 Controller(Web API)
 View (Angular.js)
關於網頁前後端 & MVC
 Asp
 ASP.NET Webform
 ASP.NET MVC
 ASP.NET MVC & Angular.js
 Controller
 Controller(Web API)
 View (Angular.js)
關於網頁前後端 & MVC
 Asp
 ASP.NET Webform
 ASP.NET MVC
 ASP.NET MVC & Angular.js
 Controller
 Controller(Web API)
 View (Angular.js)
關於網頁前後端 & MVC
 Asp
 ASP.NET Webform
 ASP.NET MVC
 ASP.NET MVC & Angular.js
 Controller
 Controller(Web API)
 View (Angular.js)
MVC到底好在哪?
 關注點分離
 易於維護
 開發彈性
 高度客製化
 易於測試
jQuery 與 Angular.js
 jQuery
 已”DOM”的概念來操作
 輕量級
 簡單、直覺、學習曲線低
 特效與動畫
 套件非常多
jQuery 與 Angular.js
 Angular.js
 已”Model”的概念來操作
 由Google推出,目前 1.3.X(Stable) 、2.0(Preview)
 HTML Template
 使用 {{ }} 來做資料繫結
 非常適合做CRUD,過於依賴操控DOM的網站不適合
 Code會少很多,關注點分離變成很好維護
jQuery 與 Angular.js
 一個簡單的jQuery例子…
HTML
JS
jQuery 與 Angular.js
 One Way Binding
jQuery 與 Angular.js
 Two Way Binding
Start Angular.js
 怎麼開始? 載入.js ,宣告 ng
 <html ng-app>
……
</html>
 <html ng-app="myapp"> … </html>
<script>
var app = angular. module("myapp", []);
</script>
Hello World & Two Way Binding
Demo
Angular.js & ASP.NET in Study4
Controller
 model 與view的橋樑
 運作的邏輯寫在 Controller
 前端的分層
Model (Scope )
Controller.Scope
Demo
Filter
 過濾器可以使用一個管道字元 ”|”添加到運算式中。
 甚至可以自訂過濾器
語法 描述
currency 格式化為貨幣格式。
filter 從陣列項中選擇一個子集。
lowercase 格式化字串為小寫。
orderBy 根據某個運算式排列陣列。
uppercase 格式化字串為大寫。
Directvies
 讓Html變浩克
 內建很多directive e.g ng-XXX
 一樣可以自訂directive
Filter.Directives
Demo
Web API
 Web API為RESTful風格介面
 給我:GET (http://domain/api/customer/)
 給我:GET(http://domain/api/customer/id)
 新增:POST (http://domain/api/customer/)
 更新:PUT (http://domain/api/customer/)
 刪除:DELETE (http://domain/api/customer/)
Angular.js 如何跟API溝通
 $http.get
 $http.head
 $http.post
 $http.put
 $http.delete
 $http.jsonp
 $http.patch
Angular.js 如何跟API溝通($resource)
 專門為RESTful API做設計
 方便幫我們處理CRUD
 需載入ngResource模組
完成一個前端+後端CRUD範例….
Demo
Plugins
Angular.js & ASP.NET in Study4
語法通通不一樣
Angular.js 2.0
 基本上可以當成不同的Freamwork
 引進ES6 語法
 效能大大改善
 Components元件 概念 vs (React.js)
 完全改用 TypeScript 開發
 睡一覺起來,有可能這個世界就不一樣了
結論
 學習曲線較jQuery長
 jQuery專案翻成Angular.js後,專案好維護很多
 Angular在大型系統要小心效能問題
 相依性注入(Dependency Injection) 能方便切換模組
 Angular.js易於測試 (Protractor)
 要玩前端請愛用瀏覽器開發工具(Chome.Firefox)
 ASP.NET MVC的View(Razor)幾乎很少用了
 評估技術前,個人會先考慮“彈性”
 不要孤單的打程式
References
 官網 Document https://code.angularjs.org/1.3.15/docs/api
 Angular.js中文社區 http://www.angularjs.cn/tag/AngularJS
 Angular.js中文網 http://angularjs.apjs.net/
 Angular.js Hub http://www.angularjshub.com/
 英文夠好的話 https://github.com/jmcunningham/AngularJS-
Learning/blob/master/ZH-TW.md
References
 https://www.youtube.com/user/angularjs
 慕課網 http://www.imooc.com/course/list?c=angularjs
 Code Project
 http://www.codeproject.com/Articles/810892/Building-a-Kanban-board-
application-using-AngularJ
 http://www.codeproject.com/Articles/832288/CRUD-with-SPA-ASP-NET-
Web-API-and-Angular-js
 http://weblogs.asp.net/dwahlin/learning-angularjs-by-example-the-
customer-manager-application (推薦)
Q & A
http://ppt.cc/uMnT
別忘了填寫您寶貴的意見!

More Related Content

What's hot (20)

PPTX
ASP.NET MVC 6 新功能探索
Will Huang
 
PPTX
Angular 7 全新功能探索 (Angular Taiwan 2018)
Will Huang
 
PPTX
Angular 4 新手入門攻略完全制霸
Will Huang
 
PDF
Asp.net mvc 從無到有 -twMVC#2
twMVC
 
PDF
AngularJS 開發 ASP.NET MVC -twMVC#9
twMVC
 
PDF
Better use angular
Yanru Li
 
PDF
架構行動式網站(使用 ASP.NET MVC 4.0 -twMVC#6
twMVC
 
PPTX
Nuget介紹- 如何使用和建立自己的package
Alan Tsai
 
PDF
SignalR實戰技巧 twmvc#17
twMVC
 
PPTX
twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC
 
PPTX
Vue
國昭 張
 
PDF
動手打造 application framework-twMVC#15
twMVC
 
PDF
Asp.net mvc網站的從無到有
Wade Huang
 
PDF
ASP.NET MVC 內建驗證擴充與活用技巧 -twMVC#3
twMVC
 
PDF
ASP.NET MVC之實戰架構探討 -twMVC#5
twMVC
 
PDF
輕鬆上手Asp.net web api 2.1-twMVC#14
twMVC
 
PDF
Angular js twmvc#17
twMVC
 
PPTX
使用 ASP.NET 5 實戰開發雲端應用程式
Will Huang
 
PDF
前端工程師與室內裝修師傅的相似之處-twMVC#16
twMVC
 
PDF
ASP.NET MVC 新增、查詢、修改、刪除 基本功實戰 -twMVC#3
twMVC
 
ASP.NET MVC 6 新功能探索
Will Huang
 
Angular 7 全新功能探索 (Angular Taiwan 2018)
Will Huang
 
Angular 4 新手入門攻略完全制霸
Will Huang
 
Asp.net mvc 從無到有 -twMVC#2
twMVC
 
AngularJS 開發 ASP.NET MVC -twMVC#9
twMVC
 
Better use angular
Yanru Li
 
架構行動式網站(使用 ASP.NET MVC 4.0 -twMVC#6
twMVC
 
Nuget介紹- 如何使用和建立自己的package
Alan Tsai
 
SignalR實戰技巧 twmvc#17
twMVC
 
twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC
 
動手打造 application framework-twMVC#15
twMVC
 
Asp.net mvc網站的從無到有
Wade Huang
 
ASP.NET MVC 內建驗證擴充與活用技巧 -twMVC#3
twMVC
 
ASP.NET MVC之實戰架構探討 -twMVC#5
twMVC
 
輕鬆上手Asp.net web api 2.1-twMVC#14
twMVC
 
Angular js twmvc#17
twMVC
 
使用 ASP.NET 5 實戰開發雲端應用程式
Will Huang
 
前端工程師與室內裝修師傅的相似之處-twMVC#16
twMVC
 
ASP.NET MVC 新增、查詢、修改、刪除 基本功實戰 -twMVC#3
twMVC
 

Viewers also liked (11)

PPTX
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
Will Huang
 
PPTX
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
Will Huang
 
PPTX
ASP.NET MVC 善用網路資源快速完打造網站
twMVC
 
PPTX
保哥線上講堂:LINQ 快速上手
Will Huang
 
PPTX
Angular 2 表單的處理與驗證
Jeff Wu
 
PPTX
Angular 2 Taiwan 小聚 Forms 介紹
Jeff Wu
 
PPTX
智能合約結合區塊鏈簡介
Nicholas Lin
 
PPTX
從開發人員角度十分鐘理解區塊鏈技術
Will Huang
 
PDF
Visual Studio Code 快速上手指南
Shengyou Fan
 
PPTX
快快樂樂學 Angular 2 開發框架
Will Huang
 
PPTX
Rethinking Best Practices
floydophone
 
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
Will Huang
 
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
Will Huang
 
ASP.NET MVC 善用網路資源快速完打造網站
twMVC
 
保哥線上講堂:LINQ 快速上手
Will Huang
 
Angular 2 表單的處理與驗證
Jeff Wu
 
Angular 2 Taiwan 小聚 Forms 介紹
Jeff Wu
 
智能合約結合區塊鏈簡介
Nicholas Lin
 
從開發人員角度十分鐘理解區塊鏈技術
Will Huang
 
Visual Studio Code 快速上手指南
Shengyou Fan
 
快快樂樂學 Angular 2 開發框架
Will Huang
 
Rethinking Best Practices
floydophone
 
Ad

Similar to Angular.js & ASP.NET in Study4 (20)

PDF
twMVC#09 | AngularJS 開發 ASP.NET MVC
twMVC
 
PDF
twMVC#17 | 使用Angular.js開發大型系統架構
twMVC
 
PPTX
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
Duran Hsieh
 
PPTX
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
Duran Hsieh
 
PPTX
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
Duran Hsieh
 
PPT
Ken20150320
LearningTech
 
PPTX
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
Duran Hsieh
 
PDF
twMVC#21 | 以實例說明ASP.NET Web API 服務的開發與測試過程
twMVC
 
PPTX
Asp.net mvc 6 新功能初探
Gelis Wu
 
PDF
Non-MVC Web Framework
Fred Chien
 
PDF
Rails talk-5
Eddie Lee
 
PDF
程式人雜誌 -- 2015 年1月號
鍾誠 陳鍾誠
 
PPTX
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練1(20160222)
Duran Hsieh
 
PPTX
深入研究 Angular - phoebe pan
Phoebe Pan
 
PDF
那 Angular 那 AJAX 那 RESTful
功豪 魏
 
PDF
Angular js 入門介紹
wantingj
 
PDF
twMVC#02 | ASP.NET MVC 從無到有
twMVC
 
PDF
以Code igniter為基礎的網頁前端程式設計
Amigo 陳兆祥
 
PPTX
Introduction to ASP.NET MVC and MVC 5 Features
Jeff Chu
 
PDF
20130823微軟雲端平台開發者日
twMVC
 
twMVC#09 | AngularJS 開發 ASP.NET MVC
twMVC
 
twMVC#17 | 使用Angular.js開發大型系統架構
twMVC
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
Duran Hsieh
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
Duran Hsieh
 
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
Duran Hsieh
 
Ken20150320
LearningTech
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
Duran Hsieh
 
twMVC#21 | 以實例說明ASP.NET Web API 服務的開發與測試過程
twMVC
 
Asp.net mvc 6 新功能初探
Gelis Wu
 
Non-MVC Web Framework
Fred Chien
 
Rails talk-5
Eddie Lee
 
程式人雜誌 -- 2015 年1月號
鍾誠 陳鍾誠
 
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練1(20160222)
Duran Hsieh
 
深入研究 Angular - phoebe pan
Phoebe Pan
 
那 Angular 那 AJAX 那 RESTful
功豪 魏
 
Angular js 入門介紹
wantingj
 
twMVC#02 | ASP.NET MVC 從無到有
twMVC
 
以Code igniter為基礎的網頁前端程式設計
Amigo 陳兆祥
 
Introduction to ASP.NET MVC and MVC 5 Features
Jeff Chu
 
20130823微軟雲端平台開發者日
twMVC
 
Ad

Angular.js & ASP.NET in Study4