Web development concepts using microsoft technologies


Published on

My presentation at FCI Ain Shams COMPASS

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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

No notes for slide

Web development concepts using microsoft technologies

  1. 1. Web Development Concepts Using Microsoft Technologies<br />Hosam Kamel<br />@HosamKamel<br />http://weblogs.asp.net/HosamKamel<br />
  2. 2. Senior Application Developer<br />ESRI Northeast Africa<br />Star member at the official ASP.NET technical forums<br />Top answerer 2008,2009<br />Http://weblogs.asp.net/HosamKamel<br />@HosamKamel<br />GEEK!<br />About the speaker<br />
  3. 3. What is ASP.NET?<br />Why Should I Learn ASP.NET?<br />ASP.NET Features <br />How ASP.NET facilitates programmers.<br />What is AJAX?<br />What is ASP.NET MVC?<br />ASP.NET VS. ASP.NET MVC<br />Dynamic Data!<br />Microsoft Web Platform Overview<br />ENWI (Egyptian Next Web Initiative)! <br />Agenda<br />
  4. 4. <ul><li>A framework for web applications
  5. 5. framework = library + skeleton main program
  6. 6. Typically used together with Visual Studio
  7. 7. or Visual Web Developer Express Edition (free)
  8. 8. Without these, web development is difficult:
  9. 9. multi-skilled (text & graphical content, code)
  10. 10. multi-language
  11. 11. XHTML, CSS, JavaScript, OOPL, XML, SQL
  12. 12. increasing demands on user experience</li></ul>What is ASP.NET?<br />
  13. 13. Web Controls<br />ASP.NET web pages (aka web forms) are made up of a number of ASP.NET web controls<br />around 100 controls are provided, grouped into<br />standard, data, validation, navigation, login, AJAX<br />Can drag and drop these from the toolbox, or code them via web form markup or OO code<br />Each control has properties which allow you to configure its appearance and behaviour<br />You can also code your own, or buy extras<br />
  14. 14. ASP.NET Page Life Cycle<br />When a page/form is first loaded its markup is parsed and an object created for each control or standard HTML element<br />Each object is initialised and its initial properties are set according to the web form markup<br />Events are called based on the page state and any user interaction with the page via their browser<br />The list/tree of controls is walked and each in turn is asked to render itself (output HTML for the browser)<br />
  15. 15. The Three Styles<br />“Visual”<br />drag and drop GUI/Web UI builder<br />setting properties via forms and check boxes<br />“Declarative”<br />entering definitions of controls and properties<br />using an XML based markup language<br />“Programmatic”<br />plain old fashioned (but OO) code<br />allows for more dynamic interactions<br />
  16. 16. Benefits of This Approach<br />This event-driven style of development is very similar to modern Windows programming<br />Rich database-driven web applications can be created using the (code-free) “visual” style<br />complex logic can still be coded when needed<br />and the different styles can be mixed<br />Despite the multiple layers of translation, ASP.NET web applications run as fast as Java(EE), and use less code [Petstore benchmark]<br />
  17. 17. Why Should I Learn ASP.NET?<br />Aside from being more powerful, robust, flexible, and feature-rich than its competitors, the numbers speak for themselves. Today's Monster.com numbers look like this:<br />Search in San Diego alone:<br />.NET – 119 Jobs<br />PHP – 48 Jobs<br />JSP – 35 Jobs<br />ColdFusion – 9<br />CGI – 6 Jobs<br />That’s the beauty of .NET. Not only are you tied to ASP.NET, but because you’re essentially learning a full blown programming language anyway, you can explore opportunities in Windows, Mobile, TabletPC, Component, and Web Services development. SharePoint & CRM <br />
  18. 18. All in the Family<br />ASP.NET<br />Dynamic Data <br />& AJAX<br />Presentation<br />ASP.NET<br />WebForms<br />ASP.NET<br />MVC<br />ASP.NET<br />Core<br />Core <br />Runtime<br />
  19. 19. Recent Developments<br />Recent enhancements include<br />AJAX<br />jQuery<br />Silverlight/Moonlight (Flash competitor)<br />LINQ (Hibernate competitor)<br />MVC (Struts competitor)<br />Dynamic Data (Ruby on Rails competitor)<br />Chart controls<br />LINQ in particular uses new C# language features<br />
  20. 20. AJAX<br />
  21. 21. jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.<br />jQuery<br />
  22. 22. LINQ<br />LINQ stands for Language INtegrated Query<br />Adds a query sublanguage to C# and VB.NET<br />Familiar (SQL-like) syntax<br />using the C# language extensions listed above<br />You can teach yourself LINQ using LINQPad*<br />and the Microsoft 101 LINQ samples<br />
  23. 23. ASP.NET MVC (Model-View-Controller)<br />More control over your <html/><br />Intuitive website URLs<br />Client side JavaScript integration<br />Testability and TDD support<br />Not for everyone<br />Manual vs. automatic transmission<br />
  24. 24. Code<br />File->New Project<br />
  25. 25. Microsoft Web Platform Overview<br />Elements of a Web Development Stack<br />Application FrameworkASP.NET<br />Web Server IIS<br />Database SQL Server<br />Development Tool Visual Studio<br />
  26. 26. How do I get it?<br />Download?<br />
  27. 27. What is the Microsoft Web Platform?<br />http://www.microsoft.com/web<br />
  28. 28. Web Platform Installer<br />Makes it simple for anyone using Windows Client or Server to design, develop, discover, deploy and run web applications:<br />Install the latest versions of FREE Microsoft Web Platform tools, web server and extensions, database and frameworks<br />Stay up-to-date and explore what’s new<br />Runs on Windows XP, Windows Vista, Windows Server 2003 and Windows Server 2008, Windows 7, and Windows 2008 R2<br />
  29. 29. Web Platform Installer<br />... including popular ASP.NET and PHP web apps from the community<br />http://www.microsoft.com/web/gallery<br />
  30. 30. Web Platform InstallerWeb App Gallery<br />
  31. 31. How does it help me work?<br />IIS7x: Flexible Web server<br />Massive new capabilities ready to download for free<br />ASP.NET: Powerful framework<br />Build applications quickly with Webforms, MVC and AJAX<br />Visual Studio 10: Productive Tools<br />The most productive way to build standards-based Web apps<br />
  32. 32. ASP.NET: Powerful framework<br />ASP.NET 4<br />Webforms improvements, xHTML by default<br />Dynamic Data, URL routing for Webforms<br />Performance, caching extensibility, and more…<br />ASP.NET MVC (v2 is already there)<br />Separation of concerns<br />Test driven development<br />ASP.NET AJAX Controls and the Microsoft AJAX Library<br />Rich, high performance client-side Web applications<br />OSS and community driven, works with any Web app<br />
  33. 33. Microsoft Ajax Library<br />Open source and fully supported JavaScript Library that works with both ASP.NET MVC and ASP.NET Web Forms<br />Available from Microsoft Ajax CDN<br />http://ajax.microsoft.com/ajax/beta/0910/Start.js<br />Available for Download<br />http://www.ASP.net/ajax<br />
  34. 34. Visual Studio 10: Productive Tools<br />Powerful new Editor<br />Code optimized, multi-monitor, window docking…<br />Enhanced JavaScript support<br />Even more powerful snippets for HTML, JavaScript, code…<br />Built-in config transformation, package and deployment<br />Config transformation per build target<br />Package Web application for deployment<br />MSBuild integration<br />Try it today!<br />
  35. 35. Welcome to WebsiteSpark!<br />
  36. 36. How much does it cost?<br /><ul><li>Visual Studio Professional Edition, Expression Web and Studio
  37. 37. Windows Web Server 2008, SQL Server Web edition
  38. 38. Premium Web control panel</li></ul>Software at no cost*<br /><ul><li>Professional support from Microsoft
  39. 39. Community support from network and hosting partners</li></ul>Support & Training <br /><ul><li>Promotion to customers
  40. 40. Connect with an ecosystem of partners</li></ul>Business Opportunities <br />After 3 years: $999 / year if you want to continue with all the software… <br />…or$199/year for 1 license of Windows Web Server & SQL Server<br />
  41. 41. ENWI (Egyptian Next Web Initiative)<br />
  42. 42. WHERE TO GO!!!<br />
  43. 43. ASP.NET Website<br />http://www.asp.net<br />http://www.asp.net/get-started/<br />
  44. 44. Questions?<br />
  45. 45. Thank You!<br />@HosamKamel<br />Hosam.Kamel@esrinea.com<br />