Home » Archive by category "Angular 2"

What if Everything Was Immutable?

The first time a programmer who was trained in the classical procedural/object oriented history is confronted with the concept of making everything immutable, the first question that comes to mind is, “won’t that make my application slow?”  This is because of how most programmers have been trained.  Making everything immutable generally means that we must copy a lot of memory from one place to another.  Moving memory around is generally considered slow. And so, most programmers dismiss the whole idea as crazy talk.  But is it really all that crazy?

What if Everything Was Immutable?
Photo credit: Paul Stevenson via Visualhunt / CC BY

Continue reading “What if Everything Was Immutable?”

Awesome Angular2 Architecture Options and Opinions

On the subject of Angular2 Architecture, the perception is that Angular 2 is a highly-opinionated architecture.  But even though there is a style guide for Angular 2, there are a lot of decisions that still need to be made when working on any but the most trivial of applications.  And even then, since most applications take on a life of their own, one could make the case that you need to make these decisions for any application you are building regardless of the initial size.  Applications grow up.  But, that’s another blog post.

I’ve identified, and have formed opinions about 5 areas that Angular 2 leaves open for decisions.  Areas that if you don’t spend time considering the choices and making decisions could cost you in the future.

The five areas I’ve identified are:

  1. Handling Forms
  2. Page State Management
  3. Component State Management
  4. Data Flow
  5. Client Side Data
Awesome Angular2 Architecture Options and Opinions
Photo via africaniscool via Visualhunt.com

Continue reading “Awesome Angular2 Architecture Options and Opinions”

Dissecting Angular 2 Modules

In the new world of Angular 2, and even in the world of Angular.js, you might feel like the concept of a module is the most difficult to wrap your head around. This is especially if you’ve only ever written client side JavaScript code.  Once you’ve learned why you need a module, the temptation is to use one module for all your code.  I am guilty of doing that myself when I first started.  But, many times using one module for your entire application is the wrong thing to do because it reduces the ability to reuse your code in other modules.  Once you understand why modules exist, you’ll begin to reason about how to use modules appropriately.

Dissecting Angular 2 Modules
Photo credit: Sappymoosetree via Visual hunt / CC BY-ND

Continue reading “Dissecting Angular 2 Modules”

Reasons to use RxJS Today

If you’ve started looking at Angular 2, one of the things that you’ll notice is that RxJS has gotten a bit of a toe hold in the framework.  This becomes apparent the first time you try to access data.  Gone is the $http service that returns a promise.  Instead, we now have a service that returns an Observable.

Now, writing the code to access the server is arguably easy to learn.  But, as you travel down the rabbit hole that is Angular 2, you realize that RxJS shows up in places as disperse as NgRX/Store, handling events, and as we’ve already mentioned, AJAX calls.

Because it shows up in so many places, this new API is set to be the next thing we will need to learn to be effective JavaScript programmers.  But, should we?

Reasons to use RxJS Today
Photo credit: Dace Kiršpile via Visualhunt / CC BY

Continue reading “Reasons to use RxJS Today”