SubSonics skapare anställs av Microsoft

Rob Conery, skaparen av det automagiska databaslagret SubSonic, tackar ja till en anställning av Microsoft och kommer börja redan om några veckor.

Här på Code Odyssey har vi börjat använda SubSonic i våra projekt och det är verkligen en fantastisk hjälp när man jobbar med SQL-Server. Men eftersom verktyget är öppen källkod och inte har varit sammanknutet med Microsoft så har vi varit lite nervösa inför framtiden.

Vi har funderat på hur det kommer se ut när LINQ är redo att använda. Kommer det vara ännu bättre än SubSonic, och kommer vi då lockas att byta DAL-lösning en gång till. Har vi satsat på rätt teknik och hur framtidssäker är den?

Men med skaparen på plats i Redmond känns det inte osäkert längre. Rob kommer få i uppgift att bygga ihop SubSonic med det nya MVC-ramverket som är under utveckling. Själva SubSonic kommer även fortsättningsvis vara öppen källkod under MPL 1.1-licens.

Om du inte har hört något om Microsofts planerade Model-view-controller (MVC) arkiterktur, så rekommenderar jag läsa hos Scott Guttrie och Scott Hanselman. Hos den senare finns video-presentationerna från ALT.NET-konferensen i Austin där MVC-ramverket presenterades publikt för första gången.

Comments

Vad jag har läst så är LINQ till för att skapa ett gemensamt frågespråk mot objekt, både i minnet och mot databas. Istället för att exempel NHibernate har sitt HQL, NPersist har NPath och så vidare så använder alla LINQ vilket gör så att utvecklaren bara behöver lära sig ett språk mot objekten - alla går mot en standard. Det kommande MVC ramverket för ASP.net tror jag är efterlängtat av många, bland annat mig. Hittils av allt material jag sett så är det väldigt bra. Jag gillar Ruby on Rails tänk men älskar C#, detta kommer bli grymt. /Johan
Tack för extra infon. Mina kollegor brukar också påpeka att man inte kan jämnföra LINQ med SubSonic. Jag har inte testat LINQ själv så vet inte riktigt hur det kommer fungerar. Vad jag förstått kommer det gå att ställa databasfrågor på ett förenklat sätt, men det är väl inte ett databaslager på det sättet som SubSonic är och kommer nog komplettera varandra bra. Jo MVC verkar väldigt spännade. Jag har aldrig provat Rails så för mig är detta ett helt nytt tankesätt.
Linq - Hålla isär begreppen. ---------------------------- Linq som term verkar att tendera att flyta ihop med "allt" som har/kan ha med Linq att göra. Linq är "bara" att kunna ställa SQL-liknande frågor på kollektioner som implementerar IEnumerable. http://en.wikipedia.org/wiki/Linq "LINQ defines standard query operators that allow code written in LINQ-enabled languages to filter, enumerate, and create projections of several types of collections using the same syntax. Such collections may include arrays, enumerable classes, XML, datasets from relational databases, and third party data sources." Sedan att datat i sin tur kan komma från databas är sekundärt, då det lika gärna kan komma från webservice, XML-filer. Den snabbDAL-möjlighet som blandas ihop med "bas"Linq är Linq to sql http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx Sqlmetal - kommandoradsgenererare ( http://en.wikipedia.org/wiki/Linq#SQLMetal ) Vidare på http://www.simple-talk.com/dotnet/.net-tools/exploring-linq,-sqlmetal-and-sqltac/ "SQLMetal is a command line tool that can generate the data access layer in seconds. SqlMetal will produce either C# or VB.Net code. SqlMetal generates a strongly typed data access layer. This is great for reducing runtime error. Now those runtime errors pop up in the development cycle as compile errors, reducing stress on the QA dept, Support dept and upper management, later in the life cycle. NOTE: LINQ to SQL does not require you use SqlMetal to build your strongly typed classes. If you like to incur an excess amount of time and frustration, you can code them by hand, but SqlMetal makes them quickly and consistently " Det finns alltså flera sätt att från LINQ-kollektioner jobba med/mot datakällor: Linq to datasets, linq to sql, linq to xml... Dvs från i minnetkollektioner som stödjer IEnumerable Läsa/skriva dessa till/från relationsdatabas mha sql, datasets eller XML. Ta en titt på http://www.hookedonlinq.com/Default.aspx För en mycket bra genomgång av hur LINQ fungerar titta på http://www.microsoft.com/uk/msdn/nuggets/nugget/227/Decomposing-LINQ.aspx Slutligen som kommentar på byta DAL så verkar EF (Entity framework) som mycket intressant Bra genomgång av EF på: http://mtaulty.com/communityserver/blogs/mike_taultys_blog/archive/2007/08/27/9604.aspx
Tack Jon-w! LINQ to SQL är givetvis det jag tänker på, kanonbra att du förklarade detta bättre. Många bra länkar du skickade med, ska kolla vidare på detta.