PerSalmi.NET

Swedish .Net software developer...
# Thursday den 5 June 2014

Nu är den första publikt tillgängliga förhandsversionen (CTP) av nästa generation i Visual Studio-familjen släppt!

Det har ju pratats och visats en del detaljer om vad som kommer på konferenser som BUILD och TechEd men nu kan man testa själv också.

Lite om vad som är nytt i denna Roslyn baserade version finns i Somasegars artikel:

Visual Studio 14 CTP - Somasegar's blog

För att hitta direkt till nerladdning av komplett ISO eller webbinstaller ta en titt på:

Visual Studio 14 CTP Downloads

Till sist kanske det snabbaste sättet att kunna få till sina första kodrader i denna version, en färdig virtuell maskin i Microsoft Azure? Kolla då in Azure Management Portal och skapa en ny virtuell maskin med denna VS “14” CTP förinstallerad!

image

Thursday, June 05, 2014 12:45:19 AM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
.Net | Visual Studio
# Thursday den 13 June 2013

För ett par veckor sedan körde vi ett kurstillfälle med vår .NET-kurs på Combitech där vi bland annat inkluderar testdriven utveckling med Visual Studio och C#. Eftersom den Unit Test Wizard som fanns i tidigare versioner av Visual Studio har försvunnit från 2012 versionen där enhetstestdelarna har gjorts om rejält så innebär det en del merarbete att skapa testfall för hand. Det finns visserligen sätt att plocka fram den tidigare wizarden för att generera skal till testfall och projekt om man vill, den är bortkopplad från menysystemet men kan aktiveras igen.

Det har funnits indikationer på att en ny generator för testfall är på gång och att orsaken till att den gamla togs bort var att den inte kunde fås att fungera med alternativa testramverk som nu kan användas enkelt med hjälp av plugins till den nya test runnern. Det är då intressant att en första version av en ny Unit Test Generator extension nu finns tillgänglig i Visual Studio Gallery. I första läget stödjer den bara att generera testprojekt och testfall för metoder i existerande klasser och då bara för MS-Test, men målen är klara för att man ska kunna generera kod för andra testramverk när RTM versionen kommer.

Extensionen hittar man direkt i Tools –> Extensions and Updates… om man söker på “unit test generator” eller laddar ner från länken Unit Test Generator extension.

Det man får efter installationen är en context-meny (högerklick) i kodeditorn när man är i en metod med alternativet Generate Unit Test:

image

Resultatet är att testprojekt med korrekta referenser tillsammans med testfall för metoden skapas i din solution:

image

Testkoden som genereras i testklassen är enklast möjliga, inte fylld med regioner och bortkommenterade avancerade delar som den tidigare wizarden gav. Om man genererar testfall för fler av metoderna efter hand läggs dessa i samma testklass.

   1:  using System;
   2:  using System.Collections.Generic;
   3:  using System.Linq;
   4:  using System.Text;
   5:  using System.Threading.Tasks;
   6:  using Microsoft.VisualStudio.TestTools.UnitTesting;
   7:  using CalculatorClassLibrary;
   8:   
   9:  namespace CalculatorClassLibrary.Test
  10:  {
  11:      [TestClass()]
  12:      public class CalculatorTests
  13:      {
  14:          [TestMethod()]
  15:          public void AddTest()
  16:          {
  17:              Assert.Fail();
  18:          }
  19:      }
  20:  }

 

Testfallen är sedan direkt färdiga att köras i Test Explorer i studion:

image

För den som vill påverka hur den genererade testkoden ser ut och namnges så finns en del enkla inställningsmöjligheter i Test-menyn:

image

image

Det ska bli intressant att följa detta tillägg framöver. Jag hoppas att det inte dröjer alltför länge innan de planerade funktionerna med stöd för alternativa testramverk och möjlighet att göra egna anpassningar för nya ramverk kommer.

Thursday, June 13, 2013 1:01:59 PM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
Utveckling | Visual Studio
# Wednesday den 22 May 2013

Vi har brottats med dåliga prestanda i Visual Studios debugger under flera år i ett projekt jag arbetar med. Det handlar om att single-step debugging i riktigt stora solutions, här pratar vi om 120+ projekt i en solution, går segt och tär rejält på tålamodet. Flera sekunders fördröjning för varje steg man tar med step-into eller step-over när man sitter och letar efter fel är inte ovanligt trots mycket enkla operationer i varje steg.

Men alldeles nyss gjorde min projektkollega, Henrik Cooke, ett fenomenalt genombrott i frågan! Debuggingen blir riktigt rapp och responsiv om man stänger av Edit and Continue funktionen i Visual Studio debuggern.

Så om du inte använder eller i alla fall kan leva utan Edit and Continue stöd när du kodar och felsöker så gör så här:

  • Gå till menyn DEBUG -> Options and Settings…
  • Öppna fliken Debugging -> Edit and Continue
  • Se till att rutan Enable Edit and Continue är urkryssad och välj OK

Det ska se ut så här:

image

Steg-operationerna i debuggern flyger fram efter att man fixat detta!

Wednesday, May 22, 2013 1:56:54 PM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
.Net | Verktyg | Visual Studio
# Tuesday den 27 November 2012

imageNu finns den första uppdateringen till Visual Studio 2012 klar och släppt för nerladdning.

Som det tidigare sagts så kommer dessa uppdateringar att släppas kvartalsvis framöver!

Ladda ner här: VS 2012 Update 1

Tuesday, November 27, 2012 8:46:13 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
Visual Studio
# Wednesday den 7 November 2012

DSC_1668Årets stora utvecklarkonferens om Microsoft-relaterad teknik, Build 2012, levererades i år direkt på Microsofts hemmaplan. Det egna campusområdet i Redmond var  spelplats under fyra dagar förra veckan, 30/10 – 2/11. Ett ganska stort antal deltagare fyllde dagar, kvällar och nätter med stora keynotes, vanliga konferenssessioner, prat med utställare och varandra eller ett hackathon inriktat på att ta fram appar med support av Microsofts personal. Konferensen var inte fullt så stor i år som den var förra året men man hade byggt ett speciellt tält, vilket sades rymma 16 fullstora basketplaner, för att kunna samla alla deltagare vid de gemensamma keynotes som hölls de första två dagarna.

Att Microsofts verksamhet är stor i Redmond och Seattle området är kanske ingen överraskning, men jag hade inte riktigt koll på hur stort deras campus är förrän jag sett det själv under denna resa. Som exempel på det enorma området kan man ju ta att man använde två byggnader med stora hörsalar under konferensen, dessa var belägna ca 2,5 km från varandra och mellan dem bussades deltagarna för att byta lokal beroende på vad man ville se under sessionerna. Det intressanta blir när man tar in att man egentligen aldrig lämnade campusområdet under denna bussfärd… Det ger lite annat perspektiv.

Keynotes

DSC_1203Första dagens keynote fokuserade i stort sett helt på Windows 8 och Windows Phone 8 och den nya hårdvara i form av slates, laptops, allt-i-ett-enheter och telefoner som kommer att rullas ut från de flesta hårdvarutillverkade i samband med att Windows 8 nu släppts på marknaden. Microsofts vd Steve Ballmer gjorde ett ovanligt sympatiskt intryck när han själv demonstrerade en lång rad funktioner i Windows 8 och Windows Phone 8, annars är det rätt vanligt att cheferna har med sig någon ingenjörer som kör demonstrationer. Man visade även den egna plattan Surface, nytt drag att de själva designar hårdvara, men det känns som ett viktigt drag för att motivera andra hårdvarupartners att ta fram snyggt designade produkter med högre byggkvalitet mm för att konkurrera med Apple. Att Steve tillsammans med Nokias chef i USA avslutade med att deltagarna skulle komma att förses med både Surface och Nokias Lumia 920 enheter för att kunna testa sina applikationer togs emot med jubel! Andra dagens keynote presenterade främst nyheter som kommer i Windows Azure, bland annat för att bygga servertjänster bakom de appar som förväntas slå igenom på Windows plattformen och de olika telefonplattformarna.

Sessioner

De vanliga sessionerna på konferensen kunde grovt delas in i de fyra kategorierna

  • Windows 8 och utveckling av appar
  • Windows Phone 8
  • Windows Azure och ASP.NET
  • Visual Studio 2012 och Team Foundation Server/Services

När fjärde dagen gick mot sitt slut hade jag sett följande, här länkat till respektive Channel 9 video:

Som ni ser är det en blandad kompott. Tyvärr är det ju som på de flesta konferenser att man inte hinner med att gå på alla sessioner man tycker verkar intressanta och under vissa tidsslottar på veckan finns inte något passande att se och då tar man något utanför den vanliga intressezonen. I fallet med min vecka på Build så var det några tillfällen då det helt enkelt var för populära talare så man inte fick plats. Det kan man ju som tur är rädda upp genom att titta på videoinspelningarna efteråt. Man ska ju ha något att göra på flyget hem också! Ler Det är ju egentligen nu efter konferensen det verkliga jobbet att skaffa praktisk erfarenhet av nya tekniker, som tex Windows Phone 8, börjar på allvar.

Om man inte redan installerat och kör den får man t. ex. en introduktion till nyheter i Visual Studio 2012 här: What’s new in VS2012. Det finns alltså massor av möjligheter för alla intresserade att lära sig oavsett erfarenhetsnivå och specialintressen. Så passa på att utnyttja att materialet ligger ute för alla att se på Channel 9.

Slutsatser

Microsoft förmedlar i alla fall budskapet att man jobbar stenhårt på att vi som utvecklare ska ha en smidig och produktiv resa framåt med att ta fram appar både för Windows 8 och Windows Phone. Verktygen blir allt bättre för att hjälpa oss på vägen. Traditionell webbutveckling flyter ihop alltmer med tjänster i molnplattformen Azure som också blir allt enklare att komma igång med, framför allt för mobila appar och att bygga servertjänster som knyter samman användarna. JavaScript kan helt klart betraktas som hett för tillfället, men verkar bemötas med viss skepsis även från Microsoft, det är populärt och många kan det redan men det är samtidigt ett ganska trasigt språk. Detta är något man vill reparera med TypeScript som löser många av de problem som finns i traditionell JavaScript kod. Det känns för mig som man gör detta för att få acceptans av erfarna utvecklare som vill ha bättre kodkvalitet med typning, klasser mm. En del frågetecken kvarstår efter konferensen, t. ex. att utveckling av appar för Windows Phone 8 idag inte kan göras i JavaScript/Html5 vilket är ett utvecklarspår man pushar mycket för på vanliga Windows 8. Viskningar i korridorerna tyder dock på att orsaken är att verktygen för det inte är klara än men att de kommer framöver.

Wednesday, November 07, 2012 10:33:32 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
BUILD
# Friday den 1 June 2012

Windows

Från och med idag kan man byta ut sin tidigare Windows 8 preview installation med en rykande färsk version av Windows 8 Release Preview! Använd webbinstallationsverktyget från http://windows.microsoft.com/en-US/windows-8/download eller ladda ner och installera från färdiga ISO-filer som finns på http://windows.microsoft.com/en-US/windows-8/iso. Denna release finns nu direkt tillgänglig även på svenska!

För den som behöver labba med Windows Server 2012 Release Candidate så finns även denna att hitta för nerladdning på TechNet: http://technet.microsoft.com/en-US/evalcenter/hh670538.aspx

image

Nu kan man ladda ner Visual Studio 2012 RC med tillhörande släktingar som TFS 2012 RC och .NET Framework 4.5 RC från http://www.microsoft.com/visualstudio/11/en-us/downloads.

Friday, June 01, 2012 6:39:29 AM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
TFS | Windows 8 | Windows Server | Visual Studio
# Tuesday den 27 March 2012

Som jag skrev tidigare i Bygga Windows Phone 7 Appar på Windows 8 Consumer Preview så fungerade inte Windows Phone emulatorn i WP 7.1 SDK när den installerades på Windows 8.

image

Nu har det kommit en uppdatering till WP 7 SD som laddas ner här: WP SDK 7.1.1 Update

Denna uppdatering löser dels problemet att kunna köra emulatorn på Windows 8, men ger även tillgång till emulatorer för de nyare, enklare, telefonmodellerna med 256 Mb minne.

Ett mindre problem som kvarstår som jag sett är att emulatorn går i snigelfart om man har Hyper-V funktionen installerad i Windows 8. Antagligen något slags krock där Hyper-V tar kontrollen över virtualiseringsfunktioner som Windows Phone emulatorn egentligen vill använda.

Tuesday, March 27, 2012 8:54:29 PM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
Windows 8 | Windows Phone 7
# Friday den 16 March 2012

Tisdag, 24:e april, 2012 går Microsofts patterns & practices Symposium som en direktsänd onlinekonferens.

Microsoft patterns & practices one-day ONLINE symposium 2012

Kanske kan vara värt en titt om följande agenda innehåller saker du är intresserad av:

09:00-09:05 Welcome, Soma Somasegar

09:05-10:10 Keynote, Udi Dahan

10:15-11:10 A Journey into CQRS, Julian Dominguez, Grigori Melnik

11:15-12:10 Windows Azure App Scaling to Need, Grigori Melnik, Julian Dominguez

12:30-13:25 Hybrid Cloud Applications, Scott Densmore

13:30-14:25 node.js on Azure, Yavor Georgiev

14:25-15:25 Non sequitur: Gadgeteering, Pete Brown

15:30-16:25 Building testable phone applications, Francis Cheung

16:30-17:25 Bringing WOW to the mobile web, Christopher Bennage

17:25-18:30 Keynote: Big transitions in small steps, Kent Beck

 

Kolla in mer information och registrera dig på http://symposium2012online.eventbrite.com/

Friday, March 16, 2012 9:55:05 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]

# Saturday den 10 March 2012

logoNär jag testat lite mer med Visual Studio 11 under de senaste dagarna har man ju stött på en del tredjepartsverktyg som inte fungerar med VS11. Tex fungerar ju inte alla tillägg till Visual Studio 2010 i den nya 11:an. Ett av dessa tillägg som vi använder dagligen är WiX – ett verktyg för att skapa installationspaket (MSI). Egentligen fungerar ju WiX i sig, från kommandorad, om man har en dator med VS11 på men man kan inte ladda den speciella projekttyp för WiX som finns. Nu har gänget bakom WiX släppt sina första releaser som även installerar tilläggen i VS 11. Det var nog det sista hindret vi hade för att kunna jobba med alla delar av mitt dagliga uppdrag inne i VS 11. Ladda ner WiX senaste releaser från WiX Releases.

Eftersom WiX gänget är specialister på installationspaket så kan man ju förstå att de är tidigt ute med nytänkande i sitt eget installationspaket… Det är nog det första riktigt Metro-inspirerade installationspaketet jag sett:

wixinstaller

Den tvåfärgade mörk/ljusröda breda knappen i mitten är alltså en progressbar som visar hur lång installationen kommit!

Saturday, March 10, 2012 6:21:29 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
Visual Studio
# Tuesday den 6 March 2012

Som om det inte fanns nog med nya grejer att labba med sen förra veckans Windows 8 + VS 11 Beta så kommer nu den färdiga versionen av SQL Server 2012. Det är till och med ett virtuellt release event nu den 7 mars. Än så länge finns bara en utvärderingsvariant att ladda ner men det kan ju vara intressant att köra den fram till 1 april 2012 då den blir fullt tillgänglig. Fullständiga versioner inklusive Developer Edition finns nu på MSDN Subscriber Downloads. Om du inte har en MSDN prenumeration kan man testköra med nedanstående utvärderingspaket:

Microsoft® SQL Server® 2012 Evaluation

Microsoft® SQL Server® 2012 Feature Pack

Vill man kolla på vad som är nytt finns http://www.sqlserverlaunch.com där översikter och ett antal djupare sessioner finns att se.

För utvecklare innebär denna nya version att det kommer nya verktyg.

Kombinationen av ny SQL Server och nya verktyg i Visual Studio är intressant. Kanske det kommer att stabilisera sig och vi slipper få en ny projekttyp för databaser för varje uppdatering av Visual Studio som släpps fram framöver. Vi får hoppas att de hittat rätt form nu, det ser i alla fall lovande ut.

imageUnder senaste dagarna när jag labbat med Visual Studio 11 så råkade jag tex på en ganska intressant nykomling i SQL Server familjen, SQL Server Express LocalDB – en lättvikts variant av SQL Express som passar bra för utvecklingsändamål. Den aktiverar och kopplar upp databaser efter behov. Kopplingen till databasen stängs sedan automatiskt en kort stund efter att den process som använder databasen stängt anslutningen. Detta helt utan att man behöver skapa nya databaser manuellt på någon installerad instans av SQL Server.

De nya verktygen för att hantera SQL Server databaser i Visual Studio, SQL Server Data Tools (SSDT) gör att man kan jobba effektivt med datalagret direkt i studion. De flesta funktioner man tidigare behövde SQL Server Management Studio till går nu att jobba med från Visual Studio.

SSDT är inte heller begränsad till att bara fungera ihop med VS 11, om man vill utnyttja SSDT finns verktygen att plocka ner till VS 2010 via Web Platform Installer.

Tuesday, March 06, 2012 11:05:03 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
Databaser | SQL Server | Visual Studio

Om du installerat Windows 8 Consumer Preview på din utvecklingsdator och sedan försökt installera Windows Phone 7.1 SDK, för att kunna bygga appar med Visual Studio, så har du antagligen stött på felmeddelanden.

Det är främst två problematiska paket som gör att WP 7.1 SDK inte kan installeras:

  • Microsoft XNA Game Studio 4.0
  • Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0

Anledningen att installationen av dessa två paket misslyckas är att de i bakgrunden försöker installera Microsoft Games for Windows som en delkomponent och den version som SDK installationen laddar ner fungerar inte på Windows 8.

Detta går dock att lösa genom att ladda ner Microsoft Games for Windows separat och installera den före man försöker lägga in Windows Phone 7.1 SDK!

För att det hela ska fungera smärtfritt kan följande sekvens vara bra att följa:

  1. Stäng av UAC tillfälligt
  2. Avinstallera alla delar av eventuellt misslyckad Windows Phone 7.1 SDK installation
  3. Avinstallera Microsoft Games for Windows klienten
  4. Starta om datorn
  5. Ladda ner och installera Games for Windows nyare klient här - Games for Windows Marketplace-klient
  6. Installera Windows Phone 7.1 SDK
  7. Aktivera UAC igen
  8. Starta om datorn

image

När dessa steg har klarats av så kan man bygga appar för WP7 på en dator med Windows 8 Consumer Preview!

Men eftersom preview- och betavärlden inte är till för de som är rädda för lite omvägar så finns ju en del problem som återstår när det gäller att köra apputveckling på Windows 8.

  • Windows Phone emulatorn fungerar inte alls på Windows 8
  • Det går bara att bygga appar i Visual Studio 2010

Debugging måste alltså göras på en fysisk Windows Phone 7 enhet som är upplåst för utveckling. Tyvärr integreras inte heller verktygen i WP7 SDK med nya Visual Studio 11 Beta så man får hålla tillgodo med 2010 versionen av utvecklingsmiljön.

Tuesday, March 06, 2012 3:43:54 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
Verktyg | Windows 8 | Windows Phone 7 | Visual Studio
# Wednesday den 29 February 2012

Idag släpper Microsoft en ny förhandsversion av Windows 8, första stora uppdateringen sedan den tidiga preview som släpptes på BUILD konferensen.

image

Ladda ner den nya  Windows 8 Consumer Preview här.

Vill man testa Windows 8 Server så hittar man den här: Windows Server 8 Beta

 

image

Visual Studio 11 Beta behövs för att komma igång med utveckling av Metro applikationer för denna nya consumer preview:

Wednesday, February 29, 2012 4:03:01 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
Windows 8 | Visual Studio
# Sunday den 13 November 2011

Jag upptäckte nyligen att min Dell Latitude E6420, som jag använder sedan i sommras, verkade vara långsammare är den varit för någon vecka sedan. Den var faktiskt långsammare än en äldre maskin jag använder på mitt nuvarande huvuduppdrag. Det var en så markant att jag började fundera på vad som hänt och ganska snart insåg jag att Turbo Boost gadgeten som monitorerar vilken CPU frekvens som används för tillfället aldrig visade mer än den nominella 2,20 GHz frekvensen som min Core i7 2720QM processor har utan Turbo Boost.

image

Lite googling visade snabbt att det fanns många med laptops ur E6420, E6520 och lite andra serier som hade liknande problem. Några uppmärksamma ägare hade sett att det dök upp då de uppdaterat BIOS till versionerna A06 eller A07 och att de inte haft problem förrän dessa uppdateringar installerats.

Så receptet för att tillbaks den smått fantastiska fart som maskinen hade innan var att återinstallera BIOS version A05!

Intel Turbo Boost Monitor hittar man för nerladdning här: http://www.intel.com/support/processors/sb/CS-031038.htm

Sunday, November 13, 2011 12:49:13 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
Hårdvara
# Wednesday den 28 September 2011

Idag upptäckte jag en skum sidoeffekt av att ha installerat Visual Studio 11 Developer Preview sida vid sida med mina andra utvecklingsverktyg. Expression Blend 4 trivs inte riktigt tillsammans med .NET Framework 4.5 och man får problem att starta Blend. Hos mig fick det effekten att man bara kunde starta en instans av Blend, försök att starta fler instanser gav krascher djupt nere i .NET CLR. Efter nån timme gick det inte alls att starta Blend så felsökning var oundviklig.

I Windows eventlogg såg det ut så här:

image 

Om man har dessa problem så finns det faktiskt hjälp att få. Kör följande rader i ett kommandoskal och starta Blend igen utan problem:

%windir%\Microsoft.NET\Framework\v4.0.30319\ngen uninstall "%ProgramFiles(x86)%\Microsoft Expression\Blend 4\Microsoft.Expression.Framework.dll"
%windir%\Microsoft.NET\Framework\v4.0.30319\ngen uninstall "%ProgramFiles(x86)%\Microsoft Expression\Blend 4\Microsoft.Expression.Blend.dll"
%windir%\Microsoft.NET\Framework\v4.0.30319\ngen uninstall "%ProgramFiles(x86)%\Microsoft Expression\Blend 4\Microsoft.Expression.Project.dll"
%windir%\Microsoft.NET\Framework\v4.0.30319\ngen uninstall "%ProgramFiles(x86)%\Microsoft Expression\Blend 4\Microsoft.Expression.WindowsPhone.dll"

 

Tipset om denna lösning hittade jag på Microsoft Connect - Blend 4 krasch vid uppstart.

Wednesday, September 28, 2011 3:04:32 PM (W. Europe Daylight Time, UTC+02:00)  #    Comments [1]
Verktyg | Visual Studio | WPF
# Friday den 23 September 2011

Det börjar bli långt fram i veckan nu med massor av nyheter och långa dagar. Vi funderar väl lite på det men är snart inne på att vi måste avsluta med en stark slutspurt, detta är ju sista dagen av konferensen och vi har fyra sessioner kvar att avnjuta.

Vi börjar dagen stenhårt med något som låter enkelt på rubriken “Windows Runtime internals: Understanding Hello World”. Det är inte fullt så enkelt, här snackar vi djupdykning i hur en WinRT App startar upp under en timme med Microsoft Console Debugger - cdb.exe, virtual function tables, Windows Registry och annat smått och gott, mycket lärorikt om hur initiering och uppstart av Windows Runtime ser ut. Kolla själva på Channel 9.

image

Session två för dagen blir om Media fundamentals of a communications app, intressant för att kunna utnyttja telefoni, kamera och video i Windows 8 enheter. Det finns riktigt smidiga APIer för detta i WinRT jämfört med hur krångligt det var att uppnå samma resultat med .NET eller Win32 innan.

Efter lunch drar vi på med en tungviktare till session igen, Deep Dive into the Kernel of  the .NET Framework. Mycket intressant om arbetet med att förbättra .NET kärnan i 4.5, bland annat när det gäller garbage collection och NGen systemet för att optimera prestanda när managed kod översätts till maskinkod i produktionsmiljöer. Bland annat genereras nu native kod images när de behövs baserat på statiskit och inte i förväg för att spara diskutrymme och minska applikationers tyngd i systemet. I .NET 4.5 körs ngen för Metro assemblies och för utvalda .NET assemblies i global assembly cache. Man har även infört att JIT kompilering kan köras om för kodstycken utan att starta om processer, detta gör att man kan instrumenera managed kod med instruktioner för profilering under körning utan att starta om processen som ska monitoreras.

Som avslutning på dagen och hela konferensen gick vi på en session om Architectural discovery with Visual Studio 11. Teamet bakom de olika ALM verktygen i Visual Studio visade upp möjligheterna med nya dependency diagram och hur dessa kan användas för att studer och förstå en stor kodbas och tex utforma utbildningsmaterial för nya utvecklare som snabbt ska komma in i ett projekt.

Efter konferensen var det dags för lite mer teknikspaning på ett flertal affärer, Microsoft Store, Apple Store och Sony Store i Costa Mesa. Vi kostaterar tex att vissa saker som tex Microsofts Arc Touch Mouse är billigare i Sverige än i USA, Apple Store är bland det stökigaste man kan besöka i fråga om ljudnivå och Sony har en del Vaio laptops med grymma prestanda. Nytt personligt rekord i diskprestanda som jag själv uppmätt med winsat i Windows 7 ligger nu på över 920 MB/sekund i läshastighet! Det är ruskigt snabbt. Våra annars toksnabba utvecklingslaptops är stillastående i jämförelse. Kvällen avslutades med packning…

Friday, September 23, 2011 12:01:01 AM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
.Net | BUILD | Windows Runtime | Visual Studio
# Thursday den 22 September 2011

Dagens första session blev inte helt oväntat Anders Heijlsbergs genomgång av framtiden för C# och Visual Basic. Det största och mest kända tillägget till språken är async konstruktionerna, det har ju kommit ut information om async redan innan men nu är det på väg ut i verkligheten med WinRT och .NET 4.5. Med tanke på att så stor andel av alla APIer nu har asynkrona varianter så kommer det att underlätta kod i moderna applikationer betydligt. Anders visade även tre nya attribut för felhantering och trace som gör att man kan inkludera källkodsinformation som filnamn och radnummer i t.ex. ett tracemeddelande.

Det mest intressanta eller omvälvande från sessionen var presentationen av Roslyn-projektet som flyttar ut språkkompilatorerna som tjänster. En serie APIer blir då tillgängliga så att utvecklare av verktyg och språk kan haka in sig och göra intressanta saker som refaktorering, kodgenerering  mm. Demoexemplet var tex att göra en extension till studion som klistrade in utklippt C# kod som Visual Basic kod översatt och klar. Spännande om man gillar att bygga ut sina verktyg. Perfekt för den som vill bygga till smart kodgenerering eller egna refaktoreringar. En CTP version av Visual Studio Roslyn kommer i mitten av oktober.

image

Dagens andra session som skulle bli om “Löst kopplade applikationer med Service Bus – Clemens Vasters” var förstås fullsatt så det blev lite avkoppling och tid att reflektera över veckan som den varit hittils. Ett tillfälle att läsa lite och låta hjärnan varva ner från informationsflödet. Trist men man får kolla på videon efteråt.

Vi lär oss av misstagen och är riktigt tidiga till nästa session om Entity Framework vNext. Riktigt intressant och ser nu ut att kunna konkurrera rejält med NHibernate som vi använder dagligen.

Bland annat kommer stöd för

  • Enums
  • Tablevalued functions
  • Compiled linq
  • Optimized query
  • Multipla diagram
  • Databasprojekt integration
  • Stored Procedures och multipla resultatset

Killarna visade även mer om Code First modellen som funnits ute i testversion ett tag samt nya det nya fluent-API som kan användas för konfigurering. Höjdpunkten tycker jag var migreringar, dvs stöd för att via kod uppdatera databas scheman när det behövs när en ny version ska installeras och uppgradera en tidigare databas med ny funktionalitet. Migrationer genereras i önskat språk. Kodfilerna kan även redigeras för hand och man ska inte riskera att de skrivs över av Entity Framework när man genererar ut ny migrationskod. I närheten av migreringar ligger också reverse engineering av databaser till code first modeller.

Nya datatyper som kommit i SQL Server sedan flera år har nu fått stöd i EF, tex finns nu de geografiska datatyperna med i EF. Datatjänster för access från klienter som telefoner och webbapplikationer finns också via WCF Data Services som kan skapas från en EF modell. DataSvcUtil kan användas för att generera klientproxys mot dessa services, ser smidigt ut vid demo, återstår att se hur det blir i praktiken.

Dagen avslutar vi med en session om tips och tricks i Visual Studio 2010 och 11. Lite lättviktigare avslutning på dagen även om det var högt tempo och del grejer man inte sett innan eller helt enkelt glömt bort. Efter sessionernas slut var det en sk Ask the Experts-stund där massor av medlemmar från utvecklingsteamen bakom Windows 8, WinRT och alla andra tekniker fanns på plats och man kunde sitta ner och prata samt få svar på frågor av de som faktiskt bygger grejerna. Eftersom det närmast uppstått överladdning av nya tekniker under veckan och man inte hunnit reflektera så väldigt mycket var det inte helt självklart vilka som var de rätta frågorna att ställa. Men jag fick i alla fall veta mer om SkyDrive-stödet i Windows 8.

Kvällen tillbringade vi på ESPN Zone där det ordnats med GeekFest, det bjöds på lite typisk plockmat och dryck under trevliga former, man kunde träffa mängder av .NET-folk och utvecklare mer eller mindre kända från tex Dotnet Rocks podcasts.

Thursday, September 22, 2011 11:06:29 PM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
.Net | BUILD

Jag fortsätter med några summeringar av BUILD konferensen, de var menade att postas redan förra veckan medan konferensen pågick men de blev fördröjda av både tekniska problem och tidsbrist.

Dag två började liksom första dagen med ett keynoteföredrag, den här dagen med fokus på utveckling. Främst då med nya versioner av Visual Studio, .NET Framework och DirectX. Scott Guthrie och Jason Zander var de tunga namnen för dagen, mest förtjusning hos publiken gav nog en demo av nya avancerade debugger funktioner där man felsökte ett DirectX baserat 3D spel och kunde hitta ett renderingsfel genom att spåra vägen genom olika filter som presentationen av en specifik pixel hade tagit. Grafiska demos väcker alltid publikens jubel tycks det, så Visual Studios nya grafikeditor blev också populär.

image

Visual Studio 11 som spelar en central roll i alla dessa utvecklingsscenarier har förbättrats i massor med små och stora detaljer, ScottGu visade på en del av nyheterna inom ASP.NET MVC och Async.

Jason Zander presenterade Team Foundation Service Preview som levereras som en tjänst baserad på Windows Azure och alla deltagare fick inbjudan till att pröva tjänsten under ett år.

Steve Ballmer dök upp lite oväntat under sista halvtimmen av keynoten och tryckte främst på att det nu fanns ett utmärkt tillfälle att börja bygga appar för Windows 8 med Metro-stil och att han hoppades kreativiteten skulle flöda fritt. Helt klart är att fokus för framtiden ligger på Windows - Windows 8, Windows Server 8, Windows Azure och Windows Phone! Han avslutade förstås med sin numera klassiska "Developers, developers, developers."

Efter detta började de riktiga tekniksessionerna som går mer på djupet. Det märktes tyvärr att en del hade haft lite bråttom att få ihop materialet. Vi var bland annat på en väldigt kort session om DirectX som inte var speciellt givande, men det skulle ganska snabbt bli bättre. Det var väl egentligen inte meningen att vi skulle på DirectX sessionen heller eftersom vi hamnade på den enbart av anledningen att det var proppfullt med folk på den session vi egentligen ville se. Tyvärr var nog detta en effekt av att allt varit så hemligt ända fram till konferensens början så man hade inte kunnat föranmäla sina intressen speciellt detaljerat. Planeringen av vilka sessioner som skulle komma att dra storpublik var därför lite skev. Man kunde snabbt se trenden att Visual Studio 11, nya Windows Runtime och en del sessioner med folk som har särskilt bra rykte om sig som underhållande och duktiga talare fick man vara väldigt tidig till för att få plats.

Det bästa med dagen var kanske att koncepten bakom Windows Runtime började klarna ganska mycket. Martyn Lovells genomgång “Lap around Windows Runtime” gav mycket och kan rekommenderas för den som är intresserad. Vi avslutade dagen med en session om WebSockets i ASP.NET 4.5 på Windows Server 8. WebSockets kommer att öka mycket i användning framöver när alltfler webbapplikationer börjar utnyttja HTML5 funktioner och behöver snabba, effektiva sätt att få meddelanden pushade ut från servern till presentationen ute i användarnas webläsare. Stödet i ASP.NET 4.5 kändes ganska smidigt att använda, men det som stör är att det var något oklart om det samtidigt krävdes att servern kör på Windows Server 8.

Thursday, September 22, 2011 10:21:37 PM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
.Net | BUILD | Visual Studio
# Saturday den 17 September 2011

Dagen var upplagd så att man skulle få överblick av vad som är på gång från Microsoft i grova drag med keynote och så kallade Big Picture föredrag hela dagen följt av en mingelkväll.

Schemaplanering var inte ett problem den här dagen, det fanns inget annat att välja på än att dricka från brandslangen som en av talarna sa.

Steven Sinofsky och Julie Larson-Green visade upp Windows 8 och det nya Metro gränssnittet där den traditionella startmenyn fått ge vika för ett ganska annorlunda grepp med en sidscrollande fullskärms layout med Live Tiles. Samma layout som tidigare används i Windows Phone 7. Meddelandet är också att man ska kunna köra allt som fungerat på Windows 7 på kommande Windows 8 och att det inte finns något fastslaget releasedatum, man låter kvaliteten styra när det ska släppas som strategin är just nu. Väldigt kortfattat nämner man att Windows 8 även kommer att finnas på Arm-baserade surfplattor och netbooks men det som visas i form av plattor är Intel-baserat förutom en enda platta där man bara kan se Metro-gränssnittet.

image

Man jobbar hårt på att Windows 8 ska vara högoptimerat och effektivt, tex har det i nystartat läge färre processer igång är föregångaren Windows 7 och mindre minnesförbrukning, 281 Mb jämfört med tidigare 540 Mb.

Gränssnittet i Metro-läget är i stor utsträckning tänkt för pekskärmar och man säger att inom några år kommer en skärm som inte stödjer touchfunktioner att betraktas som en trasig skärm. Efter genomgång och uppvisande av massor med olika experimentella PC prototyper meddelas det att alla deltagare kommer att få tillgång till en prototyp PC, kallad Windows 8 Developer Preview PC för att kunna komma igång och labba med Windows 8 och utveckling av Metro applikationer.

Den nya programmeringsmodellen kallas Windows Runtime, eller WinRT i kortform.

image

WinRT utgör en ny grund för att bygga Metro UI applikationer, utveckling sker i C#, VB, C++ eller HTML och JavaScript och alla UI delar byggs i Xaml som därmed har flyttat in i Windows från att tidigare ha tillhört .Net Framework. Alla som jobbat med WPF eller Silverlight har därmed relativt lätt att komma igång med Metro applikationer. Ett uppstädat programmeringsgränssnitt som ersätter Win32 med ganska tydliga influenser från både .NET och COM-systemet, skulle jag säga om det skulle sammanfattas väldigt kort. På bilden ovan ser det ut som .NET har hamnat i skymundan men man ska tänka på att WinRT enbart används i utveckling av Metro-baserade klientapplikationer, på serversidan är det alltjämt .NET som gäller i första hand.

Senare under dagen visas översiktligt hur app-utveckling för Metro går till i Visual Studio 11 Express och Expression Blend som nu växt från att bara vara ett Xaml-verktyg till att även täcka in behovet av bra designverktyg för HTML.

Efter de tre sessionerna med smakprov på Metro och WinRT återstår den smått humoristiska upplevelsen att se 5000 konferensdeltagare köa för att hämta ut prototypdatorerna. Helt galet.

Saturday, September 17, 2011 9:59:44 AM (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
BUILD
Blog & Contact
Per Salmi
Per Salmi
Min LinkedIn Profil

Jag arbetar på Combitech AB i Linköping med konsultuppdrag och utbildning inom Microsoft .NET området. Kontakta mig gärna om ni har frågor, behov av konsulttjänster eller är intresserade av utbildning inom .NET.

Copyright © 2014 Per Salmi

Bloggmotor: newtelligence dasBlog 2.3.12105.0

Sign In
Statistics
Total Posts: 211
This Year: 1
This Month: 0
This Week: 0
Comments: 40

Datorer
All Content Copyright © 2014, Per Salmi