CHƯƠNG I: GIỚI THIỆU VỀ CÔNG CỤ HỖ TRỢ PHÁT TRIỂN ĐỀ TÀI Để có ứng dụng đi vào sử dụng thực tế, phần mềm cần phải được tích hợp bởi các nền tảng công nghệ khác nhau. Sau đây em xin trình bày chi tiết hơn về các công nghệ được sử dụng trong việc tạo lập và thiết đặt. Môi trường cài đặt Việc lựa chọn công nghệ sao cho phù hợp với ứng dụng muốn phát triển là điều quan trọng. Với sự phát triển của công nghệ thông tin như hiện nay, nhiều công nghệ mới ra đời, xuất hiện nhiều ngôn ngữ mới để đáp ứng cho nhiều nhu cầu khác nhau thuộc các lĩnh vực khác nhau.
Dart là một ngôn ngữ còn khá mới mẻ và đầy hứa hẹn về các công nghệ mới để phát triển và hơn thế nữa. Đề tài: “xây dựng ứng dụng thương mại điện tử vezor bằng flutter” được xây dựng dựa vào kiến thức nghiệp vụ kết hợp với công nghệ hiện có trong ngôn ngữ. - Công nghệ sử dụng: Flutter - Môi trường phát triển: Visual Studio Code, Android Studio - Ngôn ngữ lập trình: Dart - Lưu trữ dữ liệu Firebase. Giới thiệu về Visual Studio Code Visual Studio Code là công cụ soạn thảo mã nguồn do Microsoft phát triển.
Nó được giới thiệu lần đầu tiên vào năm 2015 và chính thức được phát hành vào năm 2016. Visual Studio Code (VS Code) có dung lượng khá nhẹ và khả năng vận hành mạnh mẽ trên cả 3 nền tảng được phát triển bởi Microsoft là: macOS, Linux và Windows. Đặc biệt, VS Code là một mã nguồn mở và hoàn toàn miễn phí. Vì vậy, nó trở thành cái tên quen thuộc của nhiều lập trình viên.
Có thể nói, Visual Studio Code là sự kết hợp cực kỳ hoàn hảo giữa IDE và Code Editor. Nó hỗ trợ cho người dùng rất nhiều tiện ích như: đổi theme, hỗ trợ Git, cải tiến mã nguồn, có syntax highlighting, hỗ trợ cho quá trình gõ code, sử dụng các phím tắt và nhiều tùy chọn khác nhau,… 3 Hiện nay, Visual Studio Code chiếm ưu thế ở hầu hết các môi trường phát triển dành cho lập trình viên. Trong một khảo sát của Stack Overflow (năm 2019), Visual Studio Code được đánh giá là môi trường phát triển được dùng phổ biến nhất với hơn 50% lượt bình chọn trong tổng số hơn 90 nghìn người dùng tham gia khảo sát. Trong khi đó, con số này của năm 2018 chỉ có 35%.
Điều này cho thấy độ phủ sóng ngày càng rộng rãi và sự hữu ích mà VSCode mang lại cho lập trình viên. Visual Studio Code dành cho những đối tượng nào? VSCode thích hợp sử dụng cho nhiều đối tượng khác nhau như: - Lập trình viên chuyên nghiệp. - Người yêu thích công việc lập trình hoặc đang theo học chuyên ngành công nghệ thông tin. - Tester - Các data administrator.
Nhìn chung, hầu hết những người yêu thích và quan tâm đến lập trình đều có thể sử dụng Visual Studio Code phục vụ cho công việc cũng như mục đích học tập cá nhân. Những tính năng nổi bật của Visual Studio Code : - Intellisense Intellisense là sự kết hợp giữa trí tuệ nhân tạo và code auto-complete. Nó sẽ cung cấp hàng loạt các đề nghị, gợi ý và mô tả ngắn khi chúng ta đang viết code. Những gợi ý sẽ được tính toán dựa trên nhiều nhân tố như: cú pháp, ngôn ngữ lập trình, hàm, biến,… - Tích hợp sẵn Git Git trên Visual Studio Code sẽ cung cấp cho bạn tất cả các git action cơ bản như: push, commit code,… Đặc biệt, qua từng phiên bản khác nhau thì tính năng hỗ trợ Git ngày càng đầy đủ và tiện ích.
- Debugger Hỗ trợ debug là một tính năng hữu ích của VSCode. Theo mặc định, VSCode chỉ đính kèm chương trình Debug hỗ trợ riêng cho Node JS. Tuy nhiên, bạn hoàn toàn có thể cài đặt thêm extension để có thể debug cho những ngôn ngữ khác theo nhu cầu sử dụng. - Tích hợp Terminal 4 Terminal là chương trình giao diện cửa sổ dòng lệnh.
Đây là một tính năng vô cùng quan trọng với lập trình viên. Khi sử dụng VSCode, bạn có thể mở một hoặc có thể mở nhiều tab terminal tại thư mục bạn đang làm việc, giúp nâng cao hiệu quả công việc. - Khả năng mở rộng và tùy chỉnh Visual Studio Code cung cấp cho người dùng khả năng tùy chỉnh tuyệt vời như: tùy chỉnh theme, kích thước, font chữ, keyboard shortcut, coding style, tùy chỉnh tính năng,… một cách linh hoạt. Bên cạnh đó, bạn cũng có thể tùy chỉnh trên từng workshop vô cùng tiện lợi.
- Code Spell Checker Tính năng này cho phép người dùng kiểm tra tên hàm, các comment, tên biến sai chính tả một cách nhanh chóng. Từ đó giúp bạn có thể chỉnh sửa dễ dàng và nhanh chóng hơn. Ngoài ra, VSCode còn cung cấp rất nhiều tính năng hữu ích khác. Giới thiệu về Flutter 3.
Flutter là gì? Flutter được phát triển nhằm giải quyết bài toán thường gặp trong mobile là Fast Development và Native Performance. Nếu như React Native chỉ đảm bảo Fast Development và code native thuần chỉ đảm bảo Native Performance thì Flutter làm được cả 2 điều trên.Flutter được viết bởi ngôn ngữ dart do Google phát triển Flutter là một bộ SDK đa nền tảng, các ứng dụng Flutter có thể hoạt động trên cả iOS và Android. Nó như một thủ thuật khôn khéo để tương thích được với framework UI trên cả hai hệ điều hành này. Các ứng dụng này không biên dịch trực tiếp với các ứng dụng native của Android và iOS.
Đóng gói cả một engine đi kèm cùng ứng dụng sẽ làm cho kích thước bộ cài đặt lớn hơn hẳn. Trang Hỏi đáp của Flutter cho biết, một ứng dụng “trống” thông thường sẽ chỉ khoảng 6-7MB trên Android, vì vậy dù là ứng dụng nào, phần kích thước tăng lên cũng là rất nhiều. Nhưng lợi ích của việc này là các ứng dụng này sẽ rất nhanh. Flutter được thiết kế từ đầu để đạt tới tốc độ khung hình 60fps.
Trong khi đây không phải là một con số hiếm gặp trên iOS, nhưng với Android, bạn có thể cảm thấy sự khác biệt rõ rệt ngay lập tức. Cũng nhờ việc xuất xưởng cùng với cả một nền tảng cho ứng dụng của mình, các nhà phát triển sẽ tránh được nhiều vấn đề về sự phân mảnh của Android. Tại sao nên sử dụng Flutter ? Phát triển ứng dụng nhanh chóng: Tính năng hot reload của nó giúp bạn nhanh chóng và dễ dàng thử nghiệm, xây dựng giao diện người dùng, thêm tính năng và sửa lỗi nhanh hơn. Trải nghiệm tải lại lần thứ hai, mà không làm mất trạng thái, trên emulator, simulator và device cho iOS và Android.
UI đẹp và biểu cảm: Thỏa mãn người dùng của bạn với các widget built-in đẹp mắt theo Material Design và Cupertino (iOS-flavor), các API chuyển động phong phú, scroll tự nhiên mượt mà và tự nhận thức được nền tảng. Truy cập các tính năng và SDK native: Làm cho ứng dụng của bạn trở nên sống động với API của platform, SDK của bên thứ ba và native code. Nó cho phép bạn sử dụng lại mã Java, Swift và ObjC hiện tại của mình và truy cập các tính năng và SDK native trên iOS và Android. Phát triển ứng dụng thống nhất: Flutter có các công cụ và thư viện để giúp bạn dễ dàng đưa ý tưởng của mình vào cuộc sống trên iOS và Android.
Nếu bạn chưa có kinh nghiệm phát triển trên thiết bị di động, thì Flutter là một cách dễ dàng và nhanh chóng để xây dựng các ứng dụng di động tuyệt đẹp. Nếu bạn là một nhà phát triển iOS hoặc Android có kinh nghiệm, bạn có thể sử dụng Flutter cho các View của bạn và tận dụng nhiều code Java / Kotlin / ObjC / Swift hiện có của bạn. - Đặc điểm nổi bật 1. Fast Development: Tíng năng Hot Reload hoạt động trong milliseconds để hiện thị giao diện tới bạn.
Sử dụng tập hợp các widget có thể customizable để xây dựng giao diện trong vài phút. Ngoài ra Hot Reload còn giúp bạn thêm các tính năng, fix bug tiết kiệm thời gian hơn mà không cần phải thông qua máy ảo, máy android hoặc iOS.Expressive and Flexible UI: Có rất nhiều các thành phần để xây dựng giao diện của Flutter vô cùng đẹp mắt theo phong cách Material Design và Cupertino, hỗ trợ nhiều các APIs chuyển động, smooth scrolling.Native Performance: Các widget của fluter kết hợp các sự khác biệt của các nền tảng ví dụ như scrolling, navigation, icons, font để cung cấp một hiệu năng tốt nhất tới iOS và Android. Giới thiệu về ngôn ngữ Dart 4. Dart là gì? Dart là ngôn ngữ lập trình mới, được phát triển bởi Google, hiện đã được chấp thuận bởi tổ chức Ecma.
Dart được sử dụng để xây dựng các loại ứng dụng: web, server, di động (IOS và Android với công cụ Flutter). Dart là một ngôn ngữ lập trình hiện đại có mục đích chung, cấp cao, được phát triển ban đầu bởi Google. Đây là ngôn ngữ lập trình mới xuất hiện vào năm 2011, nhưng phiên bản ổn định của nó đã được phát hành vào tháng 6 năm 2017. Dart không quá phổ biến vào thời điểm đó, nhưng nó đã trở nên phổ biến khi được sử dụng bởi Flutter.
Dart là một ngôn ngữ lập trình động, dựa trên lớp, hướng đối tượng với phạm vi đóng và từ vựng. Về mặt cú pháp, nó khá giống với Java, C và JavaScript. Nếu bạn biết bất kỳ ngôn ngữ lập trình nào trong số này, bạn có thể dễ dàng học ngôn ngữ lập trình Dart. Dart là một ngôn ngữ lập trình mã nguồn mở được sử dụng rộng rãi để phát triển ứng dụng di động, ứng dụng web hiện đại, ứng dụng máy tính để bàn và Internet of Things (IoT) bằng cách sử dụng khung Flutter.
Nó cũng hỗ trợ một số khái niệm nâng cao như giao diện, mixin, lớp trừu tượng, tổng thể trường và giao diện kiểu. Nó là một ngôn ngữ biên dịch và hỗ trợ hai loại kỹ thuật biên dịch. AOT (Ahead of Time) – Nó chuyển đổi mã Dart sang mã JavaScript được tối ưu hóa với sự trợ giúp của trình biên dịch dar2js và chạy trên tất cả các trình duyệt web hiện đại. Nó biên dịch mã tại thời điểm xây dựng.
JOT (Just-In-Time) – Nó chuyển đổi mã byte trong mã máy (mã gốc), nhưng chỉ mã cần thiết. Tại sao lại sử dụng Dart? - Dart là một ngôn ngữ độc lập với nền tảng và hỗ trợ tất cả các hệ điều hành như Windows, Mac, Linux, v. - Nó là một ngôn ngữ mã nguồn mở, có nghĩa là nó có sẵn miễn phí cho tất cả mọi người. Nó đi kèm với giấy phép BSD và được công nhận bởi tiêu chuẩn ECMA.
- Nó là một ngôn ngữ lập trình hướng đối tượng và hỗ trợ tất cả các tính năng của oops như kế thừa, giao diện và các tính năng kiểu tùy chọn.