Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Microsoftí technologie pro webový vývoj Borek Bernard www.borber.com Aleš Roubíček www.rarous.net.

Podobné prezentace


Prezentace na téma: "Microsoftí technologie pro webový vývoj Borek Bernard www.borber.com Aleš Roubíček www.rarous.net."— Transkript prezentace:

1 Microsoftí technologie pro webový vývoj Borek Bernard www.borber.com Aleš Roubíček www.rarous.net

2 ASP.NET = webová technologie Microsoftu

3  Prototyp „XSP“  naprogramoval Scott Guthrie přes vánoční svátky  pomocí Javy 1997

4  První beta verze  Přejmenováno na ASP+  … a po vytvoření marketingové značky.NET na ASP.NET 19972000

5  ASP.NET 1.0  ScottGu se stává Product Unit Managerem 199720002002

6  Vlastnosti ASP.NET:  model web forms  ASMX web services  silná podpora OOP  výkon 199720002002

7  ASP.NET 1.1  Visual Studio.NET 2003  dolaďuje se řada základních věcí 1997200020022003

8  ASP.NET 2.0  Významné změny v.NET frameworku  CLR 2.0 tvoří základ dodnes 19972000200220032005

9  novinky v ASP.NET 2.0:  Master Pages, Web Parts  Automatická kompilace  Podpora XHTML  Themes, Skins  Navigace, SiteMap  Membership, Profiles 19972000200220032005

10  ASP.NET 3.5  Visual Studio 2008  C# 3.0, VB9  ScottGu vice president 199720002002200320052007/8

11  ASP.NET 3.5:  AJAX  integrace s IIS7  nové controly (ListView)  Agilní vývoj 199720002002200320052007/8

12  ASP.NET 3.5 SP1  Dynamic Data  URL routing  Podpora Entity Frameworku 199720002002200320052008

13

14 Web Forms Web services MobileAJAX Dynamic Data MVC ASP.NET Konfigurace Membership API IIS Přístup k datům Visual Studio Deployment Debugging Cachování

15 Web Forms Web services MobileAJAX Dynamic Data MVC ASP.NET WPF WCF WF LINQ Languages lambda výrazy Ruby var (type inference) var (type inference) extension methods anonymní typy LINQ XML literály Python System.AddIn JSON serialization System.Diagnostics.Eventing Core

16 Komponentový přístup k tvorbě aplikací

17 HTML Flex WPF ASP.NET

18  komponenty jsou inteligentní  samy si určují, jak se vyrenderují ▪ mohou generovat různý výstup pro různé klienty  komponenty jsou znovupoužitelné  žádný „spaghetti-code“  událostmi řízené programování  schovávají bezstavovost HTTP  silná podpora v nástrojích

19  Je jich celá řada   O nich později

20 ASP.NET Ukázka

21 Oživujeme nejen komponenty

22  OpenAJAX  Serverová a klientská část  Snadné navázání na serverové komponenty  Konzumace a tvorba webových služeb

23  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

24 <div id="tripList" sys:attach="dv" dv:data="{{myData}}" dv:template="{{$get('template2')}}"> <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) }}" />

25 Přístup k datům pomocí REST služeb

26  Patří do rodiny ADO.NET - přístup k datům  Framework pro snadnou tvorbu REST služeb  Primárně staví nad Entity Frameworkem a WCF  Podpora JSON a ATOM

27  Dotazování  GET parametr $filter  /Orders?$filter=Customers/CustomerID eq 'ALFKI' or Customers/CustomerID eq 'WOLZA'

28  Klientské knihovny  MS AJAX  MS Silverlight  Service Reference ve Visual Studiu  Snadná konzumace REST  XmlHttpRequest  HttpWebRequest

29 Data Services a AJAX Ukázka

30 Rychlá tvorba administračních rozhraní

31  Čerstvý přírůstek do rodiny ASP.NET .NET 3.5 SP1  Pro tvorbu „data-driven“ webů  typicky administrační rozhraní pro databázi

32 Dynamic Data Ukázka

33 Zjednodušený model stránky

34  Komplikovaný sled událostí („page lifecycle“)  PostBack model závislý na JavaScriptu  ViewState  Generovaná klientská ID  „Leaky abstraction“  ASP.NET MVC

35  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

36  Větší pracnost  Nulový ekosystém komponent  Riziko spaghetti kódu

37  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

38 Model View Controller Ukázka

39 Na co se těšit

40  Obecný trend: postupná integrace technologií vydávaných v „preview“ verzích  AJAXpreview  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í

41  Podpora dynamických jazyků  IronPython, IronRuby, JScript, VisualBasic…  Integrace jQuery

42  URL routing  Lepší podpora CSS  Kontrola nad ClientID a ViewState  AJAX  DynamicImage control

43  Scaffolding pro MVC (integrace Dynamic Data)

44

45 Web forms AJAX Dynamic Data MVC

46  Součást.NETu  rozsáhlý framework  výkonné běhové prostředí  výběr programovacích jazyků ▪ statické ▪ dynamické  přenositelnost znalostí  QA

47  „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

48  Visual Studio  plus řada doplňků třetích stran (Resharper, CodeRush, TDD.net…)  Express edice zdarma

49  Rozsáhlý ekosystém komponent  open source  komerční

50  Podpora více modelů vývoje  web forms  MVC  home-grown  third-party (MonoRail)  vyberte si, který vám vyhovuje

51  Vazba na Windows Server (IIS)   horší dostupnost hostingů  …?

52  Visual Web Developer Express - zdarma Visual Web Developer Express  nebo plné Visual Studio

53  Web Platform Installer - nainstaluje vše, snadno a rychle Web Platform Installer  VWD Express  SQL Server Express  IIS7  volitené IIS moduly (URL rewrite, ARR, …)  podpora pro PHP (!!)

54  Web Applications Installer Web Applications Installer

55

56


Stáhnout ppt "Microsoftí technologie pro webový vývoj Borek Bernard www.borber.com Aleš Roubíček www.rarous.net."

Podobné prezentace


Reklamy Google