.NET Development for SQL Server Developer - Sql Saturday #264 Ancona
-
Upload
marco-parenzan -
Category
Technology
-
view
831 -
download
3
description
Transcript of .NET Development for SQL Server Developer - Sql Saturday #264 Ancona
#sqlsat257#sqlsatverona#sqlsat264
.NET Development for SQL Server Developer
Marco Parenzan
1nn0vaServizi CGN
#sqlsat264Dicembre 13th, 2013
Sponsors & Media Partners
#sqlsat264Dicembre 13th, 2013
Organizers
#sqlsat264Dicembre 13th, 2013
About meFormazione & Innovazione con Servizi CGNFormazione & Divulgazione con 1nn0va
@marco_parenzanit.linkedin.com/in/marcoparenzanwww.facebook.com/parenzan.marcocodeisvalue.wordpress.comwww.marcoparenzan.itwww.slideshare.net/marco.parenzangithub.com/marcoparenzanmarco [dot] parenzan [at] libero/live [dot] it
(Tentative of) Cloud DeveloperDeveloper e Architect…in .NET?
#sqlsat264Dicembre 13th, 2013
Agenda
I’m not alone...:).NET state of the artA story from a SQL Server Developer
Create a DB in a Developer wayTwo other stories
#sqlsat264Dicembre 13th, 2013
From Alessandro and Gian Maria session...
There can be more Developer life in your Sql life
ALM (Unit) Testing
DB vs. Codice Domain, Code
#sqlsat264Dicembre 13th, 2013
.NET State of the Art
Mature environment 2002+ 8 versions Consistent
(Server side) pervasive environmentDevices, Web (HTML5/CSS3/Javascript) are here to stayPossibility of a scale-out model
Data services ASP.NET .NET/WCF
#sqlsat264Dicembre 13th, 2013
C# State of the Art
Mature and powerful and expressive languageDeclarative approach is in general correct
But it’s not (always) confortableImperative 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
#sqlsat264Dicembre 13th, 2013
.NET: where we are
.NET 4.5.1C# 5.0Visual Studio 2013ASP.NET (MVC) 5.0: one ASP.NETEntity Framework 6.0Team 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
#sqlsat264Dicembre 13th, 2013
Many good «forgotten» tools
Powershell 3.0SQL Server Data ToolsWindows Azure
#sqlsat264Dicembre 13th, 2013
Many good «third party» tools
ASPOSE.Total 8.5NoSQL
Raven DB
#sqlsat264Dicembre 13th, 2013
A story from a SQLServer Developer
#sqlsat264Dicembre 13th, 2013
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
#sqlsat264Dicembre 13th, 2013
Create a DB in a Developer way
Remembering #sqlsat176 http://www.slideshare.net/marco.parenzan/sql-server-data-tools-15242283 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 basedDifferential UpdatesAll aspects for SQL Server Database developments
Not administration Just Model Also SQL CLR
#sqlsat264Dicembre 13th, 2013
I need to import data
I need to handle data
I need to edit data
I need to share the
data
I need to admin data
I need to do it «@ home»
A story from a SQLServer Developer: needs
Start here
The only thing I can’t do (?)
#sqlsat264Dicembre 13th, 2013
Import Data/ETL
Stored Procedures
????Access???
Export Data/ETL
Management Studio + SQL
@home
A story from a SQLServer Developer: SQL solutions
Start here
No way!
#sqlsat264Dicembre 13th, 2013
SQL Server Access by
System.Data+ Libraries
SQL Server by Entity
Framework 6.0
Web Apps with ASP.NET MVC
5.0
Expose Data as Data Services
Consume Data and SQL
Server via Powershell+ Libraries
Consume .NET inside SQL
Server
A story from a SQLServer Developer: solutions
Start here
The only thing I can’t do (?)
#sqlsat264Dicembre 13th, 2013
SQL Server Access by System.Data
Connected WayThe faster wayMagic strings
Write SQL! Tables/Views/Stored Procedures
From the beginning (2002)… …here to stay!
#sqlsat264Dicembre 13th, 2013
SQL Server Access from other data
Excel Workbooks, Xml, Json Just Import Data?
Libraries libraries librariesFor 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
#sqlsat264Dicembre 13th, 2013
Pros & Cons
Pros Rich data manipulation Speed of coding (imperative way)
Cons Speed of execution
#sqlsat264Dicembre 13th, 2013
SQL Server by Entity Framework 6.0
Programmers love objectsImpedance 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»
#sqlsat264Dicembre 13th, 2013
Pros & Cons
Pros Modeling in a more intuitive way Recover speed of execution with store procs
Cons Impedance Mismatch (analisys more
importat)
#sqlsat264Dicembre 13th, 2013
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 usefulNo, I’m not speaking about Javascript, just HTML5 (and CSS3)
Your apps will be «nice»
#sqlsat264Dicembre 13th, 2013
Expose Data as Data Services
JSON is here to stayWeb Services are REST
XML is just a Server to Server ScenarioBI and Cloud models loves it!
#sqlsat264Dicembre 13th, 2013
Pros & Cons
Pros Powerful way to express data More control over execution Json and Xml
Cons Impedance Mismatch (analisys more
importat)
#sqlsat264Dicembre 13th, 2013
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
#sqlsat264Dicembre 13th, 2013
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 presentationASPOSE…again
I don’t sell ASPOSE… …but I love it!
Again: it’s just one of many
#sqlsat264Dicembre 13th, 2013
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
#sqlsat264Dicembre 13th, 2013
Two other storiesfrom a Developer POV
#sqlsat264Dicembre 13th, 2013
The Cloud is here to stay!
Windows Azure is a real opportunity for the .NET Developer
I think for ALL developersThis year:
Scott Guthrie and Mark Russinovick in Azure Team A lot of updates this year! Developer friendly!
#sqlsat264Dicembre 13th, 2013
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
#sqlsat264Dicembre 13th, 2013
ALM is important
AnalysisSCRUMTeam Foundation ServerSee Alessandro Alpi «Put database under source control» session!
#sqlsat264Dicembre 13th, 2013
CONCLUSION
#sqlsat264Dicembre 13th, 2013
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!
#sqlsat264Dicembre 13th, 2013
Thanks!
#sqlsat264
#sqlsat264Dicembre 13th, 2013
Q&A
@marco_parenzanit.linkedin.com/in/marcoparenzanwww.facebook.com/parenzan.marcocodeisvalue.wordpress.comwww.marcoparenzan.itwww.slideshare.net/marco.parenzangithub.com/marcoparenzanmarco [dot] parenzan [at] libero/live [dot] it