, June 27, 2022

0 kết quả được tìm thấy

Tự học ngôn ngữ Dart: Ứng dụng Dart đầu tiên

  • Đăng bởi  Groot
  •  Jul 07, 2021

  •   6 min reads
Tự học ngôn ngữ Dart: Ứng dụng Dart đầu tiên

Trong bài viết trước chúng ta đã biết một số thông tin thú vị về ngôn ngữ Dart. Từ bài này trở đi chúng ta mới thực sự bắt tay vào tìm hiểu những kiến thức về ngôn ngữ Dart và thực hành những ví dụ code cụ thể. Hãy bắt đầu viết ứng dụng đầu tiên của bạn nhé!

1. Hàm chính khởi chạy chương trình

Mỗi ứng dụng đều có một số hàm trong chương trình đóng vai trò như là hàm khởi chạy. Ngôn ngữ Dart cũng thế, hàm khởi chạy của nó chính là main().

Có thể bạn chưa quen với tên hàm này, không sao cả! Từ bây giờ, chỉ cần nhớ rằng mỗi khi bạn khởi chạy một chương trình Dart, trình biên dịch sẽ tìm kiếm hàm main() và thực thi những dòng code được viết bên trong đó. Nếu không tìm thấy hàm main() bạn sẽ gặp lỗi và ứng dụng sẽ không chạy được.

Code mà bạn viết trong hàm main() sẽ được gói lại bởi dấu ngoặc móc ({}). Hãy xem syntax đơn giản này ở hình bên dưới.

Hàm chính khởi chạy chương trình

Sau từ khóa main là bộ dấu ngoặc đơn (()) và sau dấu ngoặc đơn là một dấu ngoặc móc ({). Hãy viết code của bạn ở dòng tiếp theo. Khi kết thúc, hãy chèn dấu ngoặc móc (}) vào hàng phía dưới hàng code cuối cùng.

Insert code here là nơi mà bạn sẽ viết code cho những chức năng mà bạn muốn ứng dụng của mình thực hiện.

Hãy nhìn vào chương trình Hello Word nổi tiếng dưới đây. Một ứng dụng huyền thoại với những ai mới học một ngôn ngữ lập trình mới. Mục đích của ứng dụng đơn giản chỉ là in ra từ “Hello Word”.

main() {
  // Printing the text 'Hello World'
  print("Hello World");
}

Output: Hello World

Phân tích code

Chúng ta đã đi qua hàm main(). Hãy chuyển đến dòng tiếp theo nhé.

Câu lệnh Print

Ở đoạn code trên, chúng ta đã sử dụng câu lệnh Print. Câu lệnh đã in ra dòng chữ “Hello Word”. print() được sử dụng để hiển thị kết quả của code trên console. Nó tuân theo syntax này:

Câu lệnh Print

Vì Hello Word là dạng văn bản nên để in được ta cần đặt nó trong dấu ngoặc kép. Syntax để hiển thị văn bản như sau:

Câu lệnh Print

Dấu chấm phẩy

Bạn có thể thấy rằng câu lệnh print sẽ kết thúc bằng dấu chấm phẩy.

print("Hello World");

Trong Dart, cũng như hầu hết các ngôn ngữ lập trình khác, mỗi câu lệnh đều phải kết thúc bằng dấu phẩy để chương trình có thể thực thi thành công. Bạn có thể thử bỏ đi dấu phẩy xem thử đúng không nhé!

Nhận xét

Dòng code này của chương trình: // Printing the text 'Hello World' là một nhận xét. Mục đích của nhận xét đó là giúp cho các dev có thể đọc và hiểu các code mà người khác đã viết. Bên cạnh đó nó cũng cho phép bạn mô tả về dòng code của mình mà không hề ảnh hưởng đến những chức năng trong chương trình. Syntax chung của nó được tuân theo như hình dưới đây:

Nhận xét

Bạn đơn giản chỉ cần gõ 2 dấu gạch chéo lên phía trước rồi viết những gì bạn muốn mô tả.

2. Lập trình điều lệnh (Imperative Programming)

Code bên trong hàm main() sẽ được thực thi lần lượt theo thứ tự. Hãy sửa đổi một chút trong đoạn mã trên và thử in From Dart cùng với Hello World.

main() {
  print("Hello World");
  print("From Dart");
}

Output:
Hello World
From Dart

Khi bạn thực hiện đoạn code ở trên, câu lệnh print("Hello World"); sẽ được thực thi trước sau đó mới tới câu lệnh print("From Dart");.

Kiểu lập trình này được gọi là lập trình điều lệnh. Về cơ bản, nó là một mô hình lập trình, trong đó bạn viết một tập hợp hướng dẫn được thực thi theo thứ tự. Lập trình điều lệnh không nhất thiết phải mô tả những gì chương trình phải hoàn thành, thay vào đó nó chỉ ra cách chương trình phải hoàn thành nó.

Vì vậy, trong trường hợp này, chúng ta đã tạo một chương trình trước và in ra văn bản Hello World, sau đó chuyển sang dòng tiếp theo và in văn bản From Dart.

3. Một chương trình tương tác đơn giản (Interactive Program)

Chương trình Hello World được viết ở phần trên chỉ đơn giản là hiển thị output. Nhưng trong nhiều trường hợp, chúng ta cần phải lấy input từ người dùng rồi in chúng lên console.

Hãy viết một ứng dụng với lời chào được cá nhân hóa hơn nhé! Chương trình sẽ hỏi người dùng tên của họ và sau đó hiển thị một lời chào với tên riêng cho mỗi người.

Chương trình code trong bài viết này yêu cầu input từ người dùng để có thể in thành công.
Trước khi bạn nhấn nút RUN, bạn phải chọn nút  >_STDIN. Nó sẽ cung cấp một input field nơi mà bạn có thể gõ input của mình vào.
Sau khi bạn gõ input vào, nhấn nút RUN để thực thi chương trình.
import 'dart:io';

main() {
   print("Hello " + stdin.readLineSync());
}

Phân tích code

Những dòng code phía trên nhìn có vẻ hơi đáng sợ. Nhưng đừng lo quá nhé, chúng ta sẽ đi tìm hiểu từng dòng một.

Thư viện

Dòng đầu tiên của đoạn code phía trên, chúng ta đã import thư viện dart:io

Trong lập trình máy tính, thư viện là một tập hợp những code tương tự mà bạn có thể tham khảo cho code của mình. Khi bạn import một thư viện, bạn có thể truy cập tất cả code trong thư viện đó.

Mỗi thư viện đều có một mục đích cụ thể. Thư viện dart:io cung cấp I/O (input/output) hỗ trợ cho các ứng dụng non-web. Chúng ta đã import dart:io vì chương trình mà chúng ta viết yêu cầu input từ người dùng.

Đưa input vào Dart

Dart cung cấp nhiều phương pháp để bạn có thể lấy được những input bên ngoài từ người dùng, tùy thuộc vào kiểu input mà chương trình yêu cầu. Trong bài viết này, chúng ta sẽ sử dụng hàm readLineSync()  để đọc dòng code từ input.

Câu lệnh hoàn chỉnh sẽ là stdin.readLineSync(). stdin được viết tắt bởi chữ standard input, để trình biên dịch biết được vài loại input từ người dùng. readLineSync() là một built-in method mà chúng ta đã đề cập ở trên.

Dòng print("Hello " + stdin.readLineSync()); nối chữ Hello với input được cung cấp bởi người dùng bằng dấu  (+) .

Vậy là bạn đã bắt đầu tiếp cận với ngôn ngữ Dart rồi. Hãy tiếp tục tìm hiểu về kiểu dữ liệu và biến trong bài viết tiếp theo nhé!

Bài viết cùng seri

Bài viết liên quan

Tổng hợp các Shortcuts, Extensions & Settings trong VSCode khi lập trình Flutter

Trong bài viết này, mình sẽ liệt kê cho bạn các shortcuts, extensions, setting mà bạn nên sử dụng để lập trình Flutter hàng ngày....

Tổng hợp các Shortcuts, Extensions & Settings trong VSCode khi lập trình Flutter
[Phần 1] Những extension cần thiết khi làm việc với Flutter trên VS Code

VS Code là 1 text editor tuyệt vời được phát triển bởi Mircosoft. Đây là một trong các công cụ được developer trên toàn thế giới yêu thích vì sự tiện lợi, dễ dùng và nó chứa hàng ngàn, thậm chí trăm ngàn các extension phục vụ cho bạn trong quá trình bạn phát triển phần mềm....

[Phần 1] Những extension cần thiết khi làm việc với Flutter trên VS Code
Dart 2.15 có gì mới?

Ở bài viết này, chúng ta sẽ cùng nhau tìm hiểu chi tiết những tính năng vừa mới được cập nhật thêm ở phiên bản Dart 2.15. Cùng xem thử để xem có tính năng nào mà bạn đang "mong chờ" từ lâu đối với ngôn ngữ Dart hay không 😄....

Dart 2.15 có gì mới?
Flutter Design Patterns: 17 — Bridge

Tổng quan về Bridge design pattern và việc thực hiện nó trong Dart và Flutter...

Flutter Design Patterns: 17 — Bridge
Navigation 2.0 - Routing On Flutter Web

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách Navigation 2.0 hoạt động với Web Flutter, cách chúng ta có thể xây dựng các trang web và đồng bộ hóa URL với các dự án Flutter Web của chúng ta....

Navigation 2.0 - Routing On Flutter Web
You've successfully subscribed to 200Lab Blog
Great! Next, complete checkout for full access to 200Lab Blog
Xin chào mừng bạn đã quay trở lại
OK! Tài khoản của bạn đã kích hoạt thành công.
Success! Your billing info is updated.
Billing info update failed.
Your link has expired.