BLOGas.lt
Pigūs skrydžiai
Sukurk savo BLOGą Kitas atsitiktinis BLOGas

TechEd Developers - 3 diena

Parašė Sergejus | 2008-11-13 16:34

Štai ir trečioji diena TechEd Developers 2008. Diena prasidėjo nuo pristatymo „A Lap Around Cloud Services“. Jo metu buvo šnekama apie naują Windows Azure platformą, kurios pagrindą sudaro virtualių mašinų klasteriai Internete su automatine apkrovos pasiskirstymo galimybe. Jeigu tiksliau, tai Windows Server 2008 Hyper-V klasteriai su .NET Framework 3.5. Pagrindinis idėjos privalumas – mums nereikia galvoti nei apie aparatinę įrangą, nei apie programinę, įskaitant atnaujinimus. Norint padidinti naudojamų virtualių mašinų skaičių – užtenka kelių minučių ir aplikacijas automatiškai aptarnaus visi prieinami mūsų virtualūs serveriai. Tam kad vartotojų duomenis neprapultu serverio gedimo metu, Microsoft saugo tris duomenų replikas. Duomenų saugojimui Windows Azure naudoja tris primityvus: lenteles, didelius binarinius objektus (angl. Binary Large Object, BLOB) ir eiles. Visas konfigūravimas vyksta konfigūracijos failo pagalba. Pačios saugyklos pasiekiamos ADO.NET Data Services pagalba panaudojant REST interfeisą. Norint programuoti Windows Azure platformai, pirma reikia parsisiųsti Windows Azure SDK skirtą Visual Studio bei gauti priėjimą prie paties serviso. Šiuo metu Windows Azure leidžia vienam vartotojui saugoti iki 50 GB, bet buvo pabrėžta, kad tai tik laikinas apribojimas.



Kito pristatymo „Windows Workflow Foundation 4.0: A First Look“ metu, buvo pristatytos WF naujovės:




  • Iš esmės perdaryta architektūra ir supaprastinas API;

  • Tik XAML grįstos darbų sekos yra rekomenduojamas būdas sekoms aprašyti;

  • Naujas WPF sekų dizaineris;

  • Išplėsta bazinių veiklų biblioteka;

  • Ženkliai pagerinta integracija su WCF servisais;

  • Duomenų srauto valdymo supaprastinimas kintamųjų, argumentų bei išraiškų pagalba;

  • Naujas darbų sekos tipas Flowchart.



Trečioji sesija „Parallel Programming for Managed Developers with Next Version of Visual Studio“ buvo skirta naujai lygiagretaus programavimo bibliotekai aptarti. Pristatymo metu buvo pažymėta, kad geriausiai kai aplikacija naudoja ne iš anksto nusakytą gijų skaičių, bet tiek gijų, kiek branduolių turi kompiuteris. Nauja Task klasė, keičia gerai žinoma Thread klasę. Šalia standartinio Thread klasės funkcionalumo, naujoji klasė daug pagalbinių metodų skirtų supaprastinti gijų valdymą. Kita nauja klasė, Parallel, leidžia išlygiagretinti For ir Foreach ciklus. Šalia minėtos klasės, naujoje Visual Studio versijoje atsiras lygiagrečių gijų derintojas ir lygiagrečių gijų stekas, kurių pagalba gijų derinimas pasidaro kaip niekada patogus. Paskutinis dalykas aptartas šioje sesijoje – PLINQ (Parallel LINQ), kurio dėka bet kurios IEnumerable sekos LINQ apdorojimą galima automatiškai išlygiagretinti tiesiog iškvietus praplėtimo metodą AsParallel().



Paskutinis dienos pristatymas – „Deep Reflection: Optimization Techniques and Important APIs in Reflection 2.0 and 3.5“. Jo metu buvo parodytos tokios kodo generavimo technikos refleksijos pagalba kaip:




  • Tradicinė reflekcija;

  • CodeDOM;

  • Reflection.Emit;

  • Eilučių kompiliavimas.



Tiek šiam kartui!


Rodyk draugams

TechEd Developers - 2 diena

Parašė Sergejus | 2008-11-13 04:28

Antroji TechEd Developers diena buvo tikrai įdomi pagal sesijų turinį. Pirmoji sesiją, „A Frist Look at Oslo, Dublin and Forkflow Foundation 4.0“, kaip ir seka iš pavadinimo buvo skirta naujiems Microsoft produktams apžvelgti. Pristatymo pradžioje dar kartą buvo paminėti Workflow Foundation privalumai: ypač geras tinkamumas ilgai vykdančioms užduotims, deklaratyvus veiklų aprašymas ir veiklių išlygiagretinimas. Trumpai buvo aptartos ir pagrindinės WF naujienos (apie jas rašysiu kitoje dalyje).




Viena iš priežasčių, kodėl WF taip ir nepradėjo masiškai naudoti – talpinimo problemos skirtingose platformose: Windows Forms, ASP.NET, WCF ir t.t. Dėl šios priežasties šiuo metu kuriamas naujasis talpinimo servisas skirtas Windows Server 2008 kodiniu pavadinimu Dublin. Jo dėka galima bus ne tik paprasčiau talpinti darbų sekas ASP.NET aplikacijose ir WCF servisuose, bet ir padaryti darbų sekas pasiekiamas kaip WCF servisus. Šalia to su Dublin bus prieinami papildomi valdymo įrankiai (IIS priedai, PowerShell komandos) bei kiti  pagalbiniai servisai (pvz., žurnalizavimas, serviso būsenos stebėjimas ir pan.)




Paskutinė tema kuri trumpai buvo užkabinta – šiuo metu kuriama modeliavimo platforma kodiniu pavadinimu Oslo. Kadangi dar produktas yra labai ankstyvoje stadijoje, tai pasakė tik tiek, kad modeliavimui bus naudojama kalba „M“. Jos pagalba iš WF veiklų galima bus kurti verslo procesus, o pačios WF veiklos galės atlikti verslo operacijas WCF servisų pagalba. Ar jums tai neprimina į paslaugas orientuotą architektūrą (angl. SOA)?




„End-to-End Database Development using VSTS 2008 Database Edition“ – antrasis pristatymas kuriame dalyvavau. Jo metu buvo aptariami pagrindiniai šios Visual Studio versijos privalumai:





  • Duomenų bazės objektų versijavimas;

  • SQL skriptų generavimas pagal duomenų bazės schemą;

  • Švaraus instaliavimo ir atnaujinimo SQL skriptų generavimas;

  • Duomenų bazės unit testavimas ir automatinis duomenų generavimas;

  • Integravimas su TFS Build;

  • Statinė T-SQL analizė (prieinama tik su atnaujinimu VSTS 2008 Database Edition GDR);

  • Naujasis duomenų bazių API, leisiantis ateinančiose Visual Studio versijose naudoti ne tik SQL Server, bet ir kitų gamintojų duomenų bazes (prieinama tik su atnaujinimu VSTS 2008 Database Edition GDR).



Kita sesija vadinosi „Designing for Testability: Bridging the Gap between Design and Testing in Object Oriented Software“. Jos metu buvo šnekėta apie projektavimo principus, kurie įgalina gerą sistemos testuojamumą. Pagrindiniai principai, kurie buvo išvardinti:





  • Testų vykdymo eiliškumas neturi būti svarbus;

  • Testai neturi reikalauti išorinio konfigūravimo;

  • Projektuojamos bibliotekos turi būti grįstos interfeisais;

  • Priklausomybės injekcijos konteinerių panaudojimas;

  • Konfigūracijos nuskaitymas per virtualius metodus, kad testavimo metu juos būtų galima perrašyti;

  • Vengti singleton objektų;

  • Vengti DoAll() metodų, t.y. daug atsakomybių turinčių metodų.

Ši sesija parodė, kad visos mano pastangos gerinti testuojamumą vystosi teisinga kryptimi.




Paskutinis pristatymas kuriame dalyvavau buvo „ASP.NET MVC Practices“. Jo metu akcentavo tokių daugeliui žinomų MVC komponentų kaip kontroleriai, filtrai, modelių susiejimas ir validavimas, MVC elementai, jQuery ir AJAX, panaudojimą.

Rodyk draugams