What is Angular 2?
Who uses Angular 2?
Angular 2 Integrations
Why developers like Angular 2?
Here are some stack decisions, common use cases and reviews by members of with Angular 2 in their tech stack.
React is by far on a very accelerate trend now vs Angular 2 that, even if it did bring some new things on the table and it's elegant (enough), not everybody is a TypeScript ace. And TypeScript should not be necessary. CoffeeScript is way more elegant anyway. So although Angular 2 did get some new traction, React is here to stay, it will cover more and more ground and be part of stacks at companies all over the globe so it can not be ignored and it is a sure bet.
Angular 2 is a beautiful and fast MVC Framework. We are using it for mobile, web and desktop development. Angular 2
Here are some stack decisions, common use cases and reviews by companies and developers who chose Angular 2 in their tech stack.
One TypeScript / Angular 2 code health recommendation at Google is how to simplify dealing with RxJS
Observables. Two common options in Angular are subscribing to an
Observable inside of a Component's TypeScript code, versus using something like the
foo | async) from the template html. We typically recommend the latter for most straightforward use cases (code without side effects, etc.)
I typically review a fair amount of Angular code at work. One thing I typically encourage is using plain
Observables in an Angular Component, and using
foo | async) from the template html to handle subscription, rather than directly subscribing to an observable in a component TS file.
Subscribing in components
Unless you know a subscription you're starting in a component is very finite (e.g. an HTTP request with no retry logic, etc), subscriptions you make in a Component must:
- Be closed, stopped, or cancelled when exiting a component (e.g. when navigating away from a page),
- Only be opened (subscribed) when a component is actually loaded/visible (i.e. in ngOnInit rather than in a constructor).
AsyncPipe can take care of that for you
Instead of manually implementing component lifecycle hooks, remembering to subscribe and unsubscribe to an Observable,
AsyncPipe can do that for you.
#Typescript #Angular #RXJS #Async #Frontend
When Redash was created 5 years ago we chose AngularJS as our frontend framework, but as AngularJS was replaced by Angular 2 we had to make a new choice. We decided that we won't migrate to Angular, but to either React or Vue.js. Eventually we decided to migrate to React for the following reasons:
- Many in our community are already using React internally and will be able to contribute.
- Using react2angular we can do the migration gradually over time instead of having to invest in a big rewrite while halting feature development.
So far the gradual strategy pays off and in the last 3 major releases we already shipped React code in the Angular.js application.
We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.
To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas
To build #Webapps we decided to use Angular 2 with RxJS
#Devops - GitHub , Travis CI , Terraform , Docker , Serverless
We were working hard on a project for ambulance dispatching system. The main components developed using Laravel . It aided us to develop the application very fast. We used MySQL as the DBMS and Angular 2 for frontend developing. After a year, the growing number of requests made us scale some specific APIs. So we decided to use Go to handle them. It was just wonderful!
Kubernetes GitLab CI Cassandra ExpressJS Angular 2
I start a new project of a plateform to make an iventory of bands in my musical style preference I choose
for the BackEnd: Express, Casssandra Express because I want to use API and compatibilitie with others front plateform and Cassandra about is performance of scalability
for the Frontend: Angular because it's a real framework and this structure is perfect to add and update new features to make easily evolution
It's the begening of the project and I'll come back for future informations and discussion about problems that must resolved
More than year ago I was looking for the best editor of Angular 2 application and I've tried Visual Studio Code and Atom. Atom had performance issues that put me off completely to use it again. Visual Studio Code became my main editor #Typescript files (and partly editor of #Java files). I'm happy with Visual Studio Code and I've never look back on Atom. There wasn't any reason to try Atom again, because Visual Studio Code fulfills my requirements very well. I use it for editing of TypeScript, #HTML, #Sass, JSON, Docker and Markdown.
Angular 2's Features
- Progressive Web Apps
- Code Generation
- Code Splitting