Modern Web Development with JavaScript & JQuery Essentials
At Course Completion
Throughout the course you’ll explore practical use of the umbrella of tools, toolkits, and frameworks can be used in web development and deployment leveraging JavaScript. The course begins with an initial look at JavaScript and how it is used within the context of web applications, walking you through the different technologies that are used with JavaScript and exploring core aspects of JavaScript and JQuery in terms of web applications, security, tools and frameworks.
Working within in a dynamic, hands-on learning environment, guided by our expert team, you’ll explore:
· What is JavaScript, how does it relate to other programming languages, and how do you script your web pages with it?
· How do you traverse and manipulate the DOM and how do you handle events in ways that work in all browsers?
· What are closures and prototypes and other exotic features of JavaScript?
· Learn what jQuery is and how to add it to your applications
· How does jQuery make Ajax programming easier?
· Use jQuery to select complex sets of elements from the DOM
· Develop rich web pages that respond to user interaction
· Interact with your server-side code using Ajax
· What best practices are there for using jQuery?
· What plugins and extensions are available to enhance your applications even more than the core jQuery library can provide?
· Explore a wide variety of plugins and learn how to write your own
· Test your applications to make sure your JavaScript is as solid as the rest of your code
Audience Profile
This is an introductory level course for experienced software developers seeking to enhance and extend their core web development skillset leveraging JavaScript and JQuery
Prerequisites
Attendees should have practical experience developing basic software applications and prior experience working with code or scripting.
Outline
Session: Core JavaScript Essentials
Lesson: JavaScript Basics
§ JavaScript Defined
§ Variables and Operators
§ Flow Control and Conditionals
Lesson: Debugging Tools
§ Using the strict mode and setting breakpoints
§ Browser debugging tools
§ Monitoring resource usage and performance
§ Emulating devices Exceptions in JavaScript
§ Exceptions in JavaScript
Lesson: JavaScript Functions
§ Functions in JavaScript
§ Invoking Functions
§ Function Constructor
§ Function Scope and Closures
Lesson: JavaScript Arrays, Math and Date
§ JavaScript Literals
§ JavaScript Arrays
§ Working with Numbers and Dates
Lesson: JavaScript Event Handling and the DOM
§ Events and Event Handling
§ HTML Document Object Model
§ Accessing the DOM
§ Dynamically Working with the DOM
§ DOM Challenges
Lesson: Object-Oriented JavaScript
§ JavaScript “Objects” and “Classes”
§ Constructors and Prototypes
§ Prototypes
§ Extending Classes with Prototype
§ Reusable, Flexible Classes
Session: jQuery
Lesson: Why jQuery?
§ JavaScript Evolution
§ Why jQuery?
§ jQuery Usage
§ Downloading jQuery
Lesson: Basic jQuery
§ jQuery: Operational Overview
§ jQuery Capability Overview
§ Basic Selectors
§ Multiple Selector
§ Selecting by Order
Lesson: Manipulating the DOM
§ Attributes vs. Properties
§ CSS Box Model Properties
§ Element Content
§ Manipulating Children
§ Wrapping and Unwrapping
§ Effects (Basic Animation)
§ Effects Queues
Lesson: More On Element Selection
§ Hierarchical Selectors (Combinators)
§ Attribute Selectors
§ Basic vs. Child Filters
§ Filtering Methods
§ Traversing Structure for Selection
§ Processing Results of a Selection
Session: Working with jQuery
Lesson: Attributes, Forms, and DOM
§ Selecting From Forms
§ Selecting Parent and Children
§ Automatic DOM Traversal
§ Manipulating DOM Elements
§ Getting and Setting Attribute Values
§ Removing Attributes
Lesson: More jQuery!
§ Review jQuery functions and processing
§ Review the jQuery object
§ Discuss instance vs. static usage
§ Review function overloading
Lesson: Event Handling
§ Binding Multiple Events to Same Handler
§ Multiple Events to Different Handlers
§ Event Targets
§ Triggering Events
§ Custom Events
§ Live Events
Lesson: More On Elements!
§ Changing HTML Content
§ Changing Text Content
§ Managing Elements
§ Introduction to Animations
Lesson: Ajax
§ Posting Data
§ Global Ajax Handlers
§ JSONP
§ Serialization
§ Deferred Objects
§ Promises and Piping
§ Chaining Tasks
Lesson: jQuery Plugins
§ jQuery Validation Plugin
§ jQuery Form plugin
§ Tree Plugins
§ Writing custom plugins
Lesson: jQuery UI
§ jQuery UI Effects
§ Advanced Easing
§ Interactions
§ Position Utility
§ Widgets
§ Icons
Session: JavaScript Object Notation (JSON)
Lesson: Introduction to JSON and AJAX
§ JSON defined in terms of persistence
§ AJAX Overview
§ How to use JSON in an Ajax application
§ How to transfer data to and from the server
Lesson: JSON Objects
§ Understand JavaScript's literal syntax for creating arrays and objects
§ Understand object literals
§ Understand arrays
§ Understand arrays in objects
§ Understand objects in arrays
Lesson: JSON Syntax and Processing
§ Understand JSON Syntax
§ Understand JSON Parsers
§ Read and write object and array literals in JavaScript
§ Sending Data: Stringify to JSON
§ Consuming Data: Parse JSON
Lesson: jQuery, JSON, and AJAX
§ Types of Content to be Processed
§ Processing JSON with jQuery
§ Working with Deferred Objects
§ Promises and Chaining Tasks
Session: Advanced JavaScript Topics
Lesson: ES6 and TypeScript
§ ES6 Defined
§ ES6 Default and Rest Parameters
§ IIFE and Closures
§ ES6 Importing/Exporting Modules
§ Arrays, ES6 Maps, and ES6 Sets
§ Working Arrays with ES6
§ Working Strings with ES6 Strings
§ ES6 Constructs and Inheritance
§ ES6: Getters and Setters
Lesson: HTML5 JavaScript API
§ Cross-Domain Messaging
§ Working with Web Storage
§ Geolocation: What, Why, and How
Lesson: TypeScript
§ Strong Data Typing
§ Compiling TypeScript to JavaScript
§ TypeScript Datatypes
§ TypeScript Classes and Interfaces
Lesson: JavaScript Best Practices
§ Code Conventions for the Lifecycle
§ Resolving Shared Resources
§ Constructs to Use
§ Constructs to Avoid
§ Memory Considerations
Session: Web Design
Lesson: Responsive Web Design
§ Adapting to Varying Screen Sizes
§ Scaling Page and Text Content
§ Scaling and Adapting for Media
§ Options for Adjusting Media
Lesson: User Interface Principles
§ Design Principles
§ Improving Interactions with Users
§ Matching Web Flow to User Expectations
Lesson: Layout Techniques
§ Page Layout Consideration
§ Stacking Content
§ Handling Excessive Content
§ Providing Consistency Across Web Presence
Lesson: Navigation Techniques
§ Handling Excessive Content
§ Providing Context and State Feedback
§ Navigation Placement and Techniques
Lesson: Selection Techniques
§ Improving Text Input
§ Improving Enumerated Input
§ Accessibility Considerations
Bonus Topics: Time Permitting
These topics will be included in your course materials but may or may not be presented during the live class depending on the pace of the course and attendee skill level and participation.
Lesson: JavaScript Scheduling, Execution, and Security
§ Timers and Scheduling
§ Execution Contexts
§ Same Origin Policy and JavaScript
§ Security Considerations
Lesson: Performance and Optimization
§ Code Optimization
§ JavaScript Verbosity Tradeoffs
§ Memory Considerations
§ Cyclic References
Lesson: Download Options
§ Basic principles underlying web application performance optimization
§ Role of downloading options in smoothing bandwidth usage
§ How caching can reduce bandwidth usage
Lesson: Security
§ Security: The Complete Picture
§ Unvalidated Input
§ Injection Flaws
§ XSS
§ Spoofing
· How Attackers See JavaScript Applications
Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com
Request a Date