Professional Documents
Culture Documents
we're hiring!
WEB DESIGN
Should you decide to learn Angular, youll be endowed with the skills required to
develop cross-platform apps, and your newfound superpowers will prove to be
valuable and profitable for years to come.
What follows is a guide (I call it a roadmap) designed to help you learn Angular
effectively. My goal with this roadmap was to chart a carefully-crafted curriculum
of free online resources that gently introduces you to the world of Angular. I
wanted to create a self-learning guide that will motivate you to continue to pursue
higher levels of Angular expertise.
After completing this learning guide, you can look forward to having a proficient-
level understanding of Angular and the ability to use it to build JavaScript
applications.
Im not going to mince words, learning Angular will be hard work. Expect to
encounter many roadblocks during this arduous undertaking. But I encourage you
to stick with it. Your efforts and hard-earned battle scars will be worth it because
Angular will ingrain so much value into your work and your repertoire of
development skills.
Whats more, the value you derive from Angular will be proportional to how adept
you are at JavaScript.
Other web development frameworks are a little more forgiving towards people
who dont have a solid understanding of JavaScript. For example, jQuery conceals
some of the more complicated JavaScript concepts from its users. Now, this isnt
a bad thing, its actually excellent for many developers and certain types of
development projects.
(To further underscore my preceding argument, jQuery was built using the Facade
software design pattern, defined by the renowned JavaScript developer and
Google engineer Addy Osmani in his book as a design pattern that provides a
convenient higher-level interface to a larger body of code, hiding its true underlying
complexity.)
Angular, in contrast, exposes the powerfully potent and elegant but often hard-
to-understand/misused features of JavaScript. Angular doesnt shy away from
JavaScripts complexities; it embraces them and pushes them to their limits.
If you need to learn or brush up on JavaScript, start with these articles first:
Heres the silver lining. Reflecting back on my own journey into the world of
Angular, I can confidently say that it has helped me become a better JavaScript
programmer. Using Angular has encouraged me to further my understanding of
advanced JavaScript concepts, techniques, and design patterns.
If you want, you can begin with the resources that you personally find interesting.
However, keep in mind that I intentionally structured this guide with the goal of
helping you gently get on your way with Angular. Use the wrong resource at the
wrong time, and you might get discouraged from continuing to explore Angular.
This online course is a well-structured and efficient intro to Angular. In this course,
youll be building a simple Angular app. There are coding challenges interspersed
throughout the course to help you review the key concepts being discussed. As
you develop the app, youll learn about some of Angulars powerful features, such
as Directives, two-way data-binding, Services, and so forth.
But for most people, my view is that learning Angular must start with third-party
content. There are other learning resources out there besides the AngularJS docs
that are more approachable for newcomers.
The free online book Angular Basics is one such learning resource.
Chris Smith, the author of the book, perfectly describes my initial experience trying
to learn Angular via the AngularJS docs:
In Angular Basics, youll learn about the vital Angular concepts: Controllers,
Directives, Services, scope, dependency injection, and so forth. This book is
interactive as youre reading the book, youre prompted to play around with the
code examples which makes it a fun and engaging read.
This online book wont go over every single Angular feature. The author instead
capitulates his book to the Pareto principle: To give you access to a large part of
Angulars power, while burdening you with only [a] small part of its complexity.
The next three steps will deal with completeness and Angular best practices.
After the two Angular-learning resources above, youll be well on your way to
developing Angular apps.
In the PhoneCat Tutorial App, you will be creating a smartphone directory app.
Youll learn intermediate- and advanced-level Angular concepts such as unit-
testing, E2E tests, how to organize your app files and directories, templating, best
practices for modularizing your apps code, and more.
Take your time with this tutorial. Resist the urge to jump ahead whenever you
reach a roadblock. (I encountered many of them when I went through this tutorial.)
By persevering through the hard parts of this tutorial, youll guarantee yourself true
Angular understanding.
The writer/s of the PhoneCat tutorial app says that you can go through the whole
tutorial in a couple of hours or you may want to spend a pleasant day really
digging into it. For me, it took a week to finish, putting in two hours of focused
learning each day.
At this point, you should now be well-equipped with Angular knowledge. Its now
time to dig deeper into the details. The official AngularJS Developer Guide is your
next stop.
The AngularJS Developer Guide will dive into the nitty-gritty of Angulars features
and capabilities. Many AngularJS newcomers probably started with this guide (or
the PhoneCat tutorial) and it might have dissuaded them from continuing to learn
Angular because of the guides daunting demeanor. But after the previous steps,
you should now be more confident tackling this guide.
In this guide, youll learn (or be pointed towards) all the stuff you need to know
about Angular. The guide covers things like Providers, Decorators, interpolation,
security, accessibility, running Angular in production, etc.
My advice with this guide parrots the one I gave you for the PhoneCat tutorial:
Take it slow and easy. Resist the urge to skip sections.
Goal: To learn Angular best practices such as how to write, organize, and structure
your code so that its maintainable and testable.
We can learn a lot by reading coding style guides, even if we dont end up using
them in our projects. A style guide is an opinionated documentation of guidelines
and best practices for producing readable, high-quality code.
There are several excellent Angular style guides out there, but this one is worth
highlighting because its endorsed by the Angular team.
This Angular style guide was reviewed by Igor Minar, the team lead of Angular and
a software engineer at Google.
The Angular Style Guide espouses an extensive range of Angular (and JavaScript)
best practices such as:
After reading this style guide, I suggest choosing one of the following four courses
of action:
In any event, before working on a major Angular app, its important to have a set of
best practices that help guide the way towards the projects completion and
promote high-quality code-writing. Otherwise, your Angular apps will quickly get
messy and hard to maintain.
This guide is for learning AngularJS 1. I know many people reading this will want
to know if they should wait to learn Angular until Angular 2 is finalized.
First, Id like to make it clear that you can use Angular 2 today, depending on your
technology-adoption philosophy. If you feel comfortable relying on software thats
(in a fairly mature) beta stage of its life cycle, Angular 2 has many new features
that makes it compelling to use today.
What other learning resources and tips can you offer people who want to learn
Angular? Please leave a comment below!
Related Content
The Big Changes to Pay Attention to in AngularJS 1.3
Grunt vs Gulp: Which One Should You Use?
Bower Beginners Guide
Sort by Best
Recommend 23
Share
LOG IN WITH
Name
HOME ABOUT US
PORTFOLIO CONTACT
FREE QUOTE
Copyright 2002-2017