minhq460 / ProjectFront-end_Group17

Project Font-end nhóm 17
0 stars 1 forks source link

Tìm hiểu về Typescript #4

Open minhq460 opened 3 years ago

minhq460 commented 3 years ago

Nội dung: Tìm hiểu về typescripst Hình thức: comment lên issues này Hạn chót: 23h59 ngày 30/5/2021

troisang2404 commented 3 years ago

Định nghĩa Typescript là gì?

TypeScript là gì? – Là một ngôn ngữ được Microsoft tặng free cho chúng ta, nền tảng của TypeScript ít nhiều cũng có sự liên quan đến JavaScript vì nó là một ngôn ngữ mã nguồn mở của JavaScript. Vai trò của TypeScript là dùng để thiết kế và xây dựng các dự án ứng dụng quy mô lớn mang tính chất phức tạp.

Chức năng của TypeScript là gì?

Static Typing Một trong những chức năng không thể lẫn vào đâu được của TypeScript đó là hỗ trợ ‘static typing’. Đồng nghĩa với việc bạn có thể khai báo kiểu cho biến, và trình biên dịch sẽ giảm được tỷ lệ gán sai kiểu của các giá trị. Nếu khai báo kiểu bị bỏ qua, chúng sẽ được tự động phát hiện từ code của bạn. Các kiểu dữ liệu được sử dụng phổ biến nhất: • Any – Một biến với kiểu này có thể có giá trị là một string, number hoặc bất kỳ kiểu nào. • String – Giống chức năng của string trong JavaScript, có thể được bao quanh bởi ‘dấu nháy đơn’ hoặc “dấu nháy kép”. • Number – Tất cả giá trị số trong hàm đều được biểu diễn bởi kiểu number, không có định nghĩa riêng cho số nguyên (interger), số thực (float) cũng như các kiểu khác. • Boolean – true hoặc false, sử dụng 0 và 1 sẽ gây ra lỗi biên dịch. • Arrays – Có 2 kiểu cú pháp: my_arr: number[]; hoặc my_arr: Array. • Void – sử dụng khi hàm không trả lại bất kỳ giá trị nào.

Interfaces Chức năng chính của Interfaces là sử dụng để kiểm tra, xem một đối tượng có phù hợp với một cấu trúc nhất định hay không, trợ giúp trong giai đoạn giai đoạn phát triển. Bằng cách định nghĩa một interface, ta có thể đặt tên trong trường hợp có sự kết hợp đặc biệt của các biến, đảm bảo rằng chúng luôn luôn đi cùng nhau.

Classes Trong các dự án, ứng dụng lớn, lập trình hướng đối tượng rất hay được các Dev sử dụng nhất là trong các ngôn ngữ như Java hoặc C#. TypeScript cung cấp hệ thống class khá tương đồng với các ngôn ngữ này ví dụ như chức năng kế thừa, abstract classes, interface implementations, setter/getters, …

Modules Tính module hóa rất quan trọng khi bạn đang thực hiện những dự án lớn. Nó phân chia code thành nhiều thành phần nhỏ và còn có khả năng tái sử dụng giúp dự án của bạn dễ tổ chức và dễ hiểu hơn so với file có hàng ngàn dòng code. TypeScript có chức năng exporting và importing các module, nhưng bản thân nó không thể xử lý thực sự việc liên kết giữa các file. Dùng require.js cho các ứng dụng client và CommonJS cho Node.js để cho phép modules TS dựa trên các thư viện của bên thứ ba. Generics Chức năng của Generics là cho phép cùng một hàm có thể chấp nhận các tham số với nhiều kiểu khác nhau. Việc tạo ra các thành phần có thể tái sử dụng với generics tốt hơn sử dụng kiểu any, vì generics bảo tồn kiểu của các biến vào và ra của chúng.

### Cài đặt TypeScript Cách dễ nhât để thiết lập TypeScript là thông qua trình quản lý NPM (Node.js). Các bạn có thể dễ dàng thao tác và sử dụng thử các lệnh cơ bản, đơn giản sau đây dưới để có thể cài đặt TypeScript package toàn cục:

npm install -g typescriptjavascript:void(0)

Open bât kỳ cửa sổ terminal ở bất kỳ đâu và chạy lệnh tsc -v, nếu cài đặt thành công màn hình sẽ như thế này:

tsc -v Version 1.8.10

### Hướng dẫn biên dịch sang từ TypeScript sang JavaScript TypeScript được viết trong các file .ts (hoặc .tsx cho JSX), nó không thể sử dụng trực tiếp trong trình duyệt và cần biên dịch thành JavaScript. Câu lệnh sau sẽ nhận một file TypeScipt là main.ts và chuyển nó thành JavaScipt main.js. Nếu main.js đã tồn tại nó sẽ bị ghi đè:

tsc main.ts

Trong cùng 1 thời điểm, chúng ta có thể biên dịch nhiều file bằng cách liệt kê chúng hoặc áp dụng các wildcard:

Will result in separate .js files: main.js worker.js.

tsc main.ts worker.ts

Compiles all .ts files in the current folder. Does NOT work recursively.

tsc *.ts

Chúng ta cũng có thể sử dụng tùy chọn –watch để tự động biên dịch một file TypeScript khi có thay đổi:

Initializes a watcher process that will keep main.js up to date.

tsc main.ts --watch

Nguồn: https://topdev.vn/blog/typescript-la-gi-uu-va-nhuoc-diem-cua-typescript/

minhq460 commented 3 years ago

Typescript là gì? Typescript là một dự án mã nguồn mở được Microsoft phát triển, được xem là một phiên bản nâng cao của Javascript. TypeScript là một ngôn ngữ giúp cung cấp quy mô lớn hơn so với JavaScript. Vì nó được bổ sung những tùy chọn kiểu tĩnh và các lớp hướng đối tượng, nó bao hàm luôn ES6(ECMAScript 6 2015) - phiên bản mới nhất của Javascript. TypeScript thêm các namespace, class và module tùy chọn vào JavaScript. TypeScript hỗ trợ các công cụ cho các ứng dụng JavaScript quy mô lớn cho bất kỳ trình duyệt nào, cho bất kỳ máy chủ nào, trên bất kỳ hệ điều hành nào. Ưu điểm Dễ dàng hơn trong phát triển các dự án lớn, được hỗ trợ bởi các Javascript Framework lớn. Hỗ trợ OOP mạnh: Hầu hết các cú pháp hướng đối tượng đều được hỗ trợ bởi Typescript như kế thừa, đóng gói, constructor, abstract, interface, implement, override...v.v Cách tổ chức code rõ ràng hơn bởi được hỗ trợ các kỹ thuật mới nhất và hỗ trợ lập trình hướng đối tượng: Hỗ trợ cơ chế giúp kiến trúc hệ thống code hướng module, hỗ trợ namespace, giúp xây dựng các hệ thống lớn nơi mà nhiều dev có thể làm việc cùng nhau một cách dễ dàng hơn. Hỗ trợ các tính năng mới nhất của Javascript. Một lợi thế của Typescript nữa là mã nguồn mở vì vậy nó miễn phí và có cộng đồng hỗ trợ rất lớn.

trung9266 commented 3 years ago
*TypeScript là một ngôn ngữ lập trình bổ sung các kiểu vào JavaScript. Nó cho phép chúng tôi viết JavaScript với một bộ công cụ được gọi là hệ thống loại có thể phát hiện ra các lỗi tiềm ẩn, làm rõ cấu trúc và giúp cấu trúc lại mã của chúng tôi. Ngoài ra, TypeScript đã thêm các tính năng ngôn ngữ JavaScript mới hơn, chẳng hạn như các hàm và lớp mũi tên, nhiều năm trước khi chúng được thêm vào JavaScript chính thức.
*Cách sử dụng:
      -Mã TypeScript trong các tệp có phần mở rộng là .ts .
      -Chạy mã trên trình biên dịch. Trình biên dịch sẽ kiểm tra xem mã có tuân thủ các tiêu chuẩn của TypeScript hay không và nó sẽ hiển thị lỗi khi không tuân thủ.
      -Nếu mã TypeScript có thể được chuyển đổi thành JavaScript đang hoạt động, trình biên dịch sẽ xuất ra phiên bản JavaScript của tệp ( .js ).
*Mã TypeScript là một tập hợp siêu mã JavaScript — nó có tất cả các tính năng của JavaScript truyền thống nhưng thêm một số tính năng mới.
*Cung cấp mã TypeScript này làm đầu vào: let firstName = 'Trung';  phiên dịch sang: javascript: => let firstName = 'Trung';
*Hỗ trợ OOP mạnh: Hầu hết các cú pháp hướng đối tượng đều được hỗ trợ bởi Typescript như kế thừa, đóng gói, constructor, abstract, interface, implement, override...