2014.06.25 State of the Web Development 2014

604 views

Published on

Which are pillars of the Web Development? Pillars are useful to understand witch functionalities you have to find in a Development web Stack, like ASP.NET MVC.

Published in: Software, Technology, Design
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
604
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

2014.06.25 State of the Web Development 2014

  1. 1. State of the Web Development Marco Parenzan Edition 2014
  2. 2. Marco Parenzan Formazione & Divulgazione con 1nn0va Formazione & Progettazione con ITS Kennedy Ricerca e Innovazione con Servizi Cgn www.slideshare.net/marco.parenzan marco [dot] parenzan [at] libero/live [dot] it www.innovazionefvg.net Developer e Architect in .NET e Web Cloud (Candidate) Developer Loves functional programming Some videogames for fun
  3. 3. WEB PILLARS
  4. 4. Web is build upon…  Information is Content or Data  HTML to explain Content  JSON to explain Data  CSS3  Content Presentation  JAVASCRIPT  Content and Data Manipulation  HTTP  Content and Data Transport  Client  HW/SW appliance for content and data consuming
  5. 5. Modern Html  Html5 is pure content  Old Html (1-4) is pure presentation; useful content only for humans  Modern Html is just Syntax and Semantic, no more presentation  Html is adorned with qualification (class attributes)
  6. 6. JSON  Modern Data representation  One of the pillars of the Rich Client (Web) Revolution  AJAX  No more XML (unuseful in Web Clients)
  7. 7. Difference between Content and Data  Data is information organized as a name/value containers  Content is information organized as a role/meaning container
  8. 8. When Information is Content?  Think for example about Tables  Information is content when you load table information server side  Page take longer to load  But table is full  Your html page come from a web SITE
  9. 9. When Information is Data?  Think for example about Tables  Information is data when you load table information client side  Faster loading  More responsiveness  But table is initially empty  Your html page come from a web APPLICATION
  10. 10. Google indexing don’t execute AJAX  So you need to model information as HTML and load it server side
  11. 11. Take care of your informations Informations don’t depend on presentation
  12. 12. Html is no (more) free  Writing Html is not a waste of time (it’s not mapping)  And modern web is a polyglot environment  So learn HTML and write it by hand
  13. 13. CSS3  CSS3 gives presentation information to the meaning (expressed by classes)  Cascading is on classes  Not on style attributes  Real role separation between Designer and Developer  LESS & SASS are your new friends  Find which is best for you (not absolute best)  CSS frameworks offer (Bootstrap)
  14. 14. JAVASCRIPT E TYPESCRIPT  Content and Data Manupulation  In the client (browser)  New Opportunities  OOP and DDD  On the Client (Browser)
  15. 15. Javascript Fullstack  Gives Javascript based applications “enterprise class” organization  http://www.smashingmagazine.com/2013/11/21/introduction-to-full-stack-javascript/  Architectural Pattern  View Models  Data Binding  Modularization  AMD  Build systems  Tasks  Compilers/Code Generators
  16. 16. Http, the web protocol  Protocol for transfer of various data formats between server and client.  Plaintext  Hypertext  Json  Images  Video  Sound  HTTP is a stateless protocol  In other words, the current request does not know what has been done in the previous requests.
  17. 17. ReST  Http is no more just Request/Response, GET and POST  REpresentational State Transfer  Url  A URL (Uniform Resource Locator) is used to uniquely identify a resource over the web. URL has the following syntax: protocol://hostname:port/path-and-file-name  Http Verbs  Http is a full Web Services with actions (verbs) on resource  No need for SOAP
  18. 18. Client  A three dimensional problem 1. Information  Content  Data 2. With Tool  Browser  Apps 3. On Device  Desktop  Mobile
  19. 19. HOSTING THE WEB
  20. 20. Legacy Hosting  Where  On Premise  Provider  Features  Tailored on a fixed scenario – sized for maximum capacity
  21. 21. Modern Hosting  Where  On Premise  Cloud  Features  On demand  Self Service  Multi Tenant  Elasticity  Scaling  Availability  Ubiquitous  Flexibility  In one word: quality of service
  22. 22. Microsoft Cloud Initiative  Windows is Microsoft Cloud Platform…  …From Windows Server is for Private (On Premise) Cloud…  …to Azure is for Public Cloud…  …through the Hybrid Cloud  Same code base, same tools, same experience
  23. 23. ON THE WEB WITH ASP.NET
  24. 24. Server: the missing part (up to now )  Web is content and data availability through HTTP protocol  Which tools expose HTTP protocol?
  25. 25. History of Web Server Models  Request (GET) of static content  Request/Response of dynamic content  CGI  ASP  PHP  Designer era (event base)  Web Forms  Structure/Enterprise class models  MVC  Ruby On Rails  ASP.NET MVC
  26. 26. Modern Web Applications with One ASP.NET  Legacy  ASP  Web Forms  Modern  Web Pages/Razor  MVC  Services  Web API  Real Time  SignalR  Apps  Single Page Apps
  27. 27. State of the Web Development Marco Parenzan Edition 2014

×