Skip to content

JavaScript Design Patterns

Free Course

Organizing Code in a Disorganized World

Related Nanodegree Program

Introduction to Programming

About this course

This course covers methods for organizing your code, both conceptually and literally. You’ll learn the importance of separating concerns when writing JavaScript, gaining hands-on experience along the way. Separating concerns can be done with or without an organizational library or framework. We’ll learn how to separate concerns without one, and then we’ll explore an organizational library together. You’ll also learn strategies for exploring other libraries and frameworks on your own.

By the end of this course, you’ll understand (from experience) the importance of code organization, and how to implement it with either vanilla JavaScript or an organizational library or framework. Your applications will start looking clean and professional—not just to your users, but also to anyone who looks at the code driving your applications.

What you will learn

  1. Changing Expectations
    • Build a project without an overall organizational paradigm.
    • Explore the pain points of not using an organizational model.
    • Introduction to future paradigms.
  2. Refactoring
    • New paradigms vs Lesson 1.
    • Rebuild the project with the new organizational paradigm.
  3. Using an Organizational Library
    • Explore KnockoutJS to organize our code and to reduce the amount of boilerplate we write.
  4. Exploring Unfamiliar Code
    • Explore code that you didn't write, and use a library or framework that you aren't familiar with.
    • Learn to explore code and foster one of the most important traits of a developer.

Prerequisites and requirements

This course is for intermediate web developers with some experience with JavaScript, and some prior experience with a JavaScript library, such as jQuery.

Students should also be proficient in HTML and CSS, and should have experience creating static pages.

See the Technology Requirements for using Udacity.

Why take this course?

Many developers dive right into projects without thinking of the organization or structure of the code they’re writing. It's easy to hack projects together, but the best developers spend the extra time to think about the organization of their application and adhere to sound organizational practices.

In order to write clean code that will get you your next job or promotion, you'll need to have a solid understanding of organizational techniques, and you'll need to implement those techniques in your projects. Software developers who write clean and organized code are surprisingly hard to find, so if you can master code organization you’ll be a step above the rest.

Learn with the best.

  • Ben Jaffe
    Ben Jaffe