Learn and Understand AngularJS

Master AngularJS and the Javascript concepts behind it, design custom directives, and build a single page application.
4.6 (7,629 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.
45,101 students enrolled
$175
Take This Course
  • Lectures 55
  • Contents Video: 7 hours
    Other: 3 mins
  • Skill Level All Levels
  • Languages English, captions
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 9/2014 English Closed captions available

Course Description

Includes information on the next version - AngularJS 2.0!

Knowing AngularJS can get you a job or improve the one you have. It's a skill that will put you more in demand in the modern web development industry, and make your web software life easier, that's why it's so popular and backed by Google.

This course will get you up and running quickly, and teach you the core knowledge you need to deeply understand and build AngularJS applications - and we'll build a single page application along the way.

We'll design custom services, build custom directives, understand two-way binding, design a weather forecast app as a single page application, and lots more. Both starter and finished source code is provided as we go.

Reviews

"Best course I have ever seen" "Best intro to AngularJS on Udemy" "A fresh way of teaching AngularJS" "One of the best courses on Udemy that i took if not the best" "Best teacher I have had on the internet by far" "I...have taken lots of angular courses and I think this is the best one so far" "The best teaching style I've seen so far"

If you are new to AngularJS, or if you've been working to learn it but sometimes feel like you still don't quite 'get it', this is the AngularJS course for you! To learn AngularJS you have to understand it.

I've built the course that I would have wanted to take when I was learning AngularJS. A course that explains the concepts and how they're implemented in the best order for you to learn and deeply understand them.

In this course you will:

  • Learn how AngularJS works, covering subjects like directives, dependency injection, two way data binding, the digest loop, watchers, and more.
  • Learn fundamental Javascript and HTML principles that are used by AngularJS, such as custom attributes, loosely typed arrays, the hash, and the event loop.
  • Code custom services.
  • Design custom directives, understanding concepts like compile, link, and scope.
  • Build a single page application using AngularJS.
  • Keep up with the latest on the next version of AngularJS 2.0!

AngularJS doesn't have to be hard to learn. The biggest mistake most coding tutorials make is expecting someone to learn simply by imitating others' code. Real world situations are never exactly like the tutorial.

I believe the best way to learn is to understand how a tool works and what it does for you, look at examples, and then try it yourself. That's how this course is built, with the goal to help you both learn and understand AngularJS.

Note: In this course you'll also get downloadable source code. You will often be provided with 'starter' code, giving you the base for you to start writing your code, and 'finished' code to compare your code to.

What are the requirements?

  • A browser and a text editor
  • Basic HTML and Javascript knowledge

What am I going to get from this course?

  • Learn fundamental Javascript concepts that power AngularJS.
  • Write quicker, better AngularJS code by discovering how AngularJS itself is built.
  • Become fluent in AngularJS terminology, such as dependency injection, services, directives, transclusion, and more.
  • Realize the power of dependency injection, and how AngularJS accomplishes it.
  • Design custom directives and save time and energy with easily reusable components.
  • Understand what a Single Page Application (SPA) is, and how they work.
  • Build a Single Page Application (SPA) in AngularJS.
  • Be the coder that explains AngularJS to everyone else, because you understand it better than anyone else.
  • Get new free lectures during 2015, keep up with the development of AngularJS 2.0, and get a MASSIVE discount on a future AngularJS 2.0 course in 2016!

What is the target audience?

  • Web developers and designers looking to learn AngularJS
  • Those who have researched AngularJS but still find it hard to understand
  • Developers and designers who have used jQuery but are tired of doing everything manually

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Getting Started
02:30

A brief overview of what you'll learn in this course.

01:20

How we'll call out vocabulary you need to know during this course.

Article

The course is best experienced in High Definition. Here's how to make sure you're watching it that way.

Section 2: Model, View, Whatever...
06:03

When building large applications with tools like jQuery, what kind of problems does AngularJS aim to help solve?

02:48

The fundamental structural concepts that AngularJS is built on: MVC, MVVM, MV*.

05:23

HTML has attributes that the browser knows about, and knows what to do with. However we can take advantage of custom attributes, and store whatever information we desire in our HTML.

05:12

What is 'polluting the global namespace', and why is it bad? How do we avoid it?

Article

Most of the rest of the lectures in this course will come with source code. Here's how to grab it.

09:20

AngularJS enables you to control the DOM via modules, apps, and controllers -- all without polluting the global namespace.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

Section 3: Services and Dependency Injection
04:45

A coding concept that AngularJS relies on. What is dependency injection?

04:56

A look at our first AngularJS service. The incredibly important concept of scope.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

04:01

In Javascript, just about everything is a function. But functions can be converted to strings.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

03:03

How does AngularJS accomplish dependency injection? Understanding how will help you use it correctly.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

20:27

There are lots of services built into AngularJS, but even more available outside it. How can you easily get and use other AngularJS services?

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

03:05

Javascript arrays are loosely typed. They can contain just about anything. Even functions.

11:10

AngularJS controllers need to survive minification. Here's how AngularJS accomplishes that.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

Section 4: Data Binding and Directives
09:58

Our first visual AngularJS code. Now that we understand scope, let's use it to output content to a page.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

13:13

One of the best parts of AngularJS is two way data-binding via directives. Here we'll give it a try.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

03:21

AngularJS relies on the Javascript event loop. What does that mean?

17:28

AngularJS extends the Javascript event loop, and adds watchers and something called the digest loop. Let's examine it.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

19:51

Let's discuss some directives you'll use all the time in your AngularJS apps.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

04:13

Let's look at even more AngularJS directives.

09:14

Here we'll talk about a core concept vital to all modern web applications.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

13:17

Here we'll talk about a sending and getting data to and from a server via the AngularJS http service.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

Section 5: Single Page Applications
04:37

Up to now we've only seen one controller with one view. But AngularJS allows for more than that.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

08:47

What is the hash, and why is it so useful for single page applications?

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

14:37

How AngularJS uses the hash to help us build single page applications. This is all about AngularJS routing.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

06:26

Our breakdown of AngularJS routing and single page applications continues.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

Section 6: Custom Services
06:09

To understand AngularJS services, you have to understand the concept of singletons. What is a singleton anyway?

12:59

We'll create our first AngularJS custom service, and use it in our single page application.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

Section 7: Custom Directives
02:24

HTML5 has introduced a concept that isn't fully flushed out, but important to understand: Web components.

06:32

AngularJS does some interesting things with attribute and variable names. Why, and what do you need to know?

Angular and Normalized Attribute Names
1 question
18:37

We create our first custom directive in AngularJS, and understand the syntax behind it.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

03:12

What if our directive template gets large? Here's what to do using the 'templateUrl' property of our custom directive.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

13:29

We dive into isolated scope in AngularJS custom directives. We'll start with @ and one-way text bindings.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

05:59

More about isolated scope in AngularJS custom directives. We discuss = and two-way bindings.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

10:27

We finish up isolated scope in AngularJS custom directives, and talk about & and functions.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

03:30

Using a custom directive inside an ng-repeat.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

18:06

What does 'compile' mean (and do) in an AngularJS custom directive? And what about pre-link and post-link?

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

03:04

What does the 'link' property mean in an AngularJS custom directive?

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

05:44

We dig into the word 'transclusion', and understand what it means in AngularJS custom directives.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

Section 8: Let's Build an App (in record time!)
12:48

It's time to start our first, full-featured AngularJS single page application. Let's build a weather forecast app!

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

05:17

We add a custom service to our weather forecast AngularJS single page application.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

A Note Regarding API Usage
Article
18:07

We add some data to our weather forecast AngularJS single page application, by retrieving it from an API!

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

07:40

We continue adding data to our weather forecast AngularJS single page application.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

13:43

We convert some of our code into a custom directive, reusable inside our AngularJS single page application.

This lecture contains downloadable source code. Download the file below and unzip (or extract) it.

00:32

A quick personal side note, less than 60 seconds, on leaving a course review.

Section 9: BONUS Lectures
06:05

We'll help the UX of our SPA by coding the app to respond to the 'enter' key instead of just clicking a button. We'll do this with the help of ng-submit.

07:16

We'll improve the architecture of our SPA by pulling the API call portion of the code into it's own custom service.

10:49

The popular alternative to $scope, 'controller as', and when and why to use it.

Section 10: Getting Ready for AngularJS 2.0 in 2016
08:12

The first update on how to be ready for AngularJS 2.0 in 2016 and beyond.

Update #1 - Links
Article
Section 11: Conclusion
01:47

Thank you for taking Learn and Understand AngularJS!

Bonus Lecture: A Parting Gift
Article

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Anthony Alicea, Software Developer, Architect, and UX Designer

Newly married in Cleveland Ohio, Tony is primarily focused these days on trying to be a good husband. While inexperienced at that, he's quite experienced in all things web.

Tony has been programming since he was 12 years old, and got into web sites and web application development at 16. After graduating with a Computer Science degree from Case Western Reserve University, Tony continued with that interest as a Microsoft certified software application developer and architect, database designer, and user interface designer.

His experience has ranged across technologies such as HTML5, CSS3, ASP .NET MVC, JavaScript, jQuery, KnockoutJS, AngularJS, NodeJS, LESS, Bootstrap, SQL, Entity Framework and more.

He believes strongly that deeply understanding any topic allows you to properly learn it and, even more importantly in a real-world environment, quickly overcome problems.

He also has a deep interest in human nature and behavior, and how that impacts human-computer interaction. This interest translated into extending his career into user experience design and usability research.

Another link in the chain is his 25 years of experience in public speaking and teaching, both in front of large groups and as a one-on-one private instructor.

Putting all these pieces together, he has spent his career listening to a client need, designing a database and software to meet that need, building it, testing it, teaching others how to use it, then improving user experience by watching people actually use it and adjusting accordingly.

Tony loves teaching every aspect of what he does, and even more loves teaching in a way that imparts understanding, as opposed to just examples intended to be parroted. He loves that moment when a student 'gets it', and that's what he wants for you when you take one of his courses.

He has found that those that learn purely by example, and not by understanding, end up much more limited than they need to be.

"Examples need to be built on top of context, and once you have context, you can not only copy the examples you find, but adjust and improve upon them."

He firmly believes that everyone has the ability to develop software, if they are just taught properly. Including you.

"It is my pleasure and privilege to teach you. I hope you'll come away knowing something you didn't before, understanding at a level deeper than before, and feeling positive that you can accomplish what you've set out to accomplish. Thank you!" - Tony Alicea

Ask Tony a question, read a post, or follow him around internet.

Ready to start learning?
Take This Course