1 / 82

Programy pre vývojárske spoločnosti

Miroslav Kubovčík ISV Technical Readiness Microsoft Slovakia http://blog.aspnet.sk/mirkub. Programy pre vývojárske spoločnosti. Programy pre vývoj.spoločnosti (ISV). InnovateON ( www.innovateon.com ) Zdroje pre vývoj, podpora, benefity ... Empower for ISV

tim
Download Presentation

Programy pre vývojárske spoločnosti

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Miroslav Kubovčík ISV Technical Readiness Microsoft Slovakia http://blog.aspnet.sk/mirkub Programy pre vývojárske spoločnosti

  2. Programy pre vývoj.spoločnosti (ISV) • InnovateON (www.innovateon.com) • Zdroje pre vývoj, podpora, benefity ... • Empower for ISV • Pre vývojárske spoločnosti začínajúce na platforme Microsoft s výhľadom projektu • BizSpark pre začínajúce vývojárske spoločnosti www.bizspark.com http://www.microsoft.com/bizspark/FindNetworkPartner.aspx • Microsoft Partner Program • Hodnotné zdroje a podpora aj pre ISV • Benefity podľa úrovní, ISV Competency, MAPS... • Bulletin pre vývojárske spoločnosti (ISV) • Lokálny informačný zdroj pre ISV

  3. Bulletiny pre vývojárov SK • (ISV) Bulletinpre vývojárske spoločnosti • Informácie pre nezávislých vývojárov softvéru • Semináre, akcie, možnosti rozvoja... • .NET bulletin • Informácie pre vývojárov, softvérovýcharchitektov a IT odborníkovzamerané na architektúru a vývoj .NET aplikácií • Semináre a livemeetingy na Slovensku • Linky na stiahnutie softvéru, tipy, doporučenia...

  4. Ako si zaregistrovať bulletiny? • Cez profilačné centrum • http://www.microsoft.com/slovakia/profilecenter • Alebo priamo cez linku • https://profile.microsoft.com/RegSysProfileCenter/SubCntAvailable.aspx?lcid=1051

  5. Windows 7 pred dverami • Prevezmite Windows 7 RC • http://www.microsoft.com/windows/windows-7/download.aspx • Nainštalujte si Windows 7 RC • Napr. do virtuálneho počítača vytvoreného v VirtualPC 2007 • Virtual PC je bezplatný virtualizačný nástroj http://www.microsoft.com/downloads/details.aspx?FamilyId=28C97D22-6EB8-4A09-A7F7-F6C7A1F000B5&displaylang=en • Testujte svoje aplikácie na Windows 7 • Pošlite mi (mirkub@microsoft.com)email s textom „Chcem vedieť viac o testovaní kompatibility pre Windows 7“ a po zverejnení testovacích nástrojov Vám pošlem detailnejšie informácie.

  6. Miroslav Kubovčík ISV Technical Readiness Microsoft Slovakia http://blog.aspnet.sk/mirkub Služby, služby, služby...

  7. Agenda • Základy WCF • WCF 3.5 a SP1 • .NET RIA Services • Windows 7 a služby • Silverlight a služby • Azure Services

  8. Stavebným kameňom je WCF Na správy orientované programovanie Na atribútoch založené programovanie WS-* Protokoly Vzdialené volania objektov SOA Interoperabilita

  9. K K K B B B A A A WCF komunikáciaAdresa, Binding, Kontrakt Klient Služba Správa Adresa Binding Kontrakt (Kde) (Ako) (Čo)

  10. Kontrakt – typy • Služba • Popisuje poskytované služby • Dáta • Popis štruktúry poskytovaných dát • Správa (message) • Modifikuje štruktúru SOAP správy

  11. Kontrakt služby – typy • Request – Response • OneWay • Bez odpovede • Duplex • Asynchrónne metódy • Nedá sa použiť pre všetky typy Bindings • Fault • Chyba, ktorú nemožno ošetriť na strane servera

  12. Service Contract – kód [ServiceContract] public interface ICalculator { [OperationContract] ComplexProblem SolveProblem (ComplexProblem p); }

  13. Data Contract – kód [DataContract] public class ComplexNumber { [DataMember] public double Real = 0.0D;[DataMember] public double Imaginary = 0.0D; public ComplexNumber(double r, double i) { this.Real = r; this.Imaginary = i; } }

  14. Message Contract – kód [MessageContract] public class ComplexProblem { [MessageHeader] public string operation; [MessageBody]public ComplexNumber n1; [MessageBody]public ComplexNumber n2; [MessageBody]public ComplexNumber solution; // Constructors… }

  15. Hostovanie služieb • ServiceHost using(ServiceHost host = new ServiceHost( serviceType, baseAdresses)) { host.Open(); … host.Close(); } • IIS • Service.svc <%@ServiceHost Service="serviceType" %>

  16. Behaviors – chovanie služby • Vývojár • Concurrency • Instancing • Správca • Throttling • Vystavenie metadát

  17. Instancing (inštancieslužby) • Per call • Pre každú požiadavku nová inštancia • Singleton • Pre všetky požiadavky jedna inštancia • Private Session • Čo klient, to jedna inštancia • Shared Session • Pre skupinu klientov jedna inštancia

  18. Throttling <service type="Calculator" behaviorConfiguration="CalculatorBehavior"> <!-- endpoint definitions /--> </service> <behaviors> <behavior configurationName="CalculatorBehavior"> <serviceThrottling maxConcurrentCalls="10" maxConnections="10" maxInstances="10" maxPendingOperations="10" /> </behavior> </behaviors>

  19. WCF 3.0 binding – prehľad T = Transport Security | S = WS-Security Message Security

  20. Deklaratívna konfigurácia WCF <?xml version="1.0" encoding="utf-8" ?> <configuration xmlns= "http://schemas.microsoft.com/.NetConfiguration/v2.0"> <system.serviceModel> <services> <service type="CalculatorService"> <endpoint address=“http://localhost/calculator" binding="basicHttpBinding" contractType="ICalculator" /> </service> </services> </system.serviceModel> </configuration>

  21. Vytvorenie klienta • Proxy • Konfigurácia • svcutil

  22. demo Vytvorenie WCF služby a jej otestovanie v VS 2008

  23. Agenda • Základy WCF • WCF 3.5 a SP1 • .NET RIA Services • Windows 7 a služby • Silverlight a služby • Azure Services

  24. REST? REST je štýl architektúry pre implementovanie služieb s jednoduchým a otvoreným modelom webu SOAP je protokol pre pokročilý messaging model nezávislý na transportnej vrstve

  25. REST kontinuum Hi-REST Lo-REST RESTfullness Puritáni Pragmatici • POST na 1 URI je OK • Querystringssú OK • POX je OK • HTTP výrazy • GET – načítaj • POST - preťažený • Konštruovanie URI • HTTP výrazy • GET – načítaj • PUT – Update / Insert • DELETE – Delete • POST – pridaj

  26. WCF 3.5 prináša webHttpBinding • RESTful WCF Binding • Nepoužíva SOAP obálky • Podpora transportnej vrstvy iba HTTP aHTTPS • Podporuje definície HI-REST / LO-REST • Podpora všetkých HTTP výrazov • Kódovanie webových správ • JSON • XML • Binary (streams)

  27. Chovanie webHttpBindingendpoint • webHttp – otvára model webového programovania pre WCF službu • enableWebScript – chovanie endpoint-u v štýle ASP.NET AJAX • Poskytuje generovanie ASP.NET AJAX proxy • Podporuje len GET a preťažený POST • Nepodporuje UriTemplates

  28. [WebGet] a [WebInvoke] • Indikujú HTTP metódu operácie • WebGet • WebInvoke – podpora iných výrazov ako GET • Ďalšie parametre • BodyStyle – Indikuje či sú Request / Response obalené alebo nie • RequestFormat – Jsonalebo Xml • ResponseFormat – Jsonalebo Xml • UriTemplate – definovanie URI štruktúry

  29. WCF 3.5 UriTemplate [OperationContract] [WebGet(UriTemplate=„Wine/{wineId})] WineDataGetWine(string wineId); http://localhost/service.svc/Wine/1 Šablóna URI UriTemplateumožňuje prekryť prednastavené volanie služby Argumenty naviazané podľa názvov

  30. Vylepšenie v WCF 3.5 SP1 [OperationContract] [WebGet(UriTemplate="Wine/{wineID=17})] WineDataGetWine(string wineID); Prednastavenie hodnôtpre položky šablóny

  31. Vylepšenie v WCF 3.5 SP1 [OperationContract] [WebGet(UriTemplate=“wine({wineID})] WineDataGetWine(string wineID); http://localhost/service.svc/wine(17) Segmenty zloženej šablóny

  32. .NET Frm 3.5 SP1 pre WCF • Vylepšenia škálovateľnosti • Vylepšenia DataContractSerializer • APP podpora pridaná do „syndication“ knižnice • Vylepšené syntax UriTemplate • Vyskladanie segmentov ({filename}.{ext}) • Prednastavené hodnoty (/Products/{id=23}) • VS 2008 SP1 priniesol podporu WCF refactoringu (svc/configsúbory)

  33. REST v .NET 3.5 SP1 Doporučované HI-REST WCF ASP.NET ADO.NET Data Services LO-REST Náročná Jednoduchá

  34. ADO.NET Data Service WCF Service DataService<T> Entity Data Model CLR Model (IQueryable) LINQ To SQL Model Custom Model

  35. WCF REST Starter Kit • Visual Studio 2008 šablóny • Kešovanie • Zabezpečenie • Klientská knižnica • Pripravuje sa zabudovanie do .NET 4.0 • http://aspnet.codeplex.com/Wiki/View.aspx?title=WCF%20REST&referringTitle=Home

  36. demo WCF a REST WCF Rest Starter KIT ADO.NET Data Service

  37. Malý REST sumár • REST je o resources • REST je oHTTP • REST je štýl pohybujúci sa medzi LOaHI • Doporučené spôsoby implementovania v .NET • ADO.NET Data Services • pre LO-REST • WCF • Pre LO aj HI-REST • Flexibilný so širokým záberom

  38. Agenda • Základy WCF • WCF 3.5 a SP1 • .NET RIA Services • Windows 7 a služby • Silverlight a služby • Azure Services

  39. Služba orientovaná na RIA • Cieľom je zjednodušiť vývoj RIA aplikácií • Vývoj pre n-vrstviev v RIA je náročný • Treba priblížiť RIA vývoj produktivite ASP.NET vývoja • Zaostrené na „end-to-end“ scenáre • .NET RIA Services • Sada nástrojov pre tvorbu viac vrstiev naraz • Aplikačna logika na strednej vrstve na kontrolu prístupu k dátam cez „query“ • Možnosť zdielať entity a aplik.logiku medzi vrstvami • Trieda DomainServicevystavuje entity a operácie pre dátovú doménu • Miesto, kde vývojár vkladá aplik.kód • Framework naviazaný na Entity Framework a Linq-to-SQL

  40. Aplikačný model spájajúci vrstvy • Jedna logická aplikácia • Klient je rozšírením servera Služby Rich Internet Application Browser Web Application Prezentačná logika Aplikačná logika Vrstva prístupu k dátam HTML Sieť Databáza Služby Služby Iné aplikácie

  41. Normatívny vzor • DomainContext: pripojiteľné dáta • class Catalog • EntityList<Product> Products { get } • void LoadProducts(IQueryable<Product>) • void ToggleSale(Product) • class Product • Data members + Validation • void ToggleSale() • DomainService: CRUD + Aplik.logika • class Catalog • IQueryable<Product> GetProducts() • void UpdateProduct(Product, Product) • void ToggleSale(Product) • Validačné a autorizačné pravidlá, • aplikačný workflow, … • Dátový model • class Product Dát. model + Metadáta + Zdieľaný kód Služby Aplikácia Prezentačná logika Aplikačná logika Vrstva prístupu k dátam Sieť Databáza

  42. demo .NET RIA Services (SL3)

  43. Agenda • Základy WCF • WCF 3.5 a SP1 • .NET RIA Services • Windows 7 a služby • Silverlight a služby • Azure Services

  44. Sprístupnenie webu klient. aplikáciam • Federated Search • Vyhľadávanie obsahu aj za hranicami lokálneho PC • Podpora štandardu OpenSearch • Windows Web Services API • Umožňuje natívne vytvárať a konzumovať web.služby s minimálným časom rozbehu • Rozšírená integrácia s WCF • Internet Explorer 8

  45. Federated Search Sklad dokumentov Podnikové úložisko dát Podniková aplikácia

  46. Ako pracuje Federated Search 2. Windows pošle vyhľadávané slová ako HTTP požiadavku 1. Nainštalovanie Search Connector-a (.osdx) 3. RSS výsledky vrátené zo servera • Pohodlie pre klientskú stranu • Náhľady, metadáta, drag&drop • Návyky z používania „prieskumníka“ • Jednoduchá a odľahčená integrácia • Žiadny klientský kód • Ľubovoľna serverová platforma • Založené na štandardoch • OpenSearch 1.1 • RSS a ATOM • Autentizácia • Integrovaná alebo vlastná

  47. Windows Web Services API • Prepojenie natívneho kódu a webových služieb • Win32 API • API nezávislé na .Net Framework-u • Interoperabilitazaložená na WS-* SOAP • Windows Communication Foundation (WCF) • ASP .Net XML Web Services (ASMX) • „Non-Microsoft“ služby • Systémovýkomponent Windows 7

  48. Konfigurácie WWS API • Transportná vrstva • HTTP, TCP, UDP • XML kódovanie • Textové, Binárne, MTOM • Obálka • SOAP 1.1 a 1.2 • Adresácia • WS-Addressing 0.9 a 1.0 • Metadáta • WSDL 1.1, XML Schéma 1.0 • WS-MetadataExchange 1.1 • WS-Transfer Marec 2006 • Bezpečnosť • WS-Security 1.0 a 1.1 (čiastočne) • WS-Trust Február 2005 a 1.3 (čiastočne) • WS-SecureConversation 1.1 a 1.3 (čiastočne) • Politika • WS-Policy Marec 2006 a v.1.2 • WS-Policy Attachment Marec 2006 a 1.2 • WS-SecurityPolicy 1.1

  49. demo Federated Search

  50. Agenda • Základy WCF • WCF 3.5 a SP1 • .NET RIA Services • Windows 7 a služby • Silverlight a služby • Azure Services

More Related