| Course Length - 5 Days | | | | Course Description Web 2.0 holds tremendous potential for enterprises of all shapes and sizes. The network has evolved from being a mere conduit for exchanging files, into a full-fledged ecosystem that is capable of facilitating collaboration and innovation. This five-day bootcamp equips application designers, architects, and developers to design and implement Web 2.0 solutions incorporating progressive Internet technologies such as wikis, blogs, data feeds, podcasting, instant messaging, and social networking into the enterprise intranet (“Enterprise 2.0”). Broadcasting, collaboration and social networking technologies will be explored along with the subject of Rich Internet Applications (RIA). Attention will also be given to the trend around information “mash-ups”, leveraging data feeds through RSS/ATOM, and interacting with a service oriented enterprise through SOAP and/or REST. Finally, attention will be given to best practices regarding Web 2.0 system design. | | | You Will Learn How To: - Build practical skills through hands-on AJAX and Web 2.0 exercises
- Explore the models, techniques, toolkits, and best practices available for Web 2.0
- Gain an understanding of Web 2.0 and how its interaction model differs from traditional Web communication
- Discuss the potential for leveraging Web 2.0 technologies within the enterprise (i.e. Enterprise 2.0)
| | | Course Prerequisites Hands-on experience with HTML and Javascript required. Exposure to XML and CSS preferred, but not required. | | | Who Should Attend? Web application architects, Web application developers, User interface designers, and Web application quality assurance personnel.
| | | Course Outline Introduction to Web 2.0- Web 2.0 Should I upgrade?
- Three key elements
- & <span>Web 2.0 Innovations - Collaboration
- Instructor Demo
Introduction to AJAX- What is AJAX?
- A Simple Example
- The Old Way
- The AJAX Way
- Two Key Aspects of AJAX
- What are the Advantages of the AJAX Approach?
- AJAX Technologies
- The Basic AJAX API
- Creating the XMLHttpRequest Object
- The XMLHttpRequest Object Basics
- Complete Example
- The Timeline
XHTML- What is XHTML?
- The DTD and MIME Type
- The Basic Syntax
- Embedding XHTML in a XML Document
- Differences With HTML 4
- Embedding Scripts and Styles
- The Standard Attributes
- The <div> & <span> Elements
JavaScript DOM API- What is DOM?
- Element Hierarchy
- DOM Standardization
- The document Object
- Nodes and Elements
- The Element Object
- Element Event Handlers
- The window Object
- The Frame Object
- The History Object
AJAX API Details- The Request Object
- Creating the Request Object
- The Request Object
- Simple GET Example
- Making a POST Request
- Making Concurrent Requests
- Memory Leak With Inner Function
- A POST Utility Function
- Mozilla XmlHttpRequest Extensions
- IE Microsoft.XMLHTTP Extensions
- Ajax Caching
- Control Cache Duration
- Advanced Cache Control
Advanced DOM- The Event Object
- Event Bubbling
- Creating and Initializing an Event
- Dispatching an Event
- Example
- Handling Events
- Registering Event Handler
- Best Practice
- Working With Styles
- Example
- The Style Object
- Setting Style of an Element
- Working With Style Sheets
- DOM HTML API
- Table DOM Objects
- The HTMLTableElement Object
- The HTMLTableRowElement Object
- The HTMLTableCellElement Object
- Example of Table DOM API
- The Form Element Objects
- The HTMLFormElement Object
- The HTMLInputElement Object
- The HTMLSelectElement Object
- The HTMLOptionElement Element
Communication With Server - Basic- Application Layer Protocol
- Plain HTML Snippet
- XML Document
- XML Document Server Side
- Example: Build DOM Document in Java
- Example: Write DOM Document in HTTP Reply
- Example: The Servlet
- C#: Create a XML DOM Document
- C#: Output XML in HTTP Reply
- XML Document - Client Side
- DOM API Summary
- DOM API The Document Object
- DOM API The Element Object
- Body Text of an Element
- Setting Body Text
- Displaying Body Text
- Using XML As Request Data
- Creating a New DOM Document
- Serializing DOM Document as Text
- Posting an XML Document
- Processing the Posted XML From a Servlet
Communication With Server - JSON- JavaScript Object Notation (JSON)
- JSON Syntax
- How Does JSON Based Communication Work?
- How JSON Based Communication Work?
- JSON: Server Side
- JSON: Client Side
- Working With Arrays
- Advanced JSONObject Methods
- Advanced JSONArray Methods
Direct Web Remoting (DWR)- How DWR Works
- DWR: The Server Side
- Configuring the Server Side
- The dwr.xml File
- DWR: The Client Side
- Unit Testing
- Accessing Servlet API Objects
- Error Handling
The Dojo Toolkit- Simple Example Tab Widget
- How Does DOJO Work?
- Importing Packages
- Widget Basics
- Widget Layout Example
- The Two byId() Methods
- Widget Properties & Events
- Common Features of Widgets
- Form Input Widgets
- The Button Widget
- The Checkbox Widget
- The ComboBox Widget
- The FilteringSelect Widget
- The DateTextBox Widget
- Layout Widgets
- Other Common GUI Widgets
- Creating Widget Instances Programmatically
- Creating Widgets Programmatically
Dojo Event System- Difference from DOM Event Handling
- JavaScript Function Call Event
- Writing a JavaScript Class
- Writing an Event Handler Class
- Attaching the Event Handler
- Handling Widget Event
- More on Handler Attachment
- The Dojo Event Object
- Window Load/Unload Event
- Publish Subscribe System
- Writing a Publisher
- Writing a Subscriber
- Publishing the Message
Debugging Dojo Applications- Logging in Dojo
- Using Debug
- Log Severities
- Mozilla Debugging Tools
- IE Debugging Tools
- Other Tools
- Summary
- Review Questions
- Review Answers
Web Syndication- What is Web Syndication?
- Syndication Example
- Syndication Client
- Web Syndication Benefits
- Syndication Examples
- Feed Formatting
- RSS
- RSS Example
- Atom
- Atom Example
- Feed Serving and Reading Feeds
- RDF
- RDF Example
- RDF Uses
Introduction to Web Services- A Conceptual Look at Services
- Defining Services
- Service Communication Analogy
- Three Key Service Questions
- Connecting the Dots
- SOA Runtime Implementation
- What is a Web Service?
- Enterprise Assets as Services
- Typical Development Workflow
- Advantages of Web Services
- Web Service Business Models
- Example: Internal System Integration
- Example: Business Process Externalization
- Binding via SOAP
- SOAP in Protocol Stack
- SOAP Structure
- SOAP Message Architecture
- Applying SOAP
- Interface via WSDL
- WSDL Structure
- Applying WSDL
- Locating a Service
- UDDI Overview
- UDDI Terminology
- UDDI Structure
- Applying UDDI
- WS-I Overview
- WS-I Deliverables
Rich Internet Applications- Key Characteristics
- Instructor Demo
- RIA Platforms
- RIA Architecture
- RIA Architecture Details
- RIA Benefits
- RIA Drawbacks
- RIA Drawbacks (cont d)
- RIA Best Practices
Mashups- Example ChicagoCrime.org
- Mashup Genres
- Key Components
- Key Component Details
- Retrieving Data
- Data Assembly Details
- Data Format Options
- Data Format Options (cont d)
- Instructor Demo
- Enterprise 2.0 Mashups
Push Technology- Push Technology
- Traditional vs. Push Technology
- Problems With Traditional Pull
- Example Use Of Push
- The Comet Pattern
- Comet Details
- Comet Implementations
- Scalability/Reliability Issues
- Juggernaut for Ruby
- Juggernaut for Ruby
Offline Applications- Rich Internet Applications
- Server Dependency
- Offline Applications
- Google Gears
- Google Gears Architecture
- Dojo Offline
- Adobe AIR
Collaboration in Web 2.0- Introducing Collaboration
- Collaboration Benefits
- Information Availability
- Early Internet Collaboration
- Modern Internet Collaboration
- Internet Collaboration Limitations
- Web 2.0 Collaboration
- Web 2.0 Collab Principles
- Blog
- More Blog
- Example Blog
- Creating a Blog
- Blog Setup Step One
- Setting Up An Enterprise Blog
- Blog Setup Step Two
- Blog Setup Step Three
- Posting Blog Entries
- Instructor Demo
- Wikis
- Wiki Vandalism
- Wiki Trustworthiness
- Writing Wiki Content
- The SLATES Components of Collaboration
- Search
- Links
- Authoring
- Tags
- Instructor Demo
- Extensions
- Signals
- Successful Knowledge Management Projects
|
|