강의

멘토링

로드맵

Inflearn brand logo image
Programming

/

Desktop Application

[Người mới bắt đầu] Lập trình QML Phần 1

QML là ngôn ngữ lập trình để tạo giao diện người dùng do Qt cung cấp. Tương tự như JSON và có thể sử dụng JavaScript. Sử dụng QML thay vì ngôn ngữ C++ giúp dễ dàng phát triển giao diện người dùng cấp cao, hiện đại mà không cần sử dụng C++.

(4.9) 13 đánh giá

147 học viên

  • qtdev
c++
ui
Qt
QML

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Phát triển giao diện người dùng hiện đại bằng QML

  • Phát triển giao diện người dùng bằng QML và C++

QML cho phát triển giao diện người dùng Qt,
Chúng tôi sẽ giải thích chi tiết từ phần giới thiệu đến phần thực hành.

Triển khai giao diện người dùng Qt Framework,
Mạnh mẽ hơn với QML!

Ngôn ngữ lập trình QML?

Giao diện người dùng hiện đại, tiên tiến trong khuôn khổ Qt
Đây là ngôn ngữ lập trình dễ phát triển.

QML (Ngôn ngữ Mô hình Qt) là ngôn ngữ lập trình được cung cấp bởi nền tảng Qt. QML là ngôn ngữ lập trình có thể được sử dụng để phát triển giao diện người dùng (UI) trong nền tảng Qt, giúp dễ dàng triển khai các giao diện người dùng hiện đại và tiên tiến.

Khi phát triển các chương trình GUI sử dụng nền tảng Qt, bạn có thể phân biệt giữa logic thiết kế của UI và logic chức năng của phần chức năng. Trong số đó, QML là ngôn ngữ được lựa chọn thay thế cho C++ khi phát triển các UI tương ứng với logic thiết kế . Cụ thể, việc phát triển UI với QML cho phép tách biệt hoàn toàn logic thiết kế và logic chức năng, do đó tăng khả năng tái sử dụng mã nguồn.

Việc phát triển logic thiết kế bằng QML cho phép bạn triển khai giao diện người dùng (UI) dễ dàng và nhanh chóng hơn nhiều so với việc phát triển bằng C++. Nó cũng cho phép bạn dễ dàng áp dụng các công nghệ GUI hiện đại, tiên tiến như Flickable, Gesture, Animation và 3D.


Ngữ pháp dễ hiểu, dễ đọc
Trải nghiệm những lợi ích của QML.

Hãy cùng xem ví dụ đầu ra "Hello World", một ví dụ phổ biến khi mới học ngôn ngữ lập trình. Thật dễ dàng để thấy QML ngắn gọn như thế nào.

 import QtQuick Window { width: 300 height: 200 visible: true title: qsTr("QML 예제소스코드") Text { x: 80 y: 70 text: "Hello World" font.pixelSize: 25 } }

Mã nguồn ví dụ QML

Màn hình thực thi mã nguồn ví dụ QML

QML rất đơn giản và dễ hiểu. Ngay cả những người không phải lập trình viên cũng có thể dễ dàng hiểu được. Do đó, các nhà thiết kế và lập trình viên có thể giao tiếp với nhau bằng mã QML và chia sẻ ý tưởng.

Do đó, QML cho phép các nhà thiết kế và nhà phát triển cộng tác bằng cách sử dụng cùng một công cụ phát triển , giúp giảm thời gian phát triển so với trước đây.


Giới thiệu về lập trình QML
Tôi giới thiệu điều này cho những người này 🙋‍♀️

1️⃣

Bất kỳ ai (nhà phát triển, nhà thiết kế) muốn dễ dàng triển khai UI/UX hiện đại, tiên tiến bằng cách sử dụng QML trong Qt

2️⃣

Những người muốn tăng khả năng bảo trì và tái sử dụng mã nguồn bằng cách tách logic thiết kế và logic chức năng.

Bạn phải có hiểu biết cơ bản về ngôn ngữ C++ và framework Qt để tham gia khóa học này.

Mục tiêu của khóa học 💡

  • Tìm hiểu cách phát triển UX/UI hiện đại, tiên tiến bằng QML.
  • Bạn sẽ học cách sử dụng QML để tách biệt hoàn toàn logic thiết kế khỏi logic chức năng.
  • Bạn có thể học các kỹ năng phát triển QML cần thiết trong lĩnh vực này một cách tự nhiên bằng cách nghiên cứu lý thuyết theo từng phần và tự viết mã dựa trên nhiều ví dụ thực tế khác nhau.

Các tính năng độc đáo của khóa học này
Hãy xem thử nhé 📖

Lý thuyết và thực hành cùng một lúc

Ngoài ngữ pháp QML, khóa học còn được thiết kế để nâng cao kỹ năng thực hành. Sau mỗi phần lý thuyết, bạn sẽ được học các ví dụ thực hành và tự mình áp dụng, từ đó nâng cao hơn nữa kỹ năng thực hành của mình.

Vượt ra ngoài những bức tường trực tuyến

Chúng tôi đã ghi lại hình ảnh người chia sẻ kiến thức trên màn hình. Học mọi lúc, mọi nơi, như thể bạn đang tham gia một lớp học ngoại tuyến, với mã hóa trực tiếp sống động.


Cấu trúc bài giảng 📖

Phần 1. QML là gì
QML là ngôn ngữ thông dịch được cung cấp bởi Qt Framework. Trong bài học này, chúng ta sẽ khám phá các tính năng và ưu điểm của QML.

Phần 2. Cú pháp và cấu trúc QML
Phần này trình bày về cấu trúc và cú pháp của QML và cách sử dụng QML thông qua các ví dụ thực tế.
Mục 3. Loại
Kiểu là một khái niệm tương tự như QWidget của Qt. Trong phần này, chúng ta sẽ tìm hiểu về Kiểu và tập trung vào các kiểu được sử dụng phổ biến nhất do QML cung cấp. Để minh họa, chúng ta sẽ triển khai một kiểu nút bằng cách sử dụng kiểu Accessible.

Mục 4. Sự kiện
Phần này trình bày cách triển khai xử lý sự kiện cho các sự kiện giao diện người dùng, chẳng hạn như cảm ứng, chuột và bàn phím. Bạn cũng sẽ học cách triển khai tín hiệu trong QML. Trong ví dụ thực hành, bạn sẽ tìm hiểu cách xử lý tín hiệu chi tiết thông qua các ví dụ về cách kết nối tín hiệu với các phương thức (hàm).

Phần 5. Triển khai UI động bằng cách sử dụng loại Loader
Bạn sẽ học cách thay đổi động các khu vực cụ thể của giao diện người dùng (UI). Ví dụ: bạn sẽ học cách chuyển đổi từ màn hình GUI A sang màn hình B khi một điều kiện nhất định được đáp ứng. Do đó, trong phần này, bạn sẽ học cách triển khai màn hình động. Ví dụ thực hành cuối cùng sẽ minh họa cách thay đổi động các màn hình bằng cách sử dụng kiểu Loader.

Mục 6. Vải bạt
Tìm hiểu cách hiển thị hình ảnh, đường nét, hình khối và văn bản trên màn hình, tương tự như chương trình Paint. Ví dụ, chúng ta hãy xem cách vẽ trong Paint bằng cách chọn màu.

Mục 7. Hiệu ứng đồ họa
Tìm hiểu cách sử dụng các Hiệu ứng như Làm mờ, Hòa trộn, Màu sắc, v.v. trên hình ảnh của bạn.

Mục 8. Lập trình mô-đun
Tìm hiểu cách mô-đun hóa các kiểu dữ liệu do người dùng định nghĩa, chẳng hạn như các mô-đun GUI thường dùng như nút bấm và hộp tổ hợp. Bạn cũng sẽ học cách mô-đun hóa và triển khai QML thông qua các ví dụ thực hành.

Phần 9. Sử dụng JavaScript trong QML
Tìm hiểu cách sử dụng các hàm JavaScript trong QML và cách nhập các tệp JavaScript vào QML. Trong ví dụ thực hành này, bạn sẽ tìm hiểu thêm về cách sử dụng JavaScript bằng cách triển khai một máy tính.

Mục 10. Đối thoại
Tìm hiểu cách sử dụng hộp thoại trong QML. Bạn cũng sẽ học cách sử dụng chúng bằng cách thực hành một ví dụ: hộp thoại để chọn màu.

Mục 11. Bố cục
Ngoài Anchor, QML còn hỗ trợ các Layout như RowLayout, ColumnLayout, GridLayout và Layout. Trong bài học này, chúng ta sẽ tìm hiểu cách sử dụng các Layout khác nhau.

Mục 12. Định vị kiểu chữ
Định vị Kiểu chữ hướng dẫn bạn cách hiển thị kiểu chữ trên màn hình. Ví dụ: bạn sẽ học cách sắp xếp kiểu chữ theo chiều ngang, chiều dọc hoặc theo kiểu bàn cờ.

Mục 13. Điều khiển nhanh Qt
Qt Quick Controls cung cấp các giao diện GUI cần thiết để tạo màn hình, bao gồm Nút, Mặt số, Hộp kiểm và Chỉ báo bận. Trong phần này, bạn sẽ tìm hiểu cách sử dụng Qt Quick Controls.


Hỏi & Đáp 💬

H. Ngoài lý thuyết và ngữ pháp, tôi có thể tiếp cận được nhiều ví dụ thực tế không?

Có chứ. Sau mỗi bài giảng lý thuyết, bạn sẽ có buổi thực hành lập trình với giảng viên, sử dụng các ví dụ minh họa. Điều này cho phép bạn học các kỹ năng lập trình thực tế bằng cách sử dụng QML tại nơi làm việc.

H. Có tài liệu tham khảo hoặc giáo trình nào cho các bài giảng tôi đang học không?

Tôi là quản trị viên của Cộng đồng nhà phát triển Qt ( qt-dev.com ). Trang web này là nguồn tài nguyên tuyệt vời cung cấp thông tin liên quan đến Qt và QML.

H. Tôi cần biết điều gì trước khi tham dự buổi thuyết trình?

Khóa học này yêu cầu kiến thức cơ bản về C++ và Qt. Nếu bạn chưa có kinh nghiệm về Qt, chúng tôi khuyên bạn nên học khóa "Lập trình Qt" trước đó trước khi tham gia khóa học này.

H. Nội dung bài học được trình bày ở mức độ nào?

Bao gồm mọi thứ từ kiến thức cơ bản về QML đến các chủ đề nâng cao cho nhiều lĩnh vực ứng dụng khác nhau.

💾 Lưu ý

  • Để biết thêm chi tiết, vui lòng xem trước bài học Phần 1 [Tài liệu tham khảo QML và Phiên bản Qt được đề xuất để học QML].

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Bất kỳ ai muốn phát triển giao diện người dùng bằng QML

  • Bất kỳ ai muốn phát triển giao diện người dùng bằng QML trong khung Qt

Cần biết trước khi bắt đầu?

  • C++

  • Qt

Xin chào
Đây là

1,015

Học viên

85

Đánh giá

102

Trả lời

4.7

Xếp hạng

9

Các khóa học

지식공유자 소개 ✒️


근무경력
: Embedded 분야 SW Team leader
LG전자, VS사업부 IVI선행플랫폼/모듈개발
SW마에스트로, SW 멘토

강의경력
삼성전자, Qt & QML 강의
LG전자, Qt & QML 분야 사내 강사
한컴아카데미 Qt 강의 출강
다수의 IT기업 Qt 강의 출강


저서
Qt 프로그래밍
Qt Quick 프로그래밍
Qt5 프로그래밍 가이드
MeeGo 프로그래밍 완벽 가이드
Qt 실전 프로그래밍

SW커뮤니티 운영
Qt 개발자 커뮤니티 운영자 ( www.qt-dev.com )

Chương trình giảng dạy

Tất cả

47 bài giảng ∙ (9giờ 8phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

13 đánh giá

4.9

13 đánh giá

  • Junghwan Jeong님의 프로필 이미지
    Junghwan Jeong

    Đánh giá 52

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    QML을 향후 어떻게 사용 할 지에 대해서 많은 도움이 되었습니다. 향후에 실무적인 아이템을 하나를 선정해서 전체 과정을 구현하는 교육과정이 있으면 노하우를 습득하는데 도움이 될 것 같습니다.

    • 김대진
      Giảng viên

      Junghwan Jeong 님 도움이 되셨다니 너무 감사합니다. 좋은 피드백 감사합니다. 다음 QML 활용편에서는 전체 과정을 구현하는 것을 추가하고 Qt Design Studio 도 넣을 수 있도록 하겠습니다.

  • mcube님의 프로필 이미지
    mcube

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    • 김대진
      Giảng viên

      mcube님, 좋은평가 너무 감사합니다. :)

  • 박신우 (A.I.)님의 프로필 이미지
    박신우 (A.I.)

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    강사님 최고~~!!!

    • 김대진
      Giảng viên

      박시우님, 좋은평가 너무 감사합니다. :)

  • yp j님의 프로필 이미지
    yp j

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    32% đã tham gia

    • 김대진
      Giảng viên

      yp j님, 좋은 평가 점수 주셔서 너무 감사합니다. :)

  • JunHwan Song님의 프로필 이미지
    JunHwan Song

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    좋은강의였습니다. 파트2도 들을의사있습니다.

    • 김대진
      Giảng viên

      안녕하세요. JunHwan Song 님, 좋은 평가해 주셔서 너무 감사합니다. ^^;

807.144 ₫

Khóa học khác của qtdev

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!