View
2.690
Download
0
Category
Preview:
Citation preview
Microsoftí technologie pro webový vývoj
Borek Bernard www.borber.com
Aleš Roubíčekwww.rarous.net
ASP.NET = webová technologie Microsoftu
Prototyp „XSP“ naprogramova
l Scott Guthrie přes vánoční svátky
pomocí Javy
1997
První beta verze Přejmenováno
na ASP+ … a po
vytvoření marketingové značky .NET na ASP.NET
1997 2000
ASP.NET 1.0ScottGu se
stává Product Unit Managerem
1997 2000 2002
Vlastnosti ASP.NET: model web forms ASMX web
services silná podpora OOP výkon
1997 2000 2002
ASP.NET 1.1 Visual
Studio .NET 2003
dolaďuje se řada základních věcí
1997 2000 20022003
ASP.NET 2.0 Významné
změny v .NET frameworku CLR 2.0 tvoří
základ dodnes
1997 2000 20022003 2005
novinky v ASP.NET 2.0: Master Pages, Web
Parts Automatická kompilace Podpora XHTML Themes, Skins Navigace, SiteMap Membership, Profiles
1997 2000 20022003 2005
ASP.NET 3.5 Visual
Studio 2008 C# 3.0, VB9 ScottGu vice
president
1997 2000 20022003 2005 2007/8
ASP.NET 3.5: AJAX integrace s
IIS7 nové controly
(ListView) Agilní vývoj
1997 2000 20022003 2005 2007/8
ASP.NET 3.5 SP1 Dynamic Data URL routing Podpora Entity
Frameworku
1997 2000 20022003 2005 2008
ASP.NET
Konfigurace
Membership API
IIS
Přístup k datům
Visual StudioDeployment
DebuggingCachování
ASP.NETWPF WCF WF LINQ
Languageslambd
a výrazy
Ruby
var(type
inference)
extension
methods
anonymní typy
LINQ
XML literály
Python
System.AddIn
JSON serialization
System.Diagnostics.Eventing
Core
Komponentový přístup k tvorbě aplikací
HTML
Flex
WPF
ASP.NET
komponenty jsou inteligentní samy si určují, jak se vyrenderují▪ mohou generovat různý výstup pro různé
klientykomponenty jsou znovupoužitelnéžádný „spaghetti-code“událostmi řízené programováníschovávají bezstavovost HTTPsilná podpora v nástrojích
Je jich celá řada O nich později
Ukázka
Oživujeme nejen komponenty
OpenAJAXServerová a klientská částSnadné navázání na serverové
komponentyKonzumace a tvorba webových
služeb
Klientské komponenty Podpora šablonování DataBinding
Deklarativní skriptování (xmlns)CSS selektory Integrace jQuery
Integrální součást ASP.NET Plná podpora ve Visual Studiu
(Intellisense) Patche od MS, Support
<body xmlns:sys="javascript:Sys" xmlns:dv="javascript:Sys.UI.DataView"> <div id="tripList" sys:attach="dv" dv:data="{{myData}}" dv:template="{{$get('template2')}}"></div> <div id="template2" class="sys-template" xmlns:ac="javascript:Sys.UI.AutoComplete" xmlns:wm="javascript:Sys.UI.Watermark" xmlns:dp="javascript:Sys.UI.DatePicker"> <input type="text" value="{Binding airport, mode=twoWay}" sys:id="{{ 'airport' + $index }}" sys:attach="ac,wm" ac:serviceUrl="airportList.asmx" ac:minimumPrefixLength="{{1}}" wm:text="Type the name of an airport" /> <input type="text" value="{Binding flight, mode=twoWay}" sys:id="{{ 'flight' + $index }}" /> <input type="text" value="{Binding date, mode=twoWay}" sys:id="{{ 'date' + $index }}" sys:attach="dp" dp:lowerBound="{{ new Date(1970, 4, 21) }}" dp:upperBound="{{ new Date(2050, 1, 1) }}" /> </div></body>
Přístup k datům pomocí REST služeb
Patří do rodiny ADO.NET - přístup k datům
Framework pro snadnou tvorbu REST služeb
Primárně staví nad Entity Frameworkema WCF
Podpora JSON a ATOM
Dotazování GET parametr $filter /Orders?$filter=Customers/CustomerID eq 'ALFKI' or Customers/CustomerID eq 'WOLZA'
Klientské knihovny MS AJAX MS Silverlight Service Reference ve Visual Studiu
Snadná konzumace REST XmlHttpRequest HttpWebRequest
Ukázka
Rychlá tvorba administračních rozhraní
Čerstvý přírůstek do rodiny ASP.NET .NET 3.5 SP1
Pro tvorbu „data-driven“ webů typicky administrační rozhraní pro
databázi
Ukázka
Zjednodušený model stránky
Komplikovaný sled událostí („page lifecycle“)
PostBack model závislý na JavaScriptu
ViewStateGenerovaná klientská ID„Leaky abstraction“
ASP.NET MVC
Ruší událostmi řízený model stránky Přináší:
Starý známý Model-View-Controller Dokonalá kontrola nad odesílaným HTML URL routing Volitelné ViewEngines Mockovatelné třídy Snazší testovatelnost
… při zachování většiny výhod ASP.NET
Větší pracnostNulový ekosystém komponentRiziko spaghetti kódu
Microsoft vyvíjí a podporuje oba modely
Každý si může vybrat, co mu vyhovuje
Každý se hodí na něco jiného
Web Forms a MVC budou koexistovat
Ukázka
Na co se těšit
Obecný trend: postupná integrace technologií vydávaných v „preview“ verzích AJAX preview ASP.NET 3.5 Dynamic Data: preview ASP.NET 3.5 SP1 MVC: preview ASP.NET 4.0
Pro .NET 4 se neočekává žádná další převratná technologie spíše řada menších a velmi užitečných
vylepšení
Podpora dynamických jazyků IronPython, IronRuby, JScript,
VisualBasic… Integrace jQuery
URL routingLepší podpora CSSKontrola nad ClientID a ViewStateAJAXDynamicImage control
Scaffolding pro MVC (integrace Dynamic Data)
Součást .NETu rozsáhlý framework výkonné běhové prostředí výběr programovacích jazyků▪ statické▪ dynamické
přenositelnost znalostí QA
„Tak akorát“ rychlý vývoj nových verzí major release každé 2-3 roky mezitím několik menších vylepšení preview verze pro early adoptery
Visual Studio plus řada doplňků třetích stran
(Resharper, CodeRush , TDD.net…)Express edice zdarma
Rozsáhlý ekosystém komponent open source komerční
Podpora více modelů vývoje web forms MVC home-grown third-party (MonoRail)
vyberte si, který vám vyhovuje
Vazba na Windows Server (IIS) horší dostupnost hostingů
…?
Visual Web Developer Express - zdarma nebo plné Visual Studio
Web Platform Installer - nainstaluje vše, snadno a rychle VWD Express SQL Server Express IIS7 volitené IIS moduly (URL rewrite, ARR,
…) podpora pro PHP (!!)
Web Applications Installer
Recommended