Course 10958: Programming Fundamentals of Web Applications
July 26, 2013
About this course
Audience profileThis five-day instructor-led course provides the knowledge and skills to develop web applications by using Microsoft Visual Studio and WebMatrix 2.The course introduces the Microsoft web stack and shows how to use WebMatrix 2 to develop web applications. The course will help students understand how start with basic web development concepts, and how to use existing applications from the Application Gallery. The course will describe basic web development, including CSS, plug-ins, scripting, basic data access, and application hosting. The course will also describe how to use Windows Azure for application hosting, and how to move beyond WebMatrix 2 into Visual Studio.At course completionThis course is intended for web developers who are beginners and have some knowledge of HTML. These web developers create sites for a range of different customer and companies, often by observing and re-purposing existing HTML pages, styles, and scripts. They work primarily with static webpages and in-line formatting. They do not often work in a team and use an ISV to host most of their customers’ sites.Typically, these web developers:
After completing this course, students will be able to:
- Create a website for a small company or voluntary organization.
- Add multiple static webpages to a website.
- Describe the components of Microsoft web technologies that developers can use to host websites, host data, run code, and develop code.
- Describe how a website is developed, including the planning, development, testing, iteration and release phases and how to use WebMatrix 2 in each phase.
- Create a website by using WebMatrix 2 and add dynamic webpages to enable user interaction.
- Describe how to store data in a database and display it on a WebMatrix 2 site to create a dynamic web application.
- Integrate images, audio files, video files, and other media into a web application for different browsers.
- Apply a consistent visual style and user-friendly navigation hierarchy to a website.
- Describe possible locations for hosting a production website and deploy a completed website to a chosen hosting provider.
- Describe the common sources of website errors and use WebMatrix 2 tools and coding techniques to diagnose problems and correct code.
- Integrate information supplied from web services, data feeds, RESTful services, and other sources into a web application.
- Browse the packages available in the NuGet tool, select a package that matches a functional requirement, add it to a web application, and write code that uses the features of the package.
- Ensure a website is secure against malicious attacks and identify users before granting them access to sensitive content.
- Describe how client-side coding techniques accelerate responses to users and reduce network traffic for a website, and use common client-side coding techniques.
- Analyze the user traffic on a public website and optimize the site to appear close to the top of search engine results.
- Create a fully functional website by beginning with an application from the WebMatrix 2 application gallery and adding features to meet unusual or unique customer requirements.
- Describe the features of Visual Studio and ASP.NET Web Forms that enable developers to create more powerful web applications.
- Course details
Course OutlineModule 1: Overview of Microsoft Web TechnologiesThe goal of this module is to provide an overview of web technologies provided by Microsoft for creating and hosting web applications. These web technologies include IIS, Windows Azure, SQL Server, SQL Database, ASP.NET, WebMatrix 2, and Visual Studio. After completing this module, students will have a high-level understanding of each technology and how it fits into the overall web stack, but they may not be able to provide detailed information.Lessons
- Introduction to Web Fundamentals
- Introduction to the Microsoft Web Stack
- Introduction to the Open Source Application Gallery
Module 2: Exploring WebMatrix 2The goal of this module is to encourage students to adopt modern best practices in the way they organize a web application project. For example, they should understand the importance of planning an application in full, before they write any code. In addition, this module describes the high-level features of WebMatrix 2.LessonsAfter completing this module, students will be able to:
- Getting Started with Windows Azure
- Creating a Website Based on an Application from the Gallery
- describe the components of Microsoft web technologies that developers can use to host websites, host data, execute code, and develop code.
- The Project Life Cycle
- Introduction to Microsoft WebMatrix 2
Module 3: Building Simple Websites in WebMatrix 2The goal of this module is to show the students how to begin creating a simple website in WebMatrix 2 and how to populate it with webpages that use the Razor view engine to render pages.LessonsAfter completing this module, students will be able to:
- Installing WebMatrix 2
- Editing a Site in WebMatrix
- describe how a website is developed, including the planning, development, testing, iteration, and release phases; and use WebMatrix 2 in each phase.
- Building Webpages in WebMatrix 2
- Using Razor Syntax to Build Dynamic Pages
Module 4: Building Data-Driven Websites in WebMatrix 2The goal of this module is to introduce the students to the advantages of using a database to persist any data you may want to display on your website. The module introduces simple database concepts such as primary keys and data types. It also teaches how to add databases in WebMatrix 2 by using SQL Compact edition. Following this, the module shows how to add code to a Razor view to display the data that is stored in the SQL Compact database.LessonsAfter completing this module, students will be able to:
- Creating a WebMatrix 2 Site
- Adding Razor Views to a Site
- Validating User Input
- create a site website in WebMatrix 2 and add dynamic web pages to it that interact with the user.
- Introduction to Databases
- Creating a Database in WebMatrix 2
- Displaying Data
Module 5: Adding Rich Content to WebMatrix 2 WebsitesThe goal of this module is to describe how to build a compelling website by including media content. The students will learn how to display audio, video, and images both by using HTML5 and by using earlier standards. In the lab, images will be retrieved from a database and videos will be retrieved from a website folder.LessonsAfter completing this module, students will be able to:
- Adding a Database and Defining Data
- Creating an Offer Display
- describe how to store data in a database and display it on a WebMatrix 2 site to create a dynamic web application.
- Adding Media Content
- Using HTML5 in a Website
Module 6: Designing the WebMatrix 2 WebsiteAfter completing this module, students will be able to:
- Adding Graphics to the Offers Display
- Rendering Video Content with HTML5
The goal of this module is to describe how professional developers apply branding, graphic design, and a consistent layout to a website. This is essential to create a good impression for site visitors and to attract them back for return visits. The module also discusses the importance of a clear navigation structure that enables visitors to locate the page they need rapidly.Lessons
- integrate images, audio files, video files, and other media into a web application for different browsers.
- Structuring a Website
- Applying Template Views
- Applying Styles to a Website
- Adapting a Site for Mobile Browsers
Module 7: Deploying a WebMatrix 2 Web ApplicationsThe goal of this module is to describe how a website is hosted for customer-facing purposes. The module discusses IIS web servers running on client premises and at ISVs and in single and multi-server farms. Windows Azure is also covered as a website host. The location data is stored for a production site is also considered. In this context, SQL Server and SQL Database are discussed. The students are then told about WebMatrix 2 Remote tools, which can ensure synchronization between the development and production versions of a site.LessonsAfter completing this module, students will be able to:
- Creating a Template View
- Adding Navigation Controls
- Adding Styles to a Website
- Adapting to Mobile Browsers
- apply a consistent look and feel and an easy-to-use navigation hierarchy to a website.
- Hosting Web Applications
- Hosting Databases
- Deploying to your Chosen Locations
Module 8: Troubleshooting WebMatrix 2 WebsitesThe goal of this module is to equip students with techniques they can use for diagnosis and correction when exceptions and web error messages appear in their site. The tools covered include the developer tools in Internet Explorer and the Error List and Request tools in WebMatrix 2. Students also see how to configure their site to display a custom error page to site visitors, with a friendly, branded message.LessonsAfter completing this module, students will be able to:
- Creating a Web Application in Windows Azure
- Deploying a Web Application to Windows Azure
- Making Changes to a Published Web Application
- describe possible locations for hosting a production website and deploy a completed website to a chosen hosting provider.
- Sources of Errors
- Using Internet Explorer Developer Tools
- Troubleshooting Problems
Module 9: Consuming Services and Data from the WebAfter completing this module, students will be able to:
- Diagnosing Incorrect CSS Styles
- Diagnosing Slow Page Load Times
- Configuring Custom Error Messages
The goal of this module is to describe the many services available on the web that provide data in different formats, which may be of use to your web application. This module focuses on writing code that calls such services, and not on reusing open source components that call such services. Students will see example web services, data sets from the Windows Azure Marketplace, and oData feeds. They will learn how to reuse such data and assemble it into mash-ups.Lessons
- describe the common sources of website errors and use WebMatrix 2 tools and coding techniques to diagnose problems and correct code.
- Calling Web Services from a Web Application
- Public Data Sources
Module 10: Enriching a WebMatrix 2 Website by Using Open Source ComponentsThe goal of this module is to show the students that many highly functional open source packages are available within WebMatrix 2 through the NuGet tool. Developers can add, adapt, and use these packages in their application to implement advanced functionality without coding it from scratch. This approach can hugely accelerate the development of a web project.LessonsAfter completing this module, students will be able to:
- Building a Bing Maps Display
- Building a Top Products Display
- integrate information supplied from web Services, data feeds, RESTful services and other sources into a web application.
- Overview of Open Source Packages in NuGet
- Browsing, Installing, and Using Packages
Module 11: Securing a WebMatrix 2 WebsiteAfter completing this module, students will be able to:
- Adding Social Media Features
- Controlling the Image Sizes
The goal of this module is to ensure that students fully understand common techniques an attacker might use to break a website and how to protect sites against such attacks. The module also describes how websites can authenticate a user to determine if they should receive a higher level of access to content. Students will learn how to enable users to manage their own passwords and how to create multiple user roles.Lessons
- browse the packages available in the NuGet tool, select a package that matches a functional requirement, add it to a web application, and write code that utilizes the features of the package.
- Developing Websites That Resist Attack
- Controlling Access to a Website
- Working with Roles and Memberships
- Adding Authentication to the Website
- Restricting Access to Webpages
- Providing Membership Services to Users
- Encrypting Communications for Sensitive Data
- ensure a website is secure against malicious attacks and identifies users before granting them access to sensitive content.
- Why Use Client-Side Scripts?
- Using AJAX and Partial Page Updates
- The jQuery Script Libraries
- Optimizing the Caches to Improve Performance
Module 13: Driving Traffic to a WebMatrix 2 WebsiteAfter completing this module, students will be able to:
- Coding the Partial Page Updates
- Using the jScript Library to Animate a Page
The goal of this module is to equip the students with techniques to increase the number of visitors who access a published site. The module begins by discussing how to analyze and understand who visits your site, when they visit, and what pages interest them. The behavior of search engine web bots is discussed and students learn how to ensure that their site is fully crawled and close to the top of search engine results. Finally, locations at which you can advertise your sites are discussed.Lessons
- understand how client-side coding techniques accelerate responses to users and reduce network traffic for a website and use common client-side coding techniques.
- Growing a Website
- Analyzing a WebMatrix 2 Website
- Optimizing a WebMatrix 2 Site for Search Engines
- Marketing a Website
Module 14: Customizing an Application from the WebMatrix 2 GalleryAfter completing this module, students will be able to:
- Optimizing Search Engine Result Position
The goal of this module is to show students that they need not rule out an application from the WebMatrix 2 gallery because it does not satisfy all the requirements a customer specifies. Instead, a developer can use an application as a starting point that meets a majority of customer requirements. Any gaps can be filled by adding extra pages and other custom features to the application.Lessons
- analyze the user traffic visiting a public website and optimize the site to appear close to the top of search engine results.
- Exploring the Application Gallery
- Modifying an Existing Application
Module 15: Transitioning from WebMatrix 2 to Visual StudioAfter completing this module, students will be able to:
- Creating a Site Based on an Application from the Gallery
- Integrating a Custom Page with an Application Theming Engine
The goal of this module is to describe to the students why professional developers use Visual Studio as their principal Integrated Development Environment (IDE). Students will see the advanced features of the ASP.NET Web Forms programming model, which requires Visual Studio, and also see some details of ASP.NET MVC. Students also see the advanced debugging tools Visual Studio includes and understand how these accelerate code development, testing and troubleshooting. They will see how to add Web Forms pages into existing ASP.NET applications.Lessons
- create a fully functional website by beginning with an application from the WebMatrix 2 application gallery and adding features to meet unusual or unique customer requirements.
- Developing Websites in Visual Studio
- Moving Between WebMatrix 2 and Visual Studio
After completing this module, students will be able to:
- Editing a WebMatrix 2 Web Application in Visual Studio
- Displaying and Editing Data in a Web Forms Page
- Using the Visual Studio Debugging Tools
- describe the features of Visual Studio and ASP.NET Web Forms that enable developers to create more powerful web applications.
Before attending this course, students must have:
- Knowledge of HTML or DHTML, including:
- Programming experience including the following concepts:
- Declaring variables
- Using loops
- Using conditional statements
Looking for training resources, events and advice from peers? Join the Microsoft Training and Certification Community.
Preparing for an exam now? Find your Microsoft Certification Study Group.
Talk to us on these social networks: