Web Development Concepts Using Microsoft Technologies
1. Web Development Concepts Using Microsoft Technologies Hosam Kamel @HosamKamel http://weblogs.asp.net/HosamKamel
2. Senior Application Developer ESRI Northeast Africa Star member at the official ASP.NET technical forums Top answerer 2008,2009 Http://weblogs.asp.net/HosamKamel @HosamKamel GEEK! About the speaker
3. What is ASP.NET? Why Should I Learn ASP.NET? ASP.NET Features How ASP.NET facilitates programmers. What is AJAX? What is ASP.NET MVC? ASP.NET VS. ASP.NET MVC Dynamic Data! Microsoft Web Platform Overview ENWI (Egyptian Next Web Initiative)! Agenda
13. Web Controls ASP.NET web pages (aka web forms) are made up of a number of ASP.NET web controls around 100 controls are provided, grouped into standard, data, validation, navigation, login, AJAX Can drag and drop these from the toolbox, or code them via web form markup or OO code Each control has properties which allow you to configure its appearance and behaviour You can also code your own, or buy extras
14. ASP.NET Page Life Cycle When a page/form is first loaded its markup is parsed and an object created for each control or standard HTML element Each object is initialised and its initial properties are set according to the web form markup Events are called based on the page state and any user interaction with the page via their browser The list/tree of controls is walked and each in turn is asked to render itself (output HTML for the browser)
15. The Three Styles “Visual” drag and drop GUI/Web UI builder setting properties via forms and check boxes “Declarative” entering definitions of controls and properties using an XML based markup language “Programmatic” plain old fashioned (but OO) code allows for more dynamic interactions
16. Benefits of This Approach This event-driven style of development is very similar to modern Windows programming Rich database-driven web applications can be created using the (code-free) “visual” style complex logic can still be coded when needed and the different styles can be mixed Despite the multiple layers of translation, ASP.NET web applications run as fast as Java(EE), and use less code [Petstore benchmark]
17. Why Should I Learn ASP.NET? 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: Search in San Diego alone: .NET – 119 Jobs PHP – 48 Jobs JSP – 35 Jobs ColdFusion – 9 CGI – 6 Jobs 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
18. All in the Family ASP.NET Dynamic Data & AJAX Presentation ASP.NET WebForms ASP.NET MVC ASP.NET Core Core Runtime
19. Recent Developments Recent enhancements include AJAX jQuery Silverlight/Moonlight (Flash competitor) LINQ (Hibernate competitor) MVC (Struts competitor) Dynamic Data (Ruby on Rails competitor) Chart controls LINQ in particular uses new C# language features
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. jQuery
22. LINQ LINQ stands for Language INtegrated Query Adds a query sublanguage to C# and VB.NET Familiar (SQL-like) syntax using the C# language extensions listed above You can teach yourself LINQ using LINQPad* and the Microsoft 101 LINQ samples
23. ASP.NET MVC (Model-View-Controller) More control over your <html/> Intuitive website URLs Client side JavaScript integration Testability and TDD support Not for everyone Manual vs. automatic transmission
25. Microsoft Web Platform Overview Elements of a Web Development Stack Application FrameworkASP.NET Web Server IIS Database SQL Server Development Tool Visual Studio
27. What is the Microsoft Web Platform? http://www.microsoft.com/web
28. Web Platform Installer Makes it simple for anyone using Windows Client or Server to design, develop, discover, deploy and run web applications: Install the latest versions of FREE Microsoft Web Platform tools, web server and extensions, database and frameworks Stay up-to-date and explore what’s new Runs on Windows XP, Windows Vista, Windows Server 2003 and Windows Server 2008, Windows 7, and Windows 2008 R2
29. Web Platform Installer ... including popular ASP.NET and PHP web apps from the community http://www.microsoft.com/web/gallery
31. How does it help me work? IIS7x: Flexible Web server Massive new capabilities ready to download for free ASP.NET: Powerful framework Build applications quickly with Webforms, MVC and AJAX Visual Studio 10: Productive Tools The most productive way to build standards-based Web apps
32. ASP.NET: Powerful framework ASP.NET 4 Webforms improvements, xHTML by default Dynamic Data, URL routing for Webforms Performance, caching extensibility, and more… ASP.NET MVC (v2 is already there) Separation of concerns Test driven development ASP.NET AJAX Controls and the Microsoft AJAX Library Rich, high performance client-side Web applications OSS and community driven, works with any Web app
33. Microsoft Ajax Library Open source and fully supported JavaScript Library that works with both ASP.NET MVC and ASP.NET Web Forms Available from Microsoft Ajax CDN http://ajax.microsoft.com/ajax/beta/0910/Start.js Available for Download http://www.ASP.net/ajax
34. Visual Studio 10: Productive Tools Powerful new Editor Code optimized, multi-monitor, window docking… Enhanced JavaScript support Even more powerful snippets for HTML, JavaScript, code… Built-in config transformation, package and deployment Config transformation per build target Package Web application for deployment MSBuild integration Try it today!
40. Connect with an ecosystem of partnersBusiness Opportunities After 3 years: $999 / year if you want to continue with all the software… …or$199/year for 1 license of Windows Web Server & SQL Server