TypeScript
Có thể vi phạm bản quyền! Văn bản đã viết ở đây có thể vi phạm quyền tác giả của những nguồn sau: Gửi người viết bài: Gợi ý: Nếu bạn không chắc chắn về bản quyền và không có thời gian tự viết bài, bạn có thể viết ngắn gọn để giới thiệu chủ đề, kèm theo địa chỉ dẫn đến trang web hay sách báo có tư liệu, để người khác có thể tham khảo và viết lại bài. Không nên chép nguyên văn từ bài viết bên ngoài hay là trên mạng toàn cầu vào Wikipedia tiếng Việt, dù là chỉ chép nguyên văn vài câu trộn lẫn với những nguồn khác, vì điều này là vi phạm bản quyền và bị xóa ngay. Bạn hãy biên tập lại, tóm lược và tự viết bằng giọng văn của bạn và dẫn nguồn cho nội dung vừa biên tập đó. |
Giới thiệu
TypeScript cho phép bạn viết JavaScript theo cách bạn thực sự muốn.TypeScript là một kiểu siêu tập của JavaScript để biên dịch thành JavaScript. Sử dụng với bất kỳ trình duyệt nào. Bất kỳ mày chủ nào. Bất kỳ hệ điều hành nào. Và là nguồn Mở[1]
TypeScript được thiết kế cho các nhóm lập trình JavaScript xây dựng và duy trì chương trình JavaScript rất lớn. TypeScript giúp cho đội phát triển định nghĩa các giao diện giữa các thành phần phần mềm và nhìn sâu hơn vào hành vi các thư viện JavaScript đang có. TypeScript còn cho phép đội phát triển giảm xung đột tên bằng việc tổ chức mã code thành các module được nạp động. Kiểu hệ thống tùy chọn của TypeScript cho phép lập trình viên JavaScript sử dụng các công cụ phát triển hiệu quả cao: kiểm tra tĩnh, điều hướng dựa trên ký hiệu, tự hoàn thành lệnh, sửa lại tham số code. Cú pháp TypeScript là tập con của cú pháp Ecmascript 5 (ES5). Mỗi chương trình JavaScript là một chương trình TypeScript. Trình biên dịch TypeScript thực hiện biến đổi file cục bộ trong chương trình TypeScript và không đặt lại khai báo biến trong TypeScript. Điều này làm cho nội dung JavaScript khi tạo ra rất khớp với nguồn TypeScript vào. TypeScript không biến đổi tên biến, làm dễ dàng gỡ lỗi phát sinh từ JavaScript. Tùy chọn TypeScript source maps cho phép gỡ lỗi ở cấp file mã nguồn. Các công cụ TypeScript thông thường sẽ sinh file JavaScript khi lưu, test, chỉnh sửa, chu trình nạp lại thông thường được dùng khi phát triển JavaScript. Cú pháp TypeScript gồm một số đặc điểm đề xuất của ES6, như các lớp (class) và modules: Các lớp cho phép lập trình viên thể hiện mẫu hướng đối tượng chung theo một chuẩn chung , thực hiện các tính năng như kế thừa sẽ dễ hiểu code cũng như tính tương thích. Các module cho phép lập trình viên tổ chức code vào các thành phần trong khi tránh các xung đột về tên. Trình biên dịch TypeScript cung cấp tùy chọn sinh code cho module hỗ trợ cả nạp nội dung module kiểu động hoặc tĩnh. Mặt khác TypeScript cũng cung cấp cho lập trình viên một hệ thống tùy chọn các chú giải. Các chú giải đó như chú thích JSDoc trong hệ thống đóng, nhưng trong TypeScript chúng được tích hợp trực tiếp vào cú pháp ngôn ngữ. Sự tích hợp này làm cho code dễ đọc hơn và giảm chi phí duy trì sự đồng bộ các chú giải theo các biến tương ứng. Hệ thống kiểu TypeScript cho phép lập trình viên giới hạn truy cập của các đối tượng JavaScript, và sử dụng các công cụ thực hiện các giới hạn đó. Để giảm tối thiểu số các chú giải cần thiết làm cho các công cụ trợ nên tiện dụng hơn, hệ thống kiểu TypeScript thực hiện sử dụng rộng kiểu suy luận.
Các tính năng nổi bật của TypeScript:
- Hỗ trợ mã JavaScript chuẩn
- Cung cấp các kiểu dữ liệu chuẩn thống nhất
- Đóng gói các thành phần thông qua các class và module
- Hỗ trợ khởi tạo (constructor), thuộc tính (property) và hàm (function) cho các class
- Cho phép định nghĩa giao diện
- Cho phép sử dụng kiểu generic: TypeScript hỗ trợ các biến, hàm, lớp, giao diện sử dụng kiểu generic và các ràng buộc cho kiểu generic
- Hỗ trợ hàm mũi tên (arrow function) – hay còn có tên khác là biểu thức lambda (lambda expression)
- Xổ code thông minh và kiểm tra cú pháp tức thì
TypeScript sử dụng được ở đâu, nền tảng nào?
Vì TypeScript được biên dịch thành JavaScript vì thế TypeScript có thể để phát triển ứng dụng sử dụng JavaScript:
- Node.js : Nền tảng hiện đang được sử dụng rộng rãi cho phép sử dụng JavaScript phát triển ứng dụng web ở tầng backend.
- Phát triển frontend cho ứng dụng web: Các ứng dụng web đòi hỏi các tính toán từ đơn giản đến phức tạp hiện nay được phát triển hầu hết bằng JavaScript. Với việc sử dụng TypeScript để phát triển các ứng dụng đó sẽ làm cho công việc phát triển frontend dễ dàng hơn, nhất là các ứng dụng phức tạp như SPA (Single Page Application - Ứng dụng sử dụng trang đơn lẻ)
Các công cụ nào hiện nay cho phép biên tập TypeScript?
Ở thời điểm hiện tại thì TypeScript đã được hỗ trợ và cho phép biên tập với các công cụ biên tập code nổi tiếng là:
- Sublime Text
- Emacs
- Vi
- Visual Studio : phiên bản 2012 thì cần cài đặt add-in, từ 2013 Update 2 thì được tích hợp sẵn
- TypeScript Playground: Phiên bản biên tập và biên dịch TypeScript trực tiếp trên nền web
- Visual Studio Code: Một công cụ rất mới miễn phí của Microsoft cho phép biên tập đa dạng các ứng dụng web và cloud chạy được đa hệ điều hành
- WebStorm
- Atom
- Eclipse
TypeScript có sử dụng cùng các thư viện JavaScript đã có được không?
Chúng ta hoàn toàn có thể sử dụng lại các thư viện JavaScript đã có kết hợp hoàn hảo với code TypeScript mà không gặp trở ngại gì. Đó là bởi vì khi dùng TypeScript, ta có thể thêm vào code TypeScript các file khai báo nền (có đuôi mở rộng là .d.ts). Hiện nay có rất nhiều các thư viện JavaScript nổi tiếng đều có các khai báo này và chúng được tập hợp ở một kho gọi là DefinitelyTyped.
TypeScript có thể thao tác với các thành phần DOM của ứng dụng web không?
Các thành phần DOM cũng như các thành phần chính tồn tại trong JavaScript ở thời điểm chạy đều được định nghĩa trong file khai báo nền lib.d.ts và được đóng gói đi kèm với TypeScript.
Tài liệu tham khảo
http://blog.machban.vn/2015/10/typescript-m-la-ai-typescript-who-are.html
http://itprotraining.vn/vi/typescript/22/gioi-thieu-ve-typescript
http://itprotraining.vn/vi/typescript/23/tim-hieu-them-ve-typescript