Vem är Johan Lindfors

Jag jobbar som teknisk chef på Microsoft i Sverige och ansvarar för vår tekniska evangelisering mot utvecklare. I den här bloggen har jag för avsikt att skriva om utveckling i allmänhet och på Microsofts plattform i synnerhet.

Är du intresserad av en XNA användargrupp?



Visa resultat!

Get Microsoft Silverlight

Visual Studio 2010 och .NET Framework 4.0 äntligen här!

Så idag släpptes äntligen Visual Studio 2010 och .NET Framework 4.0. Du som har en MSDN-prenumeration kan redan ladda hem den nya lanserade versionen från “MSDN Subscription Downloads”. När jag skriver detta (21.25 på måndagskvällen) så har vi precis avslutat vårt svenska lanseringsevenemang på Skandia-biografen i Stockholm (som en del av The Ultimate Tour 2010), och den globala lanseringen pågår för fullt och kan också följas Live här!

Om du vill fortsätta att ta del av nyheterna i Visual Studio 2010 och .NET Framework 4.0 så bör du besöka och börja prenumera på innehållet på http://msdn.se/vs2010.

En av våra partners som är tidiga ut med att installera .NET Framework 4.0 RTM på sina servrar är Binero. De håller på för fullt vid skrivandets stund! De har redan installerat ramverket och kör för fullt! (Uppdaterades 2010-04-13)

Från noll till koll: Webbutveckling

OBS Uppdaterade datum för Umeå och Göteborg! Bland annat baserat på den senaste veckans händelser på Island så har vi blivit ombedda att flytta Umeå och Göteborg till senare datum. Jag vill med det varmaste be om ursäkt till de som redan har anmält sig och hoppas att det finns möjlighet att delta vid de nya datumen istället. Anmälningslänkarna ska fungera under dagen!

Med de senaste årens otroliga utveckling av tekniker, ramverk och verktyg så kan det vara svårt att hålla sig kontinuerligt uppdaterad. Under en femstäders roadshow kommer vi under några eftermiddagar låta några av Sveriges vassaste webbutvecklare dela med sig av sina kunskaper och rekommendationer för hur du kan använda Microsofts plattform i dina applikationer och lösningar. Vi kommer att titta på ASP.NET, HTML5, CSS, AJAX, jQuery, Silverlight och naturligtvis Expression och Visual Studio. Målsättningen är att du ska kunna gå hem, ivrig att själv komma igång med att utveckla kreativa, kraftfulla och interaktiva webblösningar, redo för morgondagen redan idag!

Datum och orter för roadshowen:

Datum Ort Plats
26 april 19:e maj Umeå SF Filmstaden
28 april 25:e maj Göteborg Folkets Hus Draken
5 maj Sundsvall Fokets Hus
10 maj Malmö SF Filmstaden
17 maj Stockholm SF Skandia Bio

Agendan ser ut som följer:

13.00 – 13.15

Introduktion till webbutveckling
Hur kommer vi igång, vilka är verktygen, teknikerna och programmen som är relevanta?

13.15 – 14.00 Från noll till koll på 90 minuter (pass 1)
File | New och så börjar vi göra en applikation samtidigt som vi diskuterar olika aspekter under utvecklingen. Skillnader mellan WebForms och MVC, standards (HTML5) och CSS, debuggning och rekommendationer.
14.30 – 15.15

Från noll till koll på 90 minuter (pass 2)
Fortsätter på ovanstående...

15.30 – 16.30 Rikare upplevelser med Silverlight 4
Med Silverlight erbjuds ytterligare rika upplevelser både på webben, pc’n och i telefonen. Fokus på färg och form, design.

Missa inte heller att vi under roadshowens förmiddagar även håller presentationer i SharePoint 2010!

MIX10 – Hur mycket coolt som helst

Tänkte jag skulle ta och försöka och samla upp några intryck från den första tiden på MIX10, evenemanget är inte slut ännu, men det känns som om jag håller på att tappa bort mig i floran av nyheter som släppts. Måste försöka sätta mig och skriva lite mer detaljerat men just nu så hinns det helt enkelt inte med...

Windows Phone 7 Series

imageDet borde inte ha gått någon förbi att utvecklarplattformen och strategin för Windows Phone 7 Series har annonserats och förhoppningsvis så har alla också hört att utvecklingsverktygen finns tillgängliga redan i dag i en CTP för nedladdning. Verktygen består primärt av Visual Studio 2010 RC, antingen som en separat Express version eller som ett tillägg till den installation av Visual Studio 2010 RC som du redan har installerat. Med verktygen finns också en emulator av Windows Phone 7 Series som gör det möjligt att testa applikationer utan en riktig enhet tillgänglig, oavsett om applikationen är baserad på Silverlight eller XNA. Det har också annoneserats och gjorts tillgängligt en version av Expression Blend, speciellt fokuserad på att bygga rika applikationer med Silverlight för just Windows Phone 7 Series.

Ladda hem:

Silverlight 4

Scott Guthrie berättade att Silverlight 4 RC nu finns tillgänglig att ladda ned och att den färdiga versionen väntas komma om en månad. Några riktigt coola applikationer och upplevelser demonstrerades från scenen och intrycket som jag fått från flera deltagare är att Microsoft nu fått iordning på “storyn” när vi knyter ihop plattformen med Silverlight även för telefonen (det är ett superset av Silverlight 3 på telefonen, men inte allt från Silverlight 4).

Ladda hem:

Internet Explorer 9

Vi har också fått se hur arbetet av Internet Explorer 9 verkligen börjar visa resultat och bland annat Steven Sinofsky var med på scenen och visade flera demonstrationer av hur utvecklingen av webbapplikationer kan bli ytterligare lättare med inte bara IE9 utan också verktygen som följer med. Några noteringar från sessionen var:

Chakra – är en javascript-motor som använder (om det finns tillgängligt) en separat kärna för att kompilera javascript-koden i webbapplikationer gör det betydligt snabbare att exekvera javascript-kod.

HTML5 – Vi lägger ned en stor insats på att redan i ett tidigt skede implementera standards som fortfarande är under utveckling som exempelvis HTML5 Video, CSS3, DOM, SVG osv. Otroligt imponerande demonstrationer på hur prestandan med hjälp av GPU stödet spöade andra webbläsare med råge, det var länge sedan som jag hörde applåder så tätt mellan varandra för de olika funktionerna som demonstrerades, det är tydligt att vi är på väg åt rätt håll!

Community Feedback Program – innebär att en ny uppdatering av IE9 kommer att publiceras varannan månad, vilket gör att utvecklare kontinuerligt kan bidra med kommentarer och dra nytta av uppdateringar som görs under utvecklingsarbetet.

Internet Explorer 9 finns också redan nu tillgänlig för nedladdning i en förhandsversion just för utvecklare att kunna använda redan idag.

Ladda hem:

Visual Studio 2010

Scott Guthrie och även Scott Hanselman visade på en keynote på flera av nyheterna i Visual Studio 2010 som kommer att lanseras inom en månad. Spontana applåder för arbetet som Microsoft lägger ned på att både använda och bidra till jQuery var kanske inte helt oväntade, jQuery har enligt statistiken 30% användning på alla webbplatser, inte illa!

Ladda hem:

oData och Dallas

odataNågot som jag verkligen imonerades över var initativet runt oData eller Open Data Protocol som det egentligen heter. oData är ett API som hjälper en tjänst att exponera sitt data på ett sätt som gör det enkelt för andra utvecklare att bygga tjänster eller klienter som konsumerar datat. Doug Purdy visade också under sin presentation på hur projektet med kodnamn “Dallas” kan agera “repository” för sådana tjänster och då också möjliggöra för tjänsten att tjäna pengar på sitt API.

Ladda hem:

MSDN TV Live: Introduktion till Entity Framework

Nu har vi publicerat inspelningen från dagens MSDN TV Live sänding om Entity Framework. Resultatet kan ses på Channel9. Där kan du också hämta hem kodexempel samt hitta lite mer information om det som togs upp under sändningen.

Kom gärna med förslag på ämnen som du skulle vilja veta mer om!

Visual Studio 2010 och .NET Framework 4 RC

I måndags kväll, sent, så släppte vi Release Candidate av Visual Studio 2010 och .NET Framework 4.0 för nedladdning för dig som har en MSDN prenumeration. Den borde finnas publikt tillgänglig sent på onsdagen eller tidigt under torsdagen.

Det finns inga nya funktioner i RC-versionen utan det är bara en prestanda och stabilitets-uppdatering.

Läs mer och ladda hem själv här!

mer än 300 tillägg till VIsual Studio 2010

Redan nu, under Beta2-fasen, så finns det över 300 tillägg till Visual Studio 2010 som kan nås enklast genom att gå till menyn “Tools” | “Extensions manager” och välja “Online Gallery”. Då dyker det upp flera sidor av tillägg som kan underlätta utveckling med Visual Studio.

image

Bland annat finns det en editor för TT-mallar, projektmallar för gadgets, acceleratorer, silverlight och massa annat coolt att prova på! Jag har inte varit med om ett större intresse för en kommande version av Visual Studio än den som jag ser just nu.

Om du hittar något bra tillägg, tipsa mig!

Postades 17. januari 2010 09:17 av Johan Lindfors

Filmerna från Scott Guthrie i Stockholm

Nu finns filmerna producerade och publicerade på Channel9. En trevlig liten tidig julklapp för oss som kanske börjat att tröttna på Kalle Anka klockan 15.00 på julafton. :)

Du kan också få tillgång till både presentationerna och demonstrationerna eftersom Scott redan publicerat dessa på hans blogg!

Ha en riktigt trevlig jul nu!

Scott Guthrie i stockholm

Onsdagen den andra december 2009 kommer att gå till minnet för mig som en av de mest intensiva och intressanta dagar jag varit med om under min tid på Microsoft. Att från tidig morgon styra och följa Scott Guthrie mellan möten och presentationer till lämning på Arlanda på kvällen var en mycket rolig upplevelse.

Scott höll flera intressanta presentationer om .NET 4.0, Visual Studio 2010, ASP.NET MVC och Silverligt 4.0. Dagen verkar ha uppskattas av de nästan 1200 deltagarna och på twitter skrevs det flera roliga inlägg! Om du vill veta lite mer om vad som hände och vad som togs upp så har Mike Plate skrivit en omfattande rapport från dagen.

Andra som var där:

Minimalt med kod för WCF i och med .NET 4

En av nyheterna i Windows Communication Foundation version 4 är användningen av begreppet “convention over configuration”. Det innebär att vi behöver skriva betydligt mindre kod för de vanligaste scenariona där WCF används och kan exempelvis nyttjas på det här sättet.

Om jag skapar en fil med namn GreetingService.svc i en .NET 4.0 webbapplikation, adderar referensen till System.ServiceModel.dll och sedan lägger till följande kod i tidigare skapad fil, så räcker det för att ha en färdig WCF-tjänst igång som svarar på anrop som uppfyller kontraktet:

<%@ ServiceHost Language="C#" Service="GreetingService"%>
using System;
using System.ServiceModel;

[ServiceContract]
public class GreetingService
{
    [OperationContract]
    public string SayHello(string name)
    {
        return string.Format("Hello {0}", name);
    }
}

Observera gärna att jag inte följer alla rekommendationer som finns när det gäller separering av kontrakt och implementation, men det blir ändå lite intressant när jag jämför koden ovan med kod för att exempelvis göra detsamma med hjälp av ASMX:

<%@ WebService Language="C#" Class="GreetingService" %>
using System;
using System.Web.Services;

[WebService]
public class GreetingService
{
    [WebMethod]
    public string SayHello(string name)
    {
        return string.Format("Hello {0}", name);
    }
}

I och med nyheterna i .NET Framework 4.0 så behöver jag alltså inte ens lägga in konfigurationselement i web.config utan exekveringsmiljön kommer automatiskt att skapa en grundläggande endpoint som baserar sig på vilket protokoll jag går över. I mitt fall kommer en endpoint med BasicHttpBinding att användas, men skulle jag vilja att alla tjänster som ska exponeras över http istället ska använda WsHttpBinding som grundinställning så kan jag uppdatera det i min machine.config och helt enkelt lägga till ett konfigurationselement enligt följande:

<configuration>
  <system.serviceModel>
    <protocolMapping>
      <add scheme="http" binding="webHttpBinding"/>
    </protocolMapping>
  </system.serviceModel>
</configuration>

Det kan också vara värt att notera att WCF-tjänsten som byggts med den enkla och enda filen ovan inte kommer att exponera sin metadata eftersom WCF har ambitionen att vara “secure by design” och inte exponera mer information än vad som behövs. Men i mitt fall, där det oftast handlar om demonstrationer och introduktioner så har jag också valt att lägga till följande i machine.config:

<configuration>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>

Det gör att alla mina tjänster kommer att exponera WSDL-kontrakten och även underlätta felhanteringen.

Det här är bara en av flera nyheter i och med .NET Framework 4.0 och då speciellt Windows Communication Foundation. Vill du läsa mer så finns det en lysande artikel här!

MEF i Silverlight 4

Och nu så har jag helt enkelt flyttat in koden från min lilla artikel om “Hur fungerar Managed Extensibility Framework” i en Silverlight 4 lösning och det fungerade nästan helt enkelt med klipp och klistra.

Om du har Silverlight 4 runtimen (betan) för Windows eller Mac installerad så borde du kunna se resultatet här:

Det som jag fick göra var att ladda hem Silverlight 4 tools for Visual Studio 2010 Beta 2 och sedan också Silverlight Toolkit från CodePlex. Sedan la jag till referenser till följande assemblies:

  • System.ComponentModel.Composition.dll
  • System.ComponentModel.Composition.Packaging.Toolkit.dll

Och jag fick också lov att uppdatera koden när jag komponerar ihop MEF från följande:

var catalog = new AssemblyCatalog(Assembly.GetExecutingAssembly());
var container = new CompositionContainer(catalog);

container.ComposeParts(this);

Till följande:

var catalog = new PackageCatalog();
catalog.AddPackage(Package.Current);
var container = new CompositionContainer(catalog);
container.ComposeParts(this);

Sedan var det bara att tuta och köra :)

UPPDATERING:

Tack vare Fredrik Normén så fick jag tipset att också lägga till assemblyn:

  • System.ComponentModel.Composition.Initialization.dll

Då kan jag ersätta koden ovan med en enda rad:

PartInitializer.SatisfyImports(this);

Tack Fredrik :)

Postades 20. november 2009 10:12 av Johan Lindfors

Den här bloggen använder BlogEngine.NET 1.6.0.0
Temat anpassat av Johan Lindfors