Sự khác nhau giữa các phiên bản angular

Các phiên bản của Angular

  • Bởi Daisy
  • Thứ Bảy, ngày 27/02/2021
  • 2285
Sự khác nhau giữa các phiên bản angular
Angular được biết đến như một trợ thủ đắc lực đối với các lập trình viên Front End. Hãy cùng Tự Học Lập Trình tìm hiểu những phiên bản nổi bật của chúng nhé!

So sánh giữa angular v1, angular v2, angular v4

October 25, 2018

Angular là một trong những framework Javascript giúp developer phát triển các ứng dụng web có tính tương tác cao. Đứng đằng sau chống lưng cho sự phát triển của angular là ông bầu google. Điều đó cho thấy tầm giá trị đáng để mọi dev front-end, full-stack quan tâm và tìm hiểu nó.
Tốc độ ra version angular của google nhanh một cách đáng nể.Phiên bản hiện tại của angular là version 7.0.0. Nhìn qua nhìn lại thấy hơi choáng. Tuy nhiên version 1, 2 và 4 là 3 version nổi bật, ổn định và được sử dụng rộng rãi đến thời điểm hiện tại. Mình cũng là một dev với hiểu biết nhất định về a ngular 1, sau một thời gian vật lộn với reactjs/redux thì đã quay lại angular. Điều mình quan tâm trong lúc tìm hiểu đó là sự khác nhau giữa 3 version này.

Sự khác nhau giữa các phiên bản angular
Sự khác nhau giữa các phiên bản angular

Giới thiệu tổng quan về Angular

Tính năng mới trong Angular 8

Hỗ trợ TypeScript 3.4.x

Angular 8 hỗ trợ bản TypeScript 3.4 hoặc cao hơn. Nếu bạn muốn dùng Angular 8 cho ứng dụng của mình thì cần upgrade TypeScript lên 3.4 hoặc cao hơn.

IVY Rendering Engine

Tính năng quan trọng và được mong chờ nhất của Angular 8 là IVY render engine. IVY là trình biên dịch Angular hoạt động như một cơ chế render mới. Lợi ích của IVY là tạo ra các bundle nhỏ có thể thêmdễ dàng. IVY cơ bản là một cải tiến của Angular. Sau khi chuyển sang IVY thì ứng dụng đã có vẫn làm việc như trước đây nhưng giảm kích thước bundle. Trong Angular 8, Google giới thiệu bản preview cho IVY. Mục tiêu chính của bản này là nhận phản hồi từ các Developer liên quan tới Ivy. Nó được khuyến nghị không dùng cho môi trường production.

Sự khác nhau giữa các phiên bản angular

Figure 1: Kích thước Bundle của ứng dụng Hello World với Angular Ivy và không có Ivy. (nguồn ngconf 2019 Keynote bởi Brad Green và Igor Minar)

Tạo ngconf 2019, Brad Green, Techincal Director của Angular Team tạo Google nói Ivy sẽ có một cải tiến đáng kể liên quan đến kích thước bundle và tương thích với tính năngDiffernent Loading. Chúng ta sẽ có các lợi ích sau đây khi sử dụng Ivy:

  1. Nó sẽ giúp biên dịch nhanh hơn (dự kiến phát hành ở Angular 9)
  2. Nhiều cải tiến kiên quan đến check type trong template và bắt lỗi trong thời gian build và giúpngười dùng giảmgặp lỗi ở giai đoạn runtime.
  3. Bundle size nhỏ hơn so với hiện tại
  4. Nó cũng có thể tương thích ngược với các ứng dụng đã phát triển trước đây.
  5. Code được tạo bởi Angular Complier sẽ dễ dàng để đọc hiểu hơn.
  6. Bạn có thể debug cả template, tính năng này chắc chắn sẽ làm rất nhiều developer thích thú.

Và nếu bạn muốn sử dụng Ivy trong ứng dụng mới của mình, bạn có thể tạo mới project với option enable-ivy

ng new ivy-project --enable-ivy

Câu lệnh trên tạo mới Angular CLI sẽ lưu cấu hình trong tsconfig.json file

"angularCompilerOptions": { "enableIvy": true }

Cấu hình trên có thể thêm bằng tay vào bất cứ ứng dụng vũ nào sau khi upgrade lên Angular 8. Một khuyến nghị là nếu bạn muốn dùng Ivy trong ứng dụng, bạn có thể chạy ứng dụng trong mode debug với mode AOT mode.

ngserve--aot

Chào anh Nghĩa. Em khá ngạc nhiên với background của anh, anh có thể nói một chút về nó?

Trước đây anh từng học lớp Cử nhân tài năng, ngành Công nghệ thông tin tại trường Đại học Khoa học tự nhiên. Trong thời gian học ở trường, anh cũng tham gia một số cuộc thi lập trình và mang về một số giải thưởng. Ví dụ như giải 3 cuộc thi lập trình ACM toàn quốc.

Nhưng vì cảm thấy chán và một phần ham chơi (cười) nên anh đã bỏ học giữa chừng để đi làm luôn.

Thời gian đó anh bị mọi người chỉ trích rất nhiều, ai cũng bảo anh không làm được gì đâu. Anh đã cố gắng rất nhiều để chứng minh cho họ thấy rằng không có bằng Đại học thì vẫn có thể thăng tiến trong công việc, người ta tuyển mình vì năng lực chứ không phải vì tấm bằng.

Và như em thấy đó, anh không thất nghiệp mà vẫn theo đuổi công việc Developer cho đến tận bây giờ.

Công việc đầu tiên sau khi anh dừng sự nghiệp học tập?

Anh làm Partner cho Sino Corporation. Công ty này bán các sản phẩm về mã vạch (barcode), nhiệm vụ của anh là viết phần mềm đi kèm giúp sử dụng sản phẩm. Đây cũng là lần đầu anh tiếp xúc với Angular.

Angular là gì vậy anh?

Angular là một JavaScript framework dùng để viết giao diện web (Front-end), được phát triển bởi Google.

Anh lấy ví dụ: bình thường nếu chỉ làm bằng tay, em sẽ làm ra được 10 cây viết/ngày nhưng nếu sử dụng công cụ máy móc, em sẽ làm ra được 100, thậm chí 1000 cây viết/ngày.

Angular đối với Developer cũng như công cụ ở trên vậy, nếu không sử dụng framework này thì sẽ mất rất nhiều thời gian để hoàn thiện giao diện web.

Đây có phải là lý do duy nhất khiến Developer sử dụng Angular?

Anh nghĩ ngoài tiết kiệm thời gian thì Developer còn sử dụng Angular vì một số lý do:

  • Angular được “chống lưng” bởi Google, nó khiến Developer có cảm giác được đảm bảo. Mặc nhiên, họ sẽ ám thị rằng framework này khó mà bị “khai tử”, vì vậy cứ yên tâm sử dụng.
  • Cộng đồng người dùng lớn nên nếu có thắc mắc gì cũng sẽ nhanh chóng được giải đáp.
  • Giúp phát triển Ứng dụng trang đơn (Single-page Application). Đây là ứng dụng chạy trên browser mà không bắt buộc phải tải lại trang khi sử dụng.

Cá nhân anh thích Angular còn bởi vì framework này được viết bằng ngôn ngữ TypeScript do Microsoft phát triển, dễ đọc (readable), dễ bảo trì (maintainable).

1. Angular là gì?

Angular là một JavaScript framework sử dụng để viết giao diện web. Chúng được phát triển bởi Google. Nhờ Angular, hiệu suất xây dựng ứng dụng sẽ tăng gấp nhiều lần. Nếu developer không sử dụng Angular, họ có thể mất rất nhiều thời gian để có thể hoàn thiện giao diện web.

Angular sở hữu rất nhiều ưu điểm. Đầu tiên phải kể đến là tính mô-đun. Mỗi chức năng cốt lõi khác nhau sẽ được chuyển sang các mô-đun khác nhau. Điều đó khiến việc thực hiện viết giao diện web sẽ nhanh chóng hơn, nhẹ nhàng hơn. Cũng chính điều này đã khiến Angular được sử dụng rất phổ biến với nhiều developer hiện nay.

Sự khác nhau giữa các phiên bản angular
Angular là tên gọi một framework nổi tiếng được sử dụng để xây dựng các ứng dụng web – Nguồn Unsplash

Sự khác biệt giữa AngularJS, Angular 2, Angular 4

Sự khác nhau giữa các phiên bản angular
Đặng Lệ Quyên · Đặng Lệ Quyên 02:00 31/10/2017
3 ngày trước

Angular được coi là một trong những khung JavaScript nguồn mở tốt nhất. Nhóm Angular của Google đã phát hành Angular 2 như một sự thay đổi hoàn toàn cho khung Angular 1 ban đầu của nó. Đối với những bạn vẫn đang học các khung Angular, blog này sẽ đưa ra sự so sánh giữa Angular 1 (AngularJS), Angular 2 và Angular 4

Kiến trúc

Kiến trúc của Angular 1 dựa trên Model View Controller .

Sự khác nhau giữa các phiên bản angular

Angular 2 bao gồm một sự thay đổi đáng kể về cấu trúc so với Angular 1. Angular 2 dựa trên cấu trúc Thành phần , giống như những gì chúng ta thấy trong React.js.

Sự khác nhau giữa các phiên bản angular

Angular 2 đã tập trung vào phát triển ứng dụng di động. Angular 4 nhanh hơn nhiều và giảm mã được tạo của các thành phần; nó cũng cho phép nhà phát triển tạo mã mà bạn có thể sử dụng trong chế độ gỡ lỗi và chế độ sản xuất.

Loại tệp

Các ứng dụng Angular 1 được xây dựng bằng JavaScript.

var angular1 = angular .module('uiroute', ['ui.router']); angular1.controller('CarController', function ($scope) { $scope.CarList = ['Audi', 'BMW', 'Bugatti', 'Jaguar']; });

Các ứng dụng Angular 2 được xây dựng trên Typecript , đây là một siêu bộ JavaScript.

import { platformBrowserDynamic } from "@angular/platform-browser-dynamic"; import { AppModule } from "./app.module"; platformBrowserDynamic().bootstrapModule(AppModule); import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "../app/app.component"; @NgModule({ imports: [BrowserModule], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } import { Component } from '@angular/core' @Component({ selector: 'app-loader', template: ` <div> <div> <h4>Welcome to Angular with ASP.NET Core and Visual Studio 2017</h4> </div></div> ` }) export class AppComponent{}

Sự thay đổi cú pháp mã và tệp hoàn chỉnh này khiến cho việc nâng cấp từ Angular 1 lên Angular 2. Angular 4 hoạt động trên phiên bản mới nhất của TypeScript (2.1 và 2.2)

Tái sử dụng mã

$ scope , được đặc trưng trong Angular 1, đã bị xóa khỏi Angular 2 và Angular 4. Trong các phiên bản mới hơn của Angular, các nhà phát triển thể hiện có thể thêm các chỉ thị và điều khiển mới. Ngoài ra, các tính năng phân tách thành phần khác nhau đã tăng khả năng sử dụng lại mã.

Hỗ trợ di động

Angular 1 được tạo ra cho UI đáp ứng và ràng buộc hai chiều của các ứng dụng. Nhưng nó không hỗ trợ di động. Angular 2 được tạo ra với kiến ​​trúc hướng di động.NativeScript đã giúp phát triển di động Angular 2 nhanh hơn và hiệu quả hơn.

Sự khác nhau giữa các phiên bản angular

Bắt đầu với Angular 2, các nhà phát triển có thể tạo các ứng dụng đa nền tảng với khung này.

Tính năng và hiệu suất

Xem động cơ:

Công cụ khung nhìn đã giới thiệu Angular 4, giúp giảm kích thước của mã được tạo bằng cách sử dụng phương thức Ahead of Time (AOT).

Thân thiện với SEO:

Nhóm Angular đã giới thiệu bản dựng Ứng dụng Trang đơn (SPA) mới, mạnh mẽ để thân thiện với Công cụ Tìm kiếm (SEO) trong khi hiển thị HTML ở phía máy chủ.

Gói hoạt hình:

Hàm hoạt hình Angular yêu cầu mô đun @ angular / code, về cơ bản tạo ra gói riêng của nó. Với Angular 4,] bạn không sử dụng gói hoạt hình, giúp giảm kích thước mã của bạn.

Nhỏ hơn và nhanh hơn:

Các chương trình Angular 4 sẽ tiêu tốn ít dung lượng hơn và chạy nhanh hơn, do đó tăng tốc độ cho ứng dụng của bạn.