Flutter tutorial – Flutter là gì ? Giới thiệu chi tiết về Flutter
Chào các bạn đến bài viết tiếp theo về chủ để Flutter là gì. Trong phần này Báo Flutter sẽ chia sẻ chi tiết về đặc điểm của Flutter – một bộ SDK (software development kit) ưu việt được Google tạo ra.
Flutter là gì ?
– Flutter là một bộ open source UI software development kit (SDK) được tạo bởi Google.
– Flutter được dùng để phát triển các ứng dụng cho các thiết bị di dộng với chỉ một basecode chạy trên cả Android và iOS, các ứng dụng trên máy tính và ứng dụng web.
Nguồn gốc của Flutter
– Năm 2015, xuất hiện một bản version đầu tiên của Flutter có tên là “Sky” trong một buổi Dart developer Summit, được chạy trên hệ điều hành Android có kết quả khả quan.
– Tháng 5, 2017 Phiên bản chính thức đầu tiên của Flutter đã được phát hành.
– Tới thời điểm hiện tại rất nhiều phiên bản Stable đã được phát hành liên tục.
– Hiện nay, công đồng Flutter đang phát triển với tốc độ rất nhanh và đóng góp một phần không nhỏ vào việc phát triển Flutter SDK.
– Có rất nhiều công ty đã phát triển các ứng dụng của mình bằng Flutter. Dưới đây là một số công ty điển hình :
( Nguồn ảnh: flutter.dev)
Cấu trúc của bộ Flutter SDK
– Flutter không phải là một loại ngôn ngữ lập trình, nó là một bộ SDK được viết bởi nhiều ngôn ngữ (C, C++, Dart) . Đặc biệt tầng Framework của Flutter viết bằng ngôn ngữ Dart.
– Dưới đây là cấu trúc của Flutter SDK :
( Nguồn ảnh: https://flutter.dev/docs/resources/technical-overview )
* Dart Framework
+ Đây là layer cao nhất trong bộ Flutter SDK được viết bằng ngôn ngữ Dart.Hầu hết các developer sử dụng layer này hơn so với các layer dưới trong quá trình xây dựng ứng dụng.
+ Tầng Dart framework này cung cấp cho các developer những thư viện hữu ích để việc design ứng dụng được nhanh hơn và ít code hơn.
Trong quá trình viết ứng dụng các bạn sẽ thường xuyên sử dụng các khái niệm Material, Widget, Cupertino.. khi đó bạn sẽ hiểu chúng để làm gì.
* Engine
+ Đây là layer viết bằng C và C++, nó hỗ trợ cho việc rending ở tầng thấp bằng việc sử dụng thư viện đồ hoạ Skia của Google, thực thi các core libary của Flutter bao gồm : animation, graphics, file, network I/O …
+ Ngoài ra nó còn có nhiệm vụ giao tiếp với các platform SDKs của Android và iOS.
* Embedder
+ Bạn có thể thu gọn layer này như hình bên dưới:
+ Nhìn qua là các bạn có thể thấy, layer này có nhiệm vụ giao tiếp với các platform của thiết bị ( Android, iOS, ..). Còn về chi tiết bạn có thể xem thêm trong các tài liệu của Google.
Chúng ta nên tập trung nhiều vào Dart Framework, vì nó được sử dụng nhiều nhất trong quá trình xây dựng một ứng dụng. Các tầng dưới ( Engine, Embedder) sẽ được custom bởi các kỹ sư google và các developer có chuyên môn sâu.
Kết luận: Như vậy chúng ta đã hiểu được Flutter là gì, và cấu trúc cơ bản của Flutter SDK. Xin nhắc lại Flutter không phải là một ngôn ngữ lập trình, nó là một bộ Software Development Kit (SDK) được viết bằng các ngôn ngữ lập trình khác nhau ( Dart, C & C++ ).
Khi lập trình ứng dụng chúng ta sẽ làm việc chủ yếu với Dart Framework và ngôn ngữ sử dụng là Dart.
Để tìm hiểu thêm về Ưu và nhược điểm của Flutter, mời các bạn đọc tiếp bài viết tiếp theo của chương này.
Chúc các bạn có được thêm nhiều kiến thức từ Báo Flutter !