DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
  1. DZone
  2. Coding
  3. JavaScript
  4. Why AngularJS is Known to Have a Steep Learning Curve?

Why AngularJS is Known to Have a Steep Learning Curve?

Ajitesh Kumar user avatar by
Ajitesh Kumar
CORE ·
Oct. 17, 14 · Opinion
Like (0)
Save
Tweet
Share
29.13K Views

Join the DZone community and get the full member experience.

Join For Free
the article presents my opinion on why angularjs is popularly known as framework with a steep learning curve. after having spent so much time with angularjs, where i wrote few angular applications (one of them is http://function-point-analysis.appspot.com ), and also deep dived into the angularjs code, i ended up building a set of opinion on why at all is angular said to have deep learning curve.
before going into the details, i must say that off-late  both, server-side and ui programmers are found to be digging into the angularjs land and both of them have consistently  echoed about the toughness of land :-) at the surface level. thinking about it, one could come up with different reasons on why angularjs is hard to dig in for both the classes of developers. following are some of them:
why angularjs seems to have deep learning curve for server-side developers?
  • err…angularjs is a dependency injection based framework? : this presents problem right in the start when the server-side developers start with angularjs. some of the questions they struggle to find answer in their mind and elsewhere on webpages are following:
    • why is there a need of dependency injection with ui programming when javascript is mostly about writing functions and getting things done? moreover, my ui developer friends say that they have jquery as their favorite js library which serves all that they need whenever they are needed to do javascript programming and manipulate dom. then, why do we need something like dependency injection? in addition, the server-side developers are used to working with one or more dependency injection framework (such as spring for java) where they have learnt to inject dependency for different reasons sighted by the framework. all of sudden, trying to learn angularjs in light of dependency injection present them with one or more challenges primarily because they try to apply their existing understanding of di with angular and soon start getting frustated.
    • what is required to be injected? actually speaking, many server-side developers are not very familiar with the fact that javascript can also be written using object-oriented programming & related concepts.
    • okay, how does di happen? is it using some configuration file that developers has to write separately or is it done using some sort of annotations?
  • and, what the heck has mvc got to do with javascript? well, this presents one of the biggest challenge in server-side developers’ mind. they try to equate or apply their understanding of mvc on server-side programming while learning angularjs. and, this is where some of them, if not most, get defeated.
  • huh…what is this whole fuss about testability with javascript? why one needs to write testable javascript code?
why angularjs seems to have steep learning curve for ui developers?
  • what is this “object” we are talking about? many rookies to average ui developers that i have met, they have been still writing javascript using functions and jquery, a very popular javascript library that helps to manipulate with dom and in turn, manipulate related html pages. then, why do i need to care about writing javascript code in object-oriented manner.
  • what the hell is this dependency injection? why do i need it? again, i am getting my work done with jquery and some functional programming. why do i need to care about di which i have known as a object lifecycle management related framework for my server-side developer friends.
  • my goodness, now you are pushing mvc in its totality on me when i am comfortable taking care of “view” part in my existing world and server-side developers worry about controller (c) and model (m).
  • testability & javascript…why? :-) well, there are test engineers to test the ui that i develop. why should i care about testability of my javascript code. and, even i need to care, i am not writing a rocket launcher, that i would be mandated to write unit tests for my javascript code. additionally, where is the time to write these unit tests when there are a bunch of legacy js code which i have to maintain. give me a break.
  • and, why new directives when i am ok with existing html directives & jquery (thankfully) . why do i need to worry about custom directives provided by angular and the ones that i could as well write. huh!
  • is jquery not enough for all that i need? then, why learn angularjs ?
please note that above are some of the comments i came across while talking with server-side and ui developers in addition to my own thoughts.:-) please feel free to comment/suggest.
given that above are some of the reasons why developers, in general, find it difficult to get started with angularjs, following are some pages which represents reasons on “ why learn angularjs “.


AngularJS Dependency injection dev JavaScript library unit test

Published at DZone with permission of Ajitesh Kumar, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Strategies for Kubernetes Cluster Administrators: Understanding Pod Scheduling
  • Rust vs Go: Which Is Better?
  • Spring Cloud
  • Stop Using Spring Profiles Per Environment

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: