Sharing Top Content from the Angular-sphere.

Developing Scalable Angular Applications – Isuru Senadheera – Medium

Developing Scalable Angular Applications #softwaredevelopment

  • Instead single-page apps have different set of challenges such as increasing the size of data loaded, growing complexity and size of the code which results in longer loading times, slower applications.An application with bad, or not scalable architecture, tends to be very hard to develop after some time.Modular designAngular2 itself…
  • These models may consume async (HTTP) services or state management services.Unidirectional data flowIn complex single-page applications, one of the biggest challenges is to deal with the data and state information to flow across layers of the application.
  • But we found Redux provides a solution for more complex component interaction scenarios ensuring unidirectional data flow.Explicit state managementState, is an special type of data which flows through the application.
  • Flux is a pattern and Redux is a library.There are some big advantages of this approach.We could decouple components and modules from each could persist the state into local storage, server and boot from itSerialize user actions and attach them, together with a state snapshot, to automated bug reports, so…
  • Travel between the state history in development, and re-evaluate the current state from the action history when the code changes.Provide alternative UIs while reusing most of the business logic.A possible solutionNgrx/store is a RxJS powered state management for Angular applications, inspired by Redux which has lots of features you could use…

A couple of months ago I started working on a new version of a software product. The project was to modernize an existing product to make if a responsive single-page application. As in most modern…

Developing Scalable Angular ApplicationsA couple of months ago I started working on a new version of a software product. The project was to modernize an existing product to make if a responsive single-page application. As in most modern single-page applications, we were expecting it to be a fat client which encapsulates a decent amount of business logic in the future.When a single-page application grows over time, there will be troubles maintaining and extending features. This will often lead to early technical debt, a lots of frustration on breaking things and fixing bugs.One of the biggest challenges in designing a single-page application might be: extending existing logic and implementing new features quickly without breaking the app.What does it means that app is scalable?Single-page applications will always run as a single, separate application instance for every user, so there is no higher number of users challenge compared to back-end applications such as MVC. Instead single-page apps have different set of challenges such as increasing the size of data loaded, growing complexity and size of the code which results in longer loading times, slower applications.An application with bad, or not scalable architecture, tends to be very hard to develop after some time.Modular designAngular2 itself make us use components. Basic philosophy here is to make everything a component, even pages and the application. Some very simple but very important tips in designing components are to keep them small and dumb as possible.In our application, we used the idea of ‘smart’ and ‘dummy’ components. The…

Developing Scalable Angular Applications – Isuru Senadheera – Medium