.NET Development for SQL Server Developer - Sql Saturday #264 Ancona


Published on

How can .NET contribute to the daily work of a SQL Server developer? In many ways....

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

.NET Development for SQL Server Developer - Sql Saturday #264 Ancona

  1. 1. .NET Development for SQL Server Developer Marco Parenzan 1nn0va Servizi CGN #sqlsat257 #sqlsat264 #sqlsatverona
  2. 2. Sponsors & Media Partners Dicembre 13th, 2013 #sqlsat264
  3. 3. Organizers Dicembre 13th, 2013 #sqlsat264
  4. 4. About me Formazione & Innovazione con Servizi CGN Formazione & Divulgazione con 1nn0va @marco_parenzan it.linkedin.com/in/marcoparenzan www.facebook.com/parenzan.marco codeisvalue.wordpress.com www.marcoparenzan.it www.slideshare.net/marco.parenzan github.com/marcoparenzan marco [dot] parenzan [at] libero/live [dot] it (Tentative of) Cloud Developer Developer e Architect…in .NET? Dicembre 13th, 2013 #sqlsat264
  5. 5. Agenda I’m not alone...:) .NET state of the art A story from a SQL Server Developer Create a DB in a Developer way Two other stories Dicembre 13th, 2013 #sqlsat264
  6. 6. From Alessandro and Gian Maria session... There can be more Developer life in your Sql life  ALM (Unit) Testing DB vs. Codice Domain, Code     Dicembre 13th, 2013 #sqlsat264
  7. 7. .NET State of the Art Mature environment 2002+ 8 versions Consistent (Server side) pervasive environment Devices, Web (HTML5/CSS3/Javascript) are here to stay Possibility of a scale-out model Data services ASP.NET .NET/WCF Dicembre 13th, 2013 #sqlsat264
  8. 8. C# State of the Art Mature and powerful and expressive language Declarative approach is in general correct But it’s not (always) confortable Imperative language Tell how to do it… …not just what you want... …sometimes is faster… Many functional/SQL goodies LINQ Many scalability goodies Parallelism Async Start talking about «cost of manteinance» Not performances Dicembre 13th, 2013 #sqlsat264
  9. 9. .NET: where we are .NET 4.5.1 C# 5.0 Visual Studio 2013 ASP.NET (MVC) 5.0: one ASP.NET Entity Framework 6.0 Team Foundation Server (on premise) Visual Studio Online (aka Team Foundation Service cloud) ...and we now have a three week scrum sprint releases MVC 5.1 Visual Studio 2013.1   Dicembre 13th, 2013 #sqlsat264
  10. 10. Many good «forgotten» tools Powershell 3.0 SQL Server Data Tools Windows Azure Dicembre 13th, 2013 #sqlsat264
  11. 11. Many good «third party» tools ASPOSE.Total 8.5 NoSQL Raven DB Dicembre 13th, 2013 #sqlsat264
  12. 12. A story from a SQLServer Developer Dicembre 13th, 2013 #sqlsat264
  13. 13. The story is about a CRM Among many others Just change CRM with *  (it’s the same) The story is about a boy… …that is SQL-based (a BI guy!) …that tries to solve all things with SQL Sometimes (I think) he does things «complicated» could be «declarative vs. imperative» programming But this is another story Dicembre 13th, 2013 #sqlsat264
  14. 14. Create a DB in a Developer way Remembering #sqlsat176 http://www.slideshare.net/marco.parenzan/sql-server-data-tools15242283 Remembering Gian Maria Ricci’s session  “Database projects strikes back” As a project inside Visual Studio SQL Server Data Tools A «restart» for Database Project… Model based Differential Updates All aspects for SQL Server Database developments Not administration Just Model Also SQL CLR Dicembre 13th, 2013 #sqlsat264
  15. 15. A story from a SQLServer Developer: needs I need to do it «@ home»  I need to import data I need to admin data I need to handle data I need to share the data Dicembre 13th, 2013 Start here I need to edit data The only thing I can’t do (?) #sqlsat264
  16. 16. A story from a SQLServer Developer: SQL solutions @home Import Data/ETL Management Studio + SQL Stored Procedures Export Data/ETL Dicembre 13th, 2013 Start here ???? Access??? No way! #sqlsat264
  17. 17. A story from a SQLServer Developer: solutions Consume .NET inside SQL Server SQL Server Access by System.Data + Libraries Consume Data and SQL Server via Powershell + Libraries SQL Server by Entity Framework 6.0 Expose Data as Data Services Dicembre 13th, 2013 Start here Web Apps with ASP.NET MVC 5.0 The only thing I can’t do (?) #sqlsat264
  18. 18. SQL Server Access by System.Data Connected Way The faster way Magic strings Write SQL! Tables/Views/Stored Procedures From the beginning (2002)… …here to stay! Dicembre 13th, 2013 #sqlsat264
  19. 19. SQL Server Access from other data Excel Workbooks, Xml, Json Just Import Data? Libraries libraries libraries For exampleASPOSE.Cells Complete implementation of a Excel object model No dependencies from Office Good for Server Side scenarios And other office tools are the same Dicembre 13th, 2013 #sqlsat264
  20. 20. Pros & Cons Pros Rich data manipulation Speed of coding (imperative way) Cons Speed of execution    Dicembre 13th, 2013 #sqlsat264
  21. 21. SQL Server by Entity Framework 6.0 Programmers love objects Impedance Mismatch (Davide…where are you?) EF 6.0 A step forward Finally, Create/Update/Delete methods mappable on SP! And we can work with ViewModels A modern approach to applications No more «one model for all» Dicembre 13th, 2013 #sqlsat264
  22. 22. Pros & Cons Pros Modeling in a more intuitive way Recover speed of execution with store procs Cons Impedance Mismatch (analisys more importat)    Dicembre 13th, 2013 #sqlsat264
  23. 23. Web Apps with ASP.NET MVC 5.0 Scaffolding! Scaffolding! Scaffolding! Scaffolding! Scaffolding! Scaffolding! Here I can say it! It’s not a good pattern for Enterprise-grade applications… …but sometime is useful No, I’m not speaking about Javascript, just HTML5 (and CSS3) Your apps will be «nice»  Dicembre 13th, 2013 #sqlsat264
  24. 24. Expose Data as Data Services JSON is here to stay Web Services are REST XML is just a Server to Server Scenario BI and Cloud models loves it! Dicembre 13th, 2013 #sqlsat264
  25. 25. Pros & Cons Pros Powerful way to express data More control over execution Json and Xml Cons Impedance Mismatch (analisys more importat)     Dicembre 13th, 2013 #sqlsat264
  26. 26. Consume Data and SQL Server via Powershell Powershell is the new Command Line How many times did you hear it? Don’t be lazy (me too!) Expressive Verbs-Noun Objects  Metadata Pipelining (functional) Rich imperative language Powershell is entirely .NET Extendable with .NET: CmdLets Dicembre 13th, 2013 #sqlsat264
  27. 27. Consume Data and SQL Server with Libraries Why reports only with Reporting Services? Why not a… …word document …excel workbook with graph and pivot …a Powerpoint presentation …a Visio Graph? …Bar codes? Manupulate data for presentation ASPOSE…again I don’t sell ASPOSE… …but I love it! Again: it’s just one of many Dicembre 13th, 2013 #sqlsat264
  28. 28. Consume .NET inside SQL Server Host C# (CLR) code inside SQL Server Stored Procedures UDT Access to «all» .NET libraries Just a little bit of dependencies UNSAFE It’s not a real issue Just create another DB Dicembre 13th, 2013 #sqlsat264
  29. 29. Two other stories from a Developer POV Dicembre 13th, 2013 #sqlsat264
  30. 30. The Cloud is here to stay! Windows Azure is a real opportunity for the .NET Developer I think for ALL developers This year: Scott Guthrie and Mark Russinovick in Azure Team A lot of updates this year! Developer friendly! Dicembre 13th, 2013 #sqlsat264
  31. 31. The tools are no more where to start .NET or C# or ASP.NET are not where to start They are not a pillar or a constraint It’s the consequence of an analysis (what we can call «bounded context» in Domain Driven Design – the right choice is for each context) Is the same for SQL Server developer? I think so ALM is important Dicembre 13th, 2013 #sqlsat264
  32. 32. ALM is important Analysis SCRUM Team Foundation Server See Alessandro Alpi «Put database under source control» session! Dicembre 13th, 2013 #sqlsat264
  33. 33. CONCLUSION Dicembre 13th, 2013 #sqlsat264
  34. 34. There were three guys in front of a pizza… …last month! Live confortable with SQL Server… …but don’t look just inside your garden! If you don’t believe me, just try by yourself: I’m not saying use .NET…. …I’m saying «there is .NET» Technology is good because you can fall in love more times… ...at the same time! Dicembre 13th, 2013 #sqlsat264
  35. 35. #sqlsat264 Thanks! Dicembre 13th, 2013 #sqlsat264
  36. 36. Q&A @marco_parenzan it.linkedin.com/in/marcoparenzan www.facebook.com/parenzan.marco codeisvalue.wordpress.com www.marcoparenzan.it www.slideshare.net/marco.parenzan github.com/marcoparenzan marco [dot] parenzan [at] libero/live [dot] it Dicembre 13th, 2013 #sqlsat264