The JavaScript Design Patterns and Best Practices Collection
3.0 (13 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
215 students enrolled
Wishlisted Wishlist

Please confirm that you want to add The JavaScript Design Patterns and Best Practices Collection to your Wishlist.

Add to Wishlist

The JavaScript Design Patterns and Best Practices Collection

Everything you need to know about advanced JavaScript in one curated course. Includes coverage on the ES6 specification!
3.0 (13 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
215 students enrolled
Created by Packt Publishing
Last updated 8/2017
Curiosity Sale
Current price: $10 Original price: $200 Discount: 95% off
30-Day Money-Back Guarantee
  • 5 hours on-demand video
  • 9 Articles
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • A behind-the-scenes look at the common issues while targeting cross-browser compatibility
  • Create, integrate, and test event dispatchers in JavaScript
  • Master DOM manipulation, cross-browser strategies, and ES6
  • Understand how to modularize and condense code, optimize memory, and negotiate design problems
View Curriculum
  • Must own a computer with Windows 7 or higher, Linux, or Mac OS X installed.
  • Have the latest version of the Google Chrome or Mozilla Firefox browser installed.
  • A text editor of your choice. Sublime Text, vi, Atom, or Notepad++ would be ideal.

Have you ever felt as if you rely too heavily on third party JS libraries and frameworks? Concerned about being able to write clean and maintainable code?

This uniquely structured course combines text, video and assessment content. It aims to get you up to speed on expert-level techniques that will help you grow as a software developer. Whilst we focus on JS, many of the patterns we use are also applicable to broader software development. These design patterns will act as solutions to your frequently occurring development problems.

This course will build your understanding of tried-and-true design patterns in JavaScript. You will learn how to build robust applications and libraries. Moreover, this course will make you capable enough to identify places where the right pattern could improve the readability and maintainability of your code.

Why should I choose this course?

We've spent the last decade working to help developers stay relevant. The structure of this course is a result of deep and intensive research into what real-world developers need to know in order to be job-ready. We don't spend too long on theory, and focus on practical results so that you can see for yourself how things work in action.

What details do you cover?

 We’ve all reached a stage where we struggle to write simple and expressive code. It’s in these cases where design patterns come to our rescue.

We start off this course with idiomatic JavaScript, helping you get to grips with modern JS. From stabilizing our foundation in OOP coding, we will move on to cover DOM manipulation in a simple and approachable manner.

We’ll then move onto one of the most common concerns presented to us by front-end web developers.- When creating a cross-browser application, how do you know if a feature is supported or not?As a bonus, we also dive into the latest JS refresh that is ES6. ES6 is an exciting collection of new language features and paradigms and we’ll get you started with using polyfills and transpilers right away.

Once you are well-acquainted with all the tips and tricks of JavaScript, we’ll move on to design pattern techniques. Starting with an introduction to design patterns, we look at creational, structural, and behavioral patterns. We include also include coverage of functional programming, model view patterns, patterns to build web applications, and messaging. A number of very interesting advanced JavaScript patterns such as dependency injection and live post processing are also detailed in a practical context.

On completion of this course you will have seen over 20 modern and classic design patterns in action, so that you can apply them to tackling the challenges that arise in real-world web application development.

We combine the best of the following Packt products:

  • Mastering JavaScript by Ben Fhala
  • JavaScript Design Patterns 20 Patterns for Advancing Your JavaScript Skills by Ben Fhala
  • Mastering JavaScript Design Patterns, Second Edition by Simon Timms
  • Mastering JavaScript by Ved Antani


 “great job done ! Always a pleasure to see practical implementation of patterns "in real world".”

   --Volodymyr Yaremenko

 “This course is stellar! There is nothing worse then people designing courses and putting expert or advanced and it is NOT. THIS IS!! It is so organized and detailed. The teacher is awesome.”

   --Michael Bruce

Meet your expert instructors:

Ved Antani has been building scalable server and mobile platforms using JavaScript, Go, and Java since 2005. He is an associate vice president at Myntra and has previously worked at Electronic Arts and Oracle.

Ben Fhala is an Adobe ACP. He has developed applications for members of the US Congress, Prime Ministers, and Presidents around the world. His commercial experience includes companies like Target, AT&T, Crayola, Marriott, Neutrogena, and Nokia. He has technically directed many award-winning projects and has been part of teams that have won three Agency of the Year awards.

Simon Timms has a BSc in Computing Science from the University of Alberta and a Masters from Athabasca University. He is interested in distributed systems and visualization. He is involved in the local .NET and JavaScript community, and speaks frequently at conferences.

Who is the target audience?
  • If you are a JavaScript developer who is familiar with basic JavaScript syntax, seeking further exposure to real-world object-oriented programming, then this is the course for you!
Students Who Viewed This Course Also Viewed
Curriculum For This Course
55 Lectures
Idiomatic JavaScript
8 Lectures 37:50

Declaring variables

Declaring complex data types and functions

OOP naming conventions

Creating a global namespace

Constants (and pseudo constants)

Smart coercion of data fields
Functional Programming
1 Lecture 19:53
Understanding functional programming
Reactive Programming
1 Lecture 12:42
Reactive programming - what is it?

Test Your Knowledge
3 questions
Cross-browser Development
3 Lectures 12:56
Targeting at JavaScript versions or features

Creating an onload method that always works

Using Modernizr to detect features
Cross-browser DOM Manipulation
4 Lectures 24:07
Building a conditional logic flow

Selecting DOM elements natively in HTML5

Creating a cross-browser script loader

Using sizzle to select DOM element
Creating a JavaScript Library
6 Lectures 43:14
Defining a namespace

Creating private variables in JavaScript

The JavaScript Module design pattern

Version controlling our library

Building out our library
Server-side JavaScript
1 Lecture 20:54
Exploring server-side JavaScript
ECMAScript 6
1 Lecture 17:56
Getting Started with ECMAScript 6

Test Your Knowledge
3 questions
My First Design Patterns
5 Lectures 41:22
The problem with the global scope

Moving to one object and namespace

The Module design pattern

The Module Reveal pattern

Controlling the global access completely
Creational Design Patterns
6 Lectures 51:38
The Singleton design pattern

The Abstract Factory design pattern

The Builder design pattern

The Builder design pattern continued

The Prototype design pattern
8 More Sections
About the Instructor
Packt Publishing
3.9 Average rating
7,297 Reviews
52,318 Students
616 Courses
Tech Knowledge in Motion

Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.

With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.

From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.

Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.