OREA Hotel Voron and Top Hotel Praha to Host CZ TechDays Twitter Event


On March 5th and 6th 2012, two top hotels, OREA Hotel Voron in Brno and Top Hotel
- Uploaded on | 1 Views
-
armandopierce
About OREA Hotel Voron and Top Hotel Praha to Host CZ TechDays Twitter Event
PowerPoint presentation about 'OREA Hotel Voron and Top Hotel Praha to Host CZ TechDays Twitter Event'. This presentation describes the topic on On March 5th and 6th 2012, two top hotels, OREA Hotel Voron in Brno and Top Hotel. The key topics included in this slideshow are . Download this presentation absolutely free.
Presentation Transcript
Slide1OREA HotelVoroněž I Brno 5. – 6. 3. 2012 Twitter hashtag: #cztechdays
Slide2Top HotelPraha 7. – 8. 3. 2012 Twitter hashtag: #cztechdays
Slide3Michael Juřek, Architect EvangelistŠtěpán Bechynský, Developer Evangelist VS 11 – novinky pro vývojáře Twitter hashtag: #cztechdays
Slide4•. NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide5Historie .NET frameworku2002 2003 2005 2008 2010 2012 Verze na stejném řádku mají stejný runtime .NET 4.5 při instalaci nahrazuje .NET 4 Dřívější rozdělení na Client + Extended se mění na jednu instalaci Full
Slide6Inkrementální vylepšení ve všech technologiích: Základní třídy ASP.NET (více dále) WF WCF WPF Entity Framework Inovace v jazycích – podpora pro asynchronní volání .NET Framework 4.5
Slide7Získávají rostoucí popularitu, neboť: Umožňují snáze využít dostupná jádra procesoru V klientských aplikacích zabraňují „zamrznutí“ aplikace během obsluhy událostí (v Metro aplikac ích povinné) V serverových aplikacích zvyšují škálovatelnost, brání vyčerpání threadů Asynchronní volání jsou v .NET frameworku od verze 1.0… … ale jsou neintuitivní a vedou k těžko čitelnému kódu Async/await v C # a VB.NET nabízí snadná asynchronní volání Asynchronní volání
Slide8private void button1_click(object sender, routedeventArgs e){ WebClient wc = new WebClient(); string content = wc.DownloadString( new Uri("http://some.slow.website/")); this.label1.Text = content.Length; } S ynchronn í volání
Slide9private async void button1_Click(object sender, RoutedEventArgs e) { WebClient wc = new WebClient(); string content = await wc. DownloadStringTaskAsync ( new Uri("http://some.slow.website/")); this.label1.Text = content.Length; } Asynchronn í volání
Slide10.NET framework 4.5 je nadmnožinou verze 4.0 Zcela bezproblémový přechod zaručen Pro .NET framework 4.5 lze vyvíjet pouze ve VS 11 Pro .NET framework 4.0 a nižší lze vyvíjet ve VS 2010 i 11 Stejný formát souborů (.sln, .csproj), žádný upgrade Možnost paralelního běhu VS 11 a předchozích verzí Přechod na verzi 4.5
Slide11•.NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide12čistší design – méně barev, méně bižuterie, čisté tvary http://blogs.msdn.com/b/visualstudio/archive/2012/02/23/introducing-the-new-developer-experience.aspx Zjednodušené panely nástrojů = v íce místa pro kód Na základě telemetrických měření ve VS2010 Kdo někdy kopíroval kód pomocí tlačítek Copy/Paste ? Nové okno Solution Exploreru s více funkcemi Hledání všude: Menu, nalezené chyby, solution explorer, reference, … Lepší práce s otevřenými soubory – pinování, preview, … V jednoduchosti je krása
Slide13DEMOProstředí VS 11
Slide14•.NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide15VS 2010 CSS 2.1, žádný JavaScript, žádné HTML 5 VS 2010 SP1 Základní elementy v HTML 5 (header, video, section, …) VS 2010 SP1 + Web Standards Update CSS 3.0 properties, všechny HTML 5 elementy, částečně EcmaScript5 (geolocation, DOM storage, selectors) VS 11 100 % CSS 3.0, 100% HTML 5, 100% EcmaScript 5, aktualizovan é ASP.NET (Web Forms i MVC) Podpora web standard ů
Slide16HTML Automatická detekce DOCTYPE Inteligentnější editor – např. změna uzavíracího tagu CSS Komentáře, odsazování Editor barev JavaScript Komentáře, odsazování Lepší IntelliSense Využití NuGet pro závislosti na známých JavaScript knihovnách Page Inspector – serverový i klientský pohled současně Vylepšená práce s kódem
Slide17Možnost asynchronního provádění operací Výrazné zvýšení škálovatelnosti, minimální úprava kódu Univerzální poskytovatelé Membership / Profile / Role / Session Závislost na Entity Frameworku, nikoliv na SQL Serveru Optimalizace rychlosti na čítání stránek: Minimalizace a slučování statických souborů (.js, .css) Inkrementální upload ( > 2 GB) Jemnější kontrola nad validací stránek Podpora pro anotace dat (EmailAddress, CreditCard, …) Novinky v ASP.NET runtime
Slide18Podpora HTML5 Nov é šablony projektu s adaptací na šířku/schopnosti zařízení WebForms 2.0 podpora pro TextBox (Email, Number, …) Validace na úrovni vstupního prvku (TextBox.AllowHtml) Podpora pro typy/IntelliSense při data-bindingu Model Binding – metody v kódu stránky pro práci s daty Podpora anotací dat a deklarativních parametrů metod Validace bez in-line JavaScriptu Vylepšený editor v režimu Source Podpora pro události a vizuální designéry Extrakce fragmentu stránky do User Controlu Novinky v ASP.NET Web Forms
Slide19DEMONovinky pro webové vývojáře
Slide20•.NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide21team explorer je se svojí stromovou strukturou přílišnepřehledný Je obtížné najít to, co hledám Neposkytuje vodítko pro pracovní postupy Je snadné se ztratit, např. založit pracovní položku v jiném týmovém projektu Není podpora pro paralelní práci na více úlohách: Shelveset řeší jenom část problému Slyšeli jsme…
Slide22Orientované na úlohu a kontext Vždy pracuji s jediným týmovým projektem Vylepšená uživatelská zkušenost: Nemodální, asynchronní, „líné“ provádění akcí Domovská stránka projektu jako rozcestník My Work jako kompas Specializované stránky pro každý subsystém: Zdrojové kódy, pracovní položky, buildy, reporty dokumenty Fulltextové hledání v pracovních položkách Nové uživatelské rozhraní
Slide23Vybudována nad funkčností Shelve/UnshelveUmožňuje: Dočasně sbalit a odsunout nedodělanou práci Uložit aktuální nastavení prostředí Udělat jinou práci (např. opravit urgentní chybu) Obnovit předchozí kontext (změny jsou automaticky sloučeny) Pokračovat v předchozí práci Funkce přepínání kontextu
Slide24DEMONové uživatelské rozhraní Přepínání kontextu
Slide25•.NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide26Najděte 12 rozdílů …
Slide27existující nástroj pro porovnávání a slučování verzí jezastaralý Existující nástroj postrádá integraci do prostředí Jediný způsob vizualizace nevyhovuje všem lidem a všem situacím Musíme kupovat nástroje třetích stran Množství konfliktů při paralelním vývoji je příliš velké Slyšeli jsme…
Slide28Integrovaný do prostředí Visual StudiaRůzné typy pohledů na kód Vertikální/horizontální rozdělení Integrace okna do Visual Studia: IntelliSense, zvýrazňování syntaxe, Undo, … Navíc: zlepšená inteligence při řešení konfliktů Větší procento konfliktů vyřešeno automaticky Nový rozdílový nástroj
Slide29Subversion funguje lépe v offline režimu Neotravuje s chybovými hlášeními Mohu vidět poslední verzi a porovnat se s ní Mohu zrušit změny a vrátit se zpět TFS nefunguje ideálně v offline režimu Nepraktické přepínání online/offline Obtěžující read-only atributy souborů TFS se obtížně používá s neintegrovanými nástroji (např. TFS nezjistí vymazání souboru ve Windows Exploreru) Sly šeli jsme…
Slide30Subversion nefunguje lépe , ale funguje jinak TFS 2010 používá přístup Checkout-Modify-Commit Subversion používá princip Modify-Merge-Commit Modify/Merge/Commit nabízí větší flexibilitu… Snazší použití, zejména pro začátečníky Velmi dobrá offline zkušenost … výměnou za horší kontrolu Nelze sledovat kdo co dělá Lze zahájit operaci, kterou nepůjde dokončit (např. existuje zámek) Větší potenciál vzniku konfliktů Neškáluje dobře s velmi velkou bází souborů Realita je složitější
Slide31Local workspace (styl Subversion) Výborná funkce v offline režimu Komfortní a pohodlná práce Server workspace (styl TFS 2010) Extrémní škálovatelnost Dokonalá kontrola V obou případech nižší počet konfliktů a problémů Automaticky slučitelné změny sloučeny bez potvrzení Vylepšený algoritmus detekce změn Možnost volby v TFS 11
Slide32DEMOPorovnávání a slučování Práce v offline režimu
Slide33•.NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide34Unit testy jsou doporučenou praktikou napříč všemi moderními metodikami - pomáhají vývojářům, pomáhají kvalitě produktu Neměly by být vnímány jako „práce navíc“, ale… Unit testy ve VS jsou pomalé Uživatelské rozhraní není dobré Zaměřeno spíše na testery než na vývojáře Podpora ve VS pouze pro MSTest, co ostatní frameworky? Chceme unit testy i pro nativní kód Chcecme „oficiální“ mockovací framework od MS Slyšeli jsme…
Slide35Nová architektura
Slide36Nezávislé na testovacím frameworku: MSTest pro managed kód (C #, VB.NET) Možnost pro třetí strany – adapt éry (NUnit apod.) Kontinuální testování na pozadí po úspěšném buildu Redukce a přepracování uživatelského rozhraní: Unit Test Explorer – rychlé, přehledné UI zaměřené na vývojáře Code Coverage Results (nově i pro nativní kód) Integrovaný mockovací framework Fakes (dříve Moles) Unit testy s menší režií
Slide37DEMONové UI pro unit testy
Slide38•.NET framework a jazyky • Vylepšení IDE • Vývoj webových aplikací • Zjednodušené UI pro TFS orientované na úlohy • Verzování kódu • Unit testy • Code Clone Agenda
Slide39Ideální kód: Využívá návrhové vzory Neobsahuje duplicity Každá chyba se v něm vyskytuje pouze jednou … neexistuje Re álný kód: Množení chyb metodou Copy/Paste Neslyšeli jsme, ale víme…
Slide40hledá sémanticky (nikoliv pouze textově) podobné blokykódu Nalezení duplicitního kódu v řešení Ideální cíle pro refactoring Při nalezení problému najde podobné bloky kódu Eliminace chyb namnožených kopírováním Code Clone
Slide41DEMOCode Clone
Slide42zajistěte si nové visual studio formou existující MSDN subskripce: Zjednodušené UI orientované na úlohy Porovnávání verzí, slučování změn Přerušení práce Vývoj v offline režimu Analýza kódu Revize kódu Code Clone Závěrem