Building Excellent Internet & Intranet Solutions Dave Remmer Architect Advisor Microsoft Canada
Agenda Avoiding the “new version” headache 5 Key Microsoft Technologies –ASP.NET –JavaScript, AJAX and JQuery –Internet Explorer 8 –Silverlight –Microsoft Office SharePoint Server ALM: patterns, capabilities and testing
The “new version” headache My previous sites & application code don’t work in modern browsers The frameworks I use are advancing so quickly that I can’t keep up My tools are quickly becoming obsolete and I can’t be effective in my role The kinds of capabilities my stakeholders are asking for are difficult or impossible to integrate into my sites
Avoiding the headache Use basic framework controls and namespaces for the core of solutions The.NET framework largely builds on existing framework but has new capabilities that you can use Visual Studio supports multi-targeted framework versions Use a variety of platform technologies in order to enhance site capabilities
AJAX JQuery
ASP.NET Architecture ASP.NET 3.5 –Built in ASP.NET AJAX –Language Integrated Query (LINQ) ASP.NET 2.0 App Services / IIS7 –Forms Authentication –Profile –Role Management –Session State
ASP.NET AJAX Architecture ASP.NET AJAX Server Extensions ASP.NET AJAX Server Controls ASP.NET AJAX Server Controls App Services Bridge Web Services Bridge Server Framework Client Framework and Services Client Script Library Controls, Components Script Core Base Class Library Component Model and UI Framework Browser Compatibility Client Application Services BrowserIntegrationBrowserIntegration ASP.NET 2.0 Application Services Page Framework, Server Controls Page Framework, Server Controls ASP.NET AJAX ASP.NET Pages ASP.NET AJAX ASP.NET Pages Web Services HTML, Script, ASP.NET AJAX Markup HTML, Script, ASP.NET AJAX Markup ServiceProxiesServiceProxies ASP.NET AJAX Server Extensions ASP.NET AJAX Server Controls ASP.NET AJAX Server Controls App Services Bridge Web Services Bridge Client Script Library Controls, Components Script Core Base Class Library Component Model and UI Framework Browser Compatibility Client Application Services ServiceProxiesServiceProxies BrowserIntegrationBrowserIntegration
ASP.NET AJAX is Flexible ASP.NET AJAX Web Forms ASP.NET MVC
jQuery Integration All ASP.NET Ajax Library controls are exposed as jQuery plug-ins automatically: $(“#input1”).watermark( “Enter some text” ); Microsoft provides jQuery support on its AJAX CDN, providing ease of access to the library.
IE=EmulateIE7 Internet Explorer 8 TWO Layout Engines Default Engine
Standards Compliance HTML ACID 2 CSS 2.1 CSS 2.1 compliance DOM Improvements HTML Improvements Acid2 Test compliance CSS 2.1 compliance DOM Improvements HTML Improvements Acid2 Test compliance This means Data URI Support Improved Namespace Support And more This means Data URI Support Improved Namespace Support And more
New Internet Explorer 8 Services Accelerators, Web Slices & Search Providers Accelerators –Provide your services from anywhere on the web Web Slices –Bring pieces of your site directly to the user Search Providers –Provide visual search and search suggestions Create a sticky connection to your user!
cross-browser and out-of-browser, cross-platform, cross-device for building and delivering the next generation of.NET based media experiences and rich interactive applications for the web
DesktopDesktopWebWeb XHTML / ASP.NET JavaScript / AJAX CSS.NET Languages XAML / WPF Windows Media Flexible tools / programming / media Compelling UX on all app categories Connected to data, servers, services Easily Reuse Skills
Key Silverlight Platform Concepts
XAML: Declarative Programming for Windows Markup for Windows –Build applications in simple declarative statements –Can be used for any CLR object hierarchy (not just WPF) Code and content are separate –Streamline collaboration between designers and developers Easy for tools to consume and generate OK LightBlue Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush (Colors.LightBlue); b1.Width = 100; Dim b1 As New Button b1.Content = "OK" b1.Background = New _ SolidColorBrush _ (Colors.LightBlue) b1.Width = 100
SharePoint 2010 Connect & Empower –User Interface –Office Integration –Anywhere Access Cut Costs –Platform Consolidation –Deployment Choice –IT Productivity Agility –Developer Productivity –Data Connectivity –Composite Solutions
SharePoint Designer 2010 SharePoint Designer is for SharePoint artifacts New Tools –BDC Entities –List Schema –Custom Actions –Task/Approval Designer Improved Tools –Workflow Designer –Page Editor
The Sandbox A separate, rights-restricted process where the solution runs Exposes a subset of Microsoft.SharePoint Code Access Security policy limits functionality Site collection solution gallery for deployment Resource usage monitoring and site collection quotas
Visual Studio 2010
ALM Define Test Suite
ALM Manage Test Plans
ALM Test Reporting
Questions ?
Resources Get Guidance and Training Content These are a good start, and remember: Bing is your friend! ASP.NET AJAX JQuery Silverlight Patterns & Practices Channel 9
Resources Update to Visual Studio 2010 and MSDN and ca/products/msdn/default.mspx... Or Bing it! Visual Studio 2010: The all-in-one work environment for coding, modeling, testing, debugging and deploying Ready to build and debug SharePoint 2010 applications with a click of “New Project…” MSDN: The ultimate developer resource with downloads and documentation, software and support, and Azure compute time too!
Resources Go to TechDays It’s our big cross-Canada training conference held in the fall (covering 8 cities this year) Big conference content, but with local speakers and a down-home price of admission (especially if you register early!) Deep dives into Microsoft tools and technology, including ALM scenarios Access to content from the TechDays and TechEd North America conferences Great giveaways An excellent networking opportunity
Resources Go to Other Conferences To find them, remember that Bing is your friend! Microsoft Developer Conferences DevTeach PDC MIX Code Camps Local developer conferences held by user groups and local heroes