<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="classOutlineTemplate.xsl"?>
<courses>
	<class>
		<classInfo>
			<classTitle>Dojo Training: Introduction to the Dojo Framework for Ajax</classTitle>
			<softwareUsed>
				<software url="" icon="">Firefox 2 and/or Internet Explorer 6 or later with the Firebug plug-in installed</software>
			</softwareUsed>
			<swVersions>
				<version>2 or later</version>
			</swVersions>
			<levels>
				<level>1</level>
			</levels>
			<duration>
				<hours>7</hours>
				<days>3</days>
			</duration>
			<certification>
				<company url=""></company>
			</certification>
			<courseCode>dojo</courseCode>
			<courseDescription>Our Dojo Training teaches attendees how to build powerful JavaScript Ajax applications using the Dojo Toolkit.</courseDescription>
		</classInfo>
		<hwRequirements>
			
		</hwRequirements>
		<swRequirements>
			<platformRequirements>
			</platformRequirements>
			<requirement>Web development environment of your choice. The environment should support HTML, CSS, and JavaScript development. </requirement>
			<requirement>Some data-driven examples require a web server. Our default is to have attendees install JDK 1.5 or later with Apache Tomcat 5.5 or later. </requirement>
		</swRequirements>
		<preRequisites>
			<preReqClass />
			<preReq>Experience with HTML and JavaScript</preReq>
			<preReq> Prior knowledge of CSS is helpful but not required.</preReq>
		</preRequisites>
		<performanceObjectives>
			<objective>Understand Dojo's feature set and API design</objective>
			<objective>Master use of Dojo Core</objective>
			<objective>Learn how to manage events in the Dojo framework</objective>
			<objective>Use the Dijit module, including built-in widgets and custom widgets</objective>
			<objective>Discover how Dojo can make remote calls to server-side applications</objective>
			<objective>Learn how to debug Dojo applications</objective>
			<objective>Master advanced features of the Dojo framework</objective>
		</performanceObjectives>
		<supplementalMaterials>
			<book/>
			<website/>
		</supplementalMaterials>
		<courseContent>
			<lesson number="1">
				<lessonTitle>Browser Programming Model </lessonTitle>
				<topic>JavaScript Programming</topic>
				<topic>Document Object Model, DOM</topic>
				<topic>Cascading Style Sheets, CSS</topic>
				<topic>XMLHttpRequest Object, XHR</topic>
				<topic>JavaScript Object Notation, JSON</topic>
				<lessonTime/>
			</lesson>

			<lesson number="2">
				<lessonTitle>Overview of Dojo Base</lessonTitle>
				<topic>Namespace and Packaging</topic>
				<topic>Object Oriented Programming</topic>
				<topic>Events and Event Handling</topic>
				<topic>Working with the DOM</topic>
				<lessonTime/>
			</lesson>
			<lesson number="3">		
				<lessonTitle>Overview of Dojo Core</lessonTitle>
				<topic>Importing with dojo.require</topic>
				<topic>Strings, JSON and RegExp</topic>
				<topic>Backbutton and dojo.back</topic>
				<topic>Drag and Drop</topic>
				<topic>Visual Effects</topic>
				<topic>iFrames and dojo.i</topic>
				<lessonTime/>
			</lesson>
			<lesson number="4">
				<lessonTitle>LessonTitle</lessonTitle>
				<topic>topic</topic>
				<topic>topic</topic>
				<topic>topic</topic>
				<lessonTime/>
			</lesson>
			<lesson number="4">
				<lessonTitle>Advanced Events in Dojo </lessonTitle>
				<topic>AOP</topic>
				<topic>Using publish / subscribe</topic>
				<topic>Threads and dojo.deferred</topic>
				<lessonTime/>
			</lesson>
			<lesson number="5">	
				<lessonTitle>Dijit – Dojo Widget Module</lessonTitle>
				<topic>Declarative Programming and the Dojo Parser</topic>
				<topic>Form and Data Validation</topic>
				<topic>Layout Widgets</topic>
				<topic>Specialized Widget</topic>
				<lessonTime/>
			</lesson>
			<lesson number="6">
				<lessonTitle>Dijit – Customizing Widgets</lessonTitle>
				<topic>Styling Widgets</topic>
				<topic>Extending Widgets</topic>
				<topic>Building Your Own Widgets</topic>
				<lessonTime/>
			</lesson>
			<lesson number="7">
				<lessonTitle>Remoting in Dojo</lessonTitle>
				<topic>xhrGet and xhrPost</topic>
				<topic>Direct Web Remoting (DWR)</topic>
				<topic>Server Architecture Issues</topic>
				<lessonTime/>
			</lesson>
			<lesson number="8">
				<lessonTitle>Dojo on the server side</lessonTitle>
				<topic>Datastores</topic>
				<topic>Writing Data Stores</topic>
				<topic>DWR Data Stores</topic>
				<lessonTime/>
			</lesson>
			<lesson number="9">
				<lessonTitle>Debugging Dojo Apps</lessonTitle>
				<topic>Inspecting the DOM</topic>
				<topic>JavaScript Debugging</topic>
				<topic>JavaScript IDEs</topic>
				<topic>Dojo Logging</topic>
				<topic>Dojo Unit Testing with DOH</topic>
				<lessonTime/>
			</lesson>
			<lesson number="10">
				<lessonTitle>Additional Topics</lessonTitle>
				<topic>Dojo Data Grid and client side Caching</topic>
				<topic>Security</topic>
				<topic>Comparison with YUI</topic>
				<topic>Comparison with GWT</topic>
				<topic>Projects Using Dojo</topic>
				<topic>Dojo Offline Storage</topic>
				<lessonTime/>
			</lesson>
			<nextClass url="../../html/advanced.html">DOJO Advanced Topics</nextClass>
		</courseContent>
		<courseware>
			<bookTitle>Dojo: Using the Dojo JavaScript Library to Build Ajax Applications</bookTitle>
			<publisher></publisher>
			<bookNumber/>
			<notes/>
			<author/>
		</courseware>
	</class>
</courses>
