Det bästa sättet att lära sig ASP.NET

Du vill lära dig ASP.NET? Jag kan inte skylla dig. Inte bara är det en extremt flexibel plattform, men .NET-utvecklare är i hög efterfrågan och kommer att fortsätta att vara. Tyvärr kan det vara en skrämmande plattform att lära sig - speciellt om du är helt nyutvecklad eller aldrig använt Java eller C ++. Men en gång över den ordspråkiga pucken hittar du det som en givande och trevlig plattform att utvecklas för. Denna kursplan är utformad för att få dig igång på ASP.NET-stacken, kunna skriva egna applikationer.


Uppgift 0: Undvik Naysayers

Ta en sida från Siddharths tidigare guide för att lära sig PHP, bortse från hatarna. Majoriteten av ASP.NETs kritiker är barn som inte vet någonting om plattformen än den som gjordes av Microsoft. De har inte spenderat fem minuter med det för att komma med någon form av informerad åsikt.

Medan det verkligen finns giltig kritik av plattformen, tillverkas de vanligtvis av utvecklare som inte bara känner till C # och .NET Framework, men PHP, Ruby, C ++, Java och andra plattformar.

ASP.NET är inte perfekt - det finns ingen sådan sak. Men det är en av de mest flexibla och kraftfulla serverns-teknik som finns idag.


Uppgift 1: Välj ett språk

Jag rekommenderar helt att du väljer C #.

ASP.NET är ofta felaktigt tänkt som ett programmeringsspråk; Det är faktiskt en plattform som bygger på. NETs Common Language Runtime (CLR), komponenten i .NET Framework som ansvarar för att utföra .NET-applikationer. På grund av detta kan en .NET-utvecklare använda vilket som helst .NET-aktiverat språk som de vill skriva sin ASP.NET-applikation. Det betyder att du kan skriva en applikation i C #, Visual Basic.NET, Python, PHP, Perl och många andra språk. Så länge det finns en. NET-kompilator för ditt valda språk kan du skriva en ASP.NET-applikation med den.

Med detta i åtanke rekommenderar jag helt att du väljer C #. Även om det kan vara frestande att välja ett annat språk kanske du är mer bekant med, är huvuddelen av informationen, både i böcker och på webben, inriktade på Microsofts officiellt stödda språk: C # och VB.NET. Dessutom är C # speciellt utformad för .NET Framework, och är sålunda det mest intuitiva för att använda .NET-funktioner. Detta är en av anledningarna till att .NET är skrämmande; inte bara måste du lära dig ramverket, utan också ett nytt språk. Men det är väl värt det i slutändan.

Extra kredit

  • Visual C # 2010 Steg för steg: När du har valt ett språk är det en bra idé att bli bekant med den. Om du vill gräva in i C # -språk innan du går in i ASP.NET rekommenderar jag Visual C # 2010 Steg för steg. Det är en mycket bra introduktion till språket, och kommer också att presentera dig för många aspekter av .NET Framework. Det krävs inte läsning, men du får en enklare tid att lära ASP.NET med en solid grund i C #.
  • ASP.NET från scratch: Nettuts + har en semi-snabb serie som heter ASP.NET från Scratch, presenteras av din sanning. Startlektionerna är några år gamla, men lektion 1 och lektion 2 ger dig lite bakgrund av plattformen och en kort introduktion till ASP.NET. Du behöver inte nödvändigtvis följa med exemplen (de använder äldre verktyg som du inte vill ladda ner), men titta på de första lektionerna för att få en uppfattning om vad du kommer in i. De senare lektionerna arbetar med MVC-ramverket, vilket du borde vänta på att lära dig till en senare tidpunkt. Serien var utformad för att få dig igång med ASP.NET, så det är inte så omfattande som en bok kan vara, men det ska tas hand om med?

Uppgift 2: Läs några böcker

Två för att vara exakt. Det finns ingen brist på ASP.NET-böcker i världen, men det finns dåliga böcker, bra böcker och utmärkta böcker. De två som listas här är utmärkta, och jag vill att du ska läsa dem i ordning.

Börjar ASP.NET 4 i C # och VB

Författare: Imar Spaanjaars

Börja ASP.NET 4 i C # och VB börjar i början av att gå igenom nedladdning och installation av en gratis version av Visual Studio som heter Visual Web Developer Express. Därefter startar du på din ASP.NET-resa, lär sig syntax, kontroller, teman och andra funktioner på plattformen. Precis som Visual C # 2010 Steg för steg ger dig en solid grund i C #, Spaanjaars 'Beginning ASP.NET 4 i C # och VB ger dig en solid grund i ASP.NET-grund.


Professionell ASP.NET 4 i C # och VB

Författare: Bill Evjen, Scott Hanselman och Devin Rader

Den här boken dyker djupare ut i ASP.NET för att ge dig en mer fullständig förståelse av plattformen. Det kommer inte bara att expandera på de ämnen som ingår i Spaanjaars bok, men det kommer att introducera dig till andra funktioner i ASP.NET och .NET Framework: sessioner, leverantörsmodell, medlemskap (autentisering och användarroll), säkerhet, statsförvaltning , cachning och listan fortsätter. Det finns inte mycket den här boken täcker inte, och det kommer att bli en ovärderlig resurs som du kan återvända till när du behöver en uppdatering på en viss funktion eller ämne.


När du avslutar dessa två böcker får du en mycket god förståelse för plattformen. Så det är dags att gräva ut och?


Uppgift 3: Skapa något

Läsning är en sak; gör en annan.

Läsning är en sak; gör en annan. Medan du utan tvekan följde med exemplen i de tidigare noterade böckerna, är det självklart att du gör något självklart. Så för den här uppgiften skriver du något. Att bygga din egen bloggmotor, forum eller handlistor kommer att sätta vad du har lärt dig för att träna. Börja små och lägg till mer i ditt projekt när du avslutar en bit. Se till att du inkluderar följande funktioner:

  • Databasdrivna: Den ska vara databasdriven. Använd Microsofts SQL Server Express som din datalagring och konstruera tabellerna du behöver för din ansökan. Om du är ny för att designa databaser är det vanligtvis en bra idé att tänka på dina data som logiska objekt. En bloggapp kan till exempel ha ett bord som heter BlogPosts där tabellens fält beskriver blogginlägg (titel, inlägg, datum för inlägg, etc.). Håll det enkelt och logiskt.
  • UI: Det borde ha ett "front-end". Med detta menar jag den del av appen som besökarna skulle se; Det är det innehåll som ditt projekt ska visa. Om du bygger en blogg, är det blogginlägg, arkiv etc. Om du bygger ett forum är det trådarna och inläggen som ingår i forumet. Om det är en att göra, lista, är det de uppgifter du (eller andra användare) ska hålla reda på.
  • Administration: Det borde ha ett "back-end". Detta är den administrativa delen av projektet, där du behåller blogginlägg, forum eller att göra-lista. Se till att du skyddar det genom att kräva att administratörer ska autentisera.

Räd aldrig att spricka öppna en bok eller ställa frågor på webben. Webbplatser som www.stackoverflow.com och forums.asp.net är värdefulla resurser där du kan ställa frågor och få tips från proffsen som har använt plattformen i flera år.

Extra kredit

För extra kredit, lägg till användare och roller.

  • För en blogg, lägg till möjligheten att ha flera författare posta blogginlägg, och ge dem roller som bestämmer vilka privilegier de har.
  • Om ett forum lägger till möjligheten för användarna att registrera sig för ett konto och börja och lägga till ämnen. Använd också roller för att bestämma vad användare kan och inte kan göra. Lägg till moderatorer och superadministratörer för extra extra kredit.
  • Om en till-lista gör det möjligt för flera användare, där användarna kan ha sin egen unika och privata att göra-lista.

Naturligtvis behöver du något sätt att administrera dessa användare och roller, så var noga med att lägga till den möjligheten till ditt "back-end".


Uppgift 4: Titta på ASP.NET från Scratch MVC Screencasts

WebForms-tekniken du har använt fram till den här punkten är bara ett av de programmeringsmönster som du kan använda för att skapa ASP.NET-applikationer. En andra programmeringsmodell är ASP.NET MVC. Det är fortfarande ASP.NET men använder ett annat programmeringsmönster som heter Model-View-Controller (MVC), och det är märkbart annorlunda än WebForms.

För att komma igång med MVC Framework, titta på följande ASP.NET från scratch lektioner:

  • MVC Introduktion
  • Routing i MVC
  • Controllers och Simple Model Validation
  • Visningar
  • Visningar i MVC3

Dessa lektioner får dig att snabbt komma igång på MVC-banan.


Uppgift 5: Läs några MVC-böcker

Professionell ASP.NET MVC 3

Författare: Jon Galloway, Phil Haack, Brad Wilson, K. Scott Allen

Delar av den här boken kommer att ses över från ASP.NET från Scratch screencasts, men det omfattar andra ämnen som TDD, säkerhet och förlängning av MVC, samt dyka djupare på ämnen som omfattas av ASP.NET från scratch-videor. Detta är ett måste ha resurs för alla ASP.NET-utvecklare som vill fånga MVC Framework.


Pro ASP.NET MVC 3 Framework

Författare: Steven Sanderson, Adam Freeman

Återigen kommer det att finnas granskningsmaterial, eftersom många ämnen omfattas av ASP.NET från Scratch and Professional ASP.NET MVC 3, men det här är en utmärkt resurs för att ge dig andra utvecklingsperspektiv på MVC-ramen.


Uppgift 6: Skriv om någonting som använder MVC Framework

Precis som att skriva något för uppgift 3 bidrog till att förstärka din förståelse av ASP.NET WebForms, du måste skriva något med hjälp av MVC Framework. När jag lär mig ett nytt språk eller mönster, gillar jag att skriva om ett befintligt projekt med hjälp av min nyfunna kunskap. Så för den här uppgiften skriver du om den app som du skrev för uppgift 3, men använd MVC Framework istället för WebForms. Denna omskrivning bör följa samma krav som uppgift 3, och den har samma extra kredit.

Än en gång, glöm inte att du inte är ensam; använd din bok eller besök www.stackoverflow.com och forums.asp.net om du fastnar.


Uppgift 7: Följ mästarna

Många Microsoft-anställda är inblandade i ASP.NET-bloggen och tweetar regelbundet, men inte alla ASP.NET-master fungerar för Microsoft. Var noga med att följa dessa killar och prenumerera på deras bloggar:

  • Scott Guthrie (@scottgu, weblogs.asp.net/scottgu/) är en av de ursprungliga arkitekterna av ASP.NET och erbjuder informativa tweets och blogginlägg om ämnet (särskilt nya saker).
  • Scott Hanselman (@shanselman, hanselman.com/) tweets mycket, men han ger en ton av information om .NET och teknik i allmänhet.
  • Phil Haack (@haacked, haacked.com/) fungerar också för Microsoft i MVC-laget, och hans informationsbloggar täcker ett brett utbud av ASP.NET-ämnen. Han är också ansvarig för NuGet, ett pakethanteringsverktyg för Visual Studio och .NET-appar.
  • ASP.NET Team (@aspnet, www.asp.net) är ASP.NET webbplatsen, med community spotlights, forum och handledning.

Uppgift 8: Håll dig uppdaterad

Microsoft släpper ut flera Community Technical Previews (CTP) före varje större release.

Datateknik är en snabb bransch, och ASP.NET är inget undantag. ASP.NET har sedan dess släppt 2002 gått igenom fem stora versioner (och ett poängutgåva), med en ny version som kommer 2012, och ASP.NET MVC har sett tre versioner sedan 2009 års release. Saker går ganska snabbt, och det är en nödvändighet att hålla reda på förändringar och förbättringar av nya versioner.

Tack och lov är det relativt lätt att stanna nuvarande med ASP.NET. Microsoft släpper ut flera Community Technical Previews (CTP) före varje större release. Inte bara får du spela med de nya funktionerna i den kommande versionen, men du har dokumentation, inklusive en grundlig "what's new / changed", med varje CTP-release.


Slutsats

Denna lektionsplan kommer att få dig på vägen till ASP.NET godhet. Det är en fantastisk plattform, och det blir bättre med varje ny version och punktutgåva. Om du har några frågor, tveka att fråga dem i kommentarerna eller tweet mig. Om du har något att lägga till, snälla dela det med resten av oss i kommentarerna. Tack, och jag hoppas att du gillar ASP.NET!

Ett annat bra sätt att uppnå mer med ASP.NETяis att använda några av de användbara .NET-skript som finns på Envato Market.

.NET-skript finns på Envato Market