강의

멘토링

커뮤니티

BEST
Programming

/

Mobile Application Development

Flutter nâng cao - Kiến trúc cấp độ thực tế

Khóa học thực chiến xây dựng một ứng dụng ở cấp độ dịch vụ thực tế từ đầu đến cuối. Học cách phát triển ứng dụng có khả năng mở rộng và dễ bảo trì bằng cách áp dụng Clean Architecture và MVVM pattern.

(4.7) 36 đánh giá

290 học viên

  • survivalcoding
플러터
Flutter
clean-architecture
MVVM
state-management

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

Bạn sẽ nhận được điều này sau khi học.

  • Clean Architecture와 MVVM 패턴을 실제 프로젝트에 적용하는 방법

  • Cách thiết kế và triển khai UI component phức tạp có thể tái sử dụng

  • Cách quản lý trạng thái và định tuyến hiệu quả

  • Phương pháp xử lý lỗi theo cấp độ dịch vụ thực tế

Kiến trúc ứng dụng hiện đại được các công ty công nghệ lớn lựa chọn
Kiến trúc sạch & Mô hình MVVM

Phát triển ứng dụng Flutter trong thế giới thực:
Kiến trúc ứng dụng cho thiết kế ứng dụng có khả năng mở rộng 🏗


Tại sao mã trở nên khó bảo trì hơn khi ứng dụng phát triển? 🤔

Câu trả lời nằm ở Clean Architecture và mô hình MVVM . Kiến trúc này được các công ty công nghệ lớn áp dụng, là phương pháp thiết kế cốt lõi quản lý logic kinh doanh phức tạp một cách có hệ thống và cho phép dễ dàng thêm các tính năng mới.

Trong khóa học này, chúng ta sẽ triển khai một ứng dụng cấp dịch vụ thực tế bằng Flutter và Clean Architecture. Chúng ta sẽ đề cập đến các chủ đề chuyên sâu mà bạn sẽ gặp phải trong thực tế, chẳng hạn như Dependency Injection, quản lý trạng thái phân cấp, viết mã có thể kiểm tra và xử lý lỗi.
Nếu bạn đã chán các hướng dẫn cấp độ Hello World, khóa học này sẽ mang đến cho bạn niềm vui thiết kế kiến ​​trúc thực sự trong khi tạo ra một ứng dụng sẵn sàng đưa vào sản xuất! 💪

Các tính năng của khóa học này

📌 Trình bày các vấn đề và giải pháp xảy ra trong môi trường sản xuất thực tế

📌 Mã nguồn từng bước được cung cấp qua GitHub

📌 Tất cả mã được viết theo cách cho phép kiểm thử đơn vị và kiểm thử giao diện người dùng.

📌 Khóa học này dành cho người học ở trình độ trung cấp và nâng cao.

1⃣ Hướng dẫn xây dựng ứng dụng cấp độ sản xuất từ ​​Figma

Bài giảng này sẽ giải thích chi tiết về quy trình phát triển ứng dụng khi nhận được thiết kế từ Figma.


2⃣ Cấu trúc thư mục của ứng dụng được viết trong bài giảng

Cấu trúc của ứng dụng được viết trong lớp.
Các mẫu MVVM, MVI dựa trên kiến ​​trúc sạch


3⃣ Không sử dụng thư viện quản lý trạng thái

Nhiều nhà phát triển sử dụng thư viện quản lý trạng thái vì cảm thấy bắt buộc, nhưng không cần thiết phải làm như vậy. Các tính năng cơ bản do Flutter cung cấp là đủ cho việc quản lý trạng thái.
Trong khóa học này, chúng ta sẽ chỉ sử dụng các thư viện tối thiểu như sau:


4⃣ Thiết kế UI có thể kiểm tra được

Tạo một UI không bị ảnh hưởng bởi bất kỳ yếu tố bên ngoài nào


5⃣ Cấu hình bộ định tuyến thân thiện với liên kết sâu

Hướng dẫn cấu hình bộ định tuyến thân thiện với liên kết sâu cần thiết cho nơi làm việc


6⃣ Chiến lược xử lý lỗi cho việc xử lý lỗi phức tạp hơn

Cải thiện mẫu Kết quả hiện có để cung cấp phương pháp xử lý lỗi phù hợp cho các tình huống phức tạp


Tôi khuyên những người có những lo ngại này nên làm như vậy.

Mã ngày càng trở nên phức tạp hơn
Thật khó để quản lý

Được sử dụng trong thực tế
Tôi muốn học kiến ​​trúc

Dễ dàng kiểm tra và bảo trì
Tôi muốn tạo một ứng dụng

"Tôi có thể tạo ra các tiện ích, nhưng khi kích thước tăng lên, mã sẽ trở nên rườm rà..."

"Tôi không biết cách áp dụng Clean Architecture và MVVM vào thực tế"

“Tôi muốn cấu trúc lại mã của mình, nhưng không biết bắt đầu từ đâu.”

"Tôi không biết cách quản lý trạng thái"

"Tôi cần kiến ​​thức thực tế để có thể áp dụng ngay vào công việc."

"Tôi không biết cách viết mã có thể kiểm tra được"

"Mỗi lần chúng tôi thêm một tính năng mới, chúng tôi phải sửa đổi rất nhiều mã hiện có."

"Tôi đã nghiên cứu các mẫu thiết kế, nhưng tôi thấy khó có thể áp dụng chúng vào các dự án thực tế."

"Tôi lo rằng có thể để nguyên như vậy vì có vẻ như nợ kỹ thuật đang chồng chất."


Sau khi học xong lớp này, bạn sẽ như thế này


1. Thiết kế ứng dụng có hệ thống trở nên khả thi

  • Bạn có thể phân biệt rõ ràng và thiết kế từng lớp của Kiến trúc sạch.

  • Khi bạn cần thêm tính năng mới, bạn có thể mở rộng mà không cần động tới mã hiện có.

  • Nó cho phép bạn áp dụng các nguyên tắc SOLID một cách tự nhiên vào các dự án thực tế.

2. Bạn có thể thực hiện quản lý trạng thái chuyên nghiệp.

  • Bạn sẽ học được các phương pháp quản lý trạng thái hiệu quả mà không cần sử dụng thư viện bên ngoài.

  • Ngay cả logic kinh doanh phức tạp cũng có thể được xử lý một cách gọn gàng.

  • Có thể quản lý trạng thái sạch mà không bị rò rỉ bộ nhớ.

3. Bạn có thể viết mã có thể kiểm tra được.

  • Bạn có thể viết mã có thể sử dụng cho mọi thứ, từ thử nghiệm đơn vị đến thử nghiệm UI.


  • Bạn có thể liên tục theo dõi và cải thiện chất lượng mã.

4. Bạn có thể viết code được công nhận trong thực tế.

// Trước lớp học Màn hình chính mở rộng Tiện ích trạng thái { @ghi đè Trạng thái < HomeScreen > createState() => _HomeScreenState(); } // Sau đó lớp học Màn hình chính mở rộng Tiện ích không trạng thái { trạng thái HomeState cuối cùng ; hàm void cuối cùng ( HomeAction action) onAction; // Viết mã có thể kiểm tra và tái sử dụng }

5. Hoàn thành một dự án có thể sử dụng làm hồ sơ năng lực.

  • Bạn có thể sử dụng các ứng dụng chất lượng cao với mức dịch vụ thực tế làm danh mục đầu tư của mình.


  • Bạn có thể tích lũy kinh nghiệm thực tế khi áp dụng kiến ​​trúc sạch.

Tìm hiểu về những điều này.


Kiến trúc sạch: Phân tách lớp và tiêm phụ thuộc

"Một ứng dụng không có kiến ​​trúc giống như một món đồ chơi không có Lego." Tìm hiểu cách tách biệt logic kinh doanh khỏi UI một cách rõ ràng và viết mã linh hoạt, có thể kiểm tra được bằng cách sử dụng dependency injection.

Mô hình MVVM: Quản lý trạng thái và luồng dữ liệu đơn hướng

"Quản lý trạng thái là trái tim của ứng dụng." Tìm hiểu cách tạo các ứng dụng dễ gỡ lỗi, có thể dự đoán được với khả năng quản lý trạng thái hiệu quả và thiết kế luồng dữ liệu đơn hướng.

Xử lý lỗi: Cải thiện trải nghiệm người dùng

“Lỗi là điều không thể tránh khỏi, nhưng có thể quản lý được.” Bao gồm cách xử lý lỗi mạng, xác thực dữ liệu và ngoại lệ một cách có hệ thống, đồng thời cung cấp phản hồi phù hợp cho người dùng.

Các thành phần có thể tái sử dụng: Thiết kế và triển khai UI

"Một thành phần tốt được xây dựng một lần và sử dụng mãi mãi." Tìm hiểu cách thiết kế và triển khai các thành phần UI có thể tái sử dụng, xây dựng cây tiện ích hiệu quả và tối ưu hóa hiệu suất.

Ai đã tạo ra khóa học này

  • 2018: Viết Android cho đến khi nó xảy ra

  • 2018: Được viết bởi Oh Jun-seok's Android Survival Coding: Kotlin Edition

  • 2020: Cuốn sách Flutter đầu tiên của Hàn Quốc: Flutter Survival Coding của Oh Jun-seok (Được Sejong Books lựa chọn năm 2020)

  • 2020 ~ 2024: 9 đợt đào tạo lập trình viên Flutter


Những điều cần lưu ý trước khi tham gia lớp học

Môi trường thực hành

  • Bài giảng được quay bằng macOS, Flutter 3.24 và Dart 3.5.4.

  • Tôi sử dụng Android Studio.

  • Giải thích này dựa trên trình giả lập Android.


Kiến thức và ghi chú của người chơi

  • Sẽ rất hữu ích nếu bạn đã xem "Flutter Intermediate - Clean Architecture" hoặc có kiến ​​thức tương đương.


  • Điều này phù hợp với người học Flutter ở trình độ trung cấp.

Lộ trình

bản đồ tải rung động

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

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

  • Lập trình viên muốn làm app thực tế bằng Flutter

  • Lập trình viên muốn áp dụng Clean Architecture và MVVM pattern vào thực tế

  • Người muốn học cách phát triển ứng dụng có cân nhắc UI/UX

  • Quan tâm thiết kế component tái sử dụng

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

  • Ngữ pháp cơ bản ngôn ngữ Dart

  • Widget cơ bản và Layout trong Flutter

  • Khái niệm cơ bản lập trình hướng đối tượng

Xin chào
Đây là

12,135

Học viên

871

Đánh giá

862

Trả lời

4.7

Xếp hạng

15

Các khóa học

교육하고 책 쓰는 개발자 오준석입니다.
'오준석의 생존코딩' 유튜브 채널과 생존코딩 (https://survivalcoding.com) 교육 플래폼을 운영중입니다.

전문 분야 : Android, Flutter

저서
오준석의 플러터 생존코딩 (한빛미디어 2020)
오준석의 안드로이드 생존코딩: 코틀린 편 (한빛미디어 2018)
될 때까지 안드로이드 (루비페이퍼 2018)

주요경력
오렌지(OhRange) 대표
세민직업전문학교 정보기술개발 직업훈련교사
수원스마트앱개발학원 운영
LG전자 MC사업부
일본 아이치현 (株)東海理科 Security사업부
일본 아이치현 (株)日本テクシード IT사업부

LinkedIn: https://www.linkedin.com/in/junsuk5/

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

Tất cả

54 bài giảng ∙ (13giờ 57phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

36 đánh giá

4.7

36 đánh giá

  • mmmkb1님의 프로필 이미지
    mmmkb1

    Đánh giá 1

    Đánh giá trung bình 5.0

    Đã chỉnh sửa

    5

    100% đã tham gia

    Nhờ có Giáo sư Oh Jun-seok mà tôi đã được tuyển dụng vào năm ngoái và đã làm việc tại Flutter được năm tháng. Nhiều người bắt đầu bằng cách xem ngữ pháp dễ hiểu và giao diện ứng dụng đẹp mắt của Dart, nhưng khi dự án trở nên phức tạp, họ nhanh chóng từ bỏ vì không biết cách quản lý nó. Tôi là một trong số họ😭 Đây là bài giảng rất có giá trị giúp bạn biết cách quản lý dự án Flutter hiệu quả. Nó dạy cho bạn những điều quan trọng nhất, chứ không phải những chi tiết. Đây là bài giảng cơ bản nhất trong các bài giảng về Flutter. Tôi giới thiệu khóa học này cho những người mới bắt đầu và những người đang đi làm để họ không bỏ cuộc, không bỏ cuộc và tồn tại trong lĩnh vực này cho đến khi kết thúc!

    • emptynet님의 프로필 이미지
      emptynet

      Đánh giá 2

      Đánh giá trung bình 5.0

      5

      73% đã tham gia

      Cảm ơn bạn vì những bài giảng luôn tuyệt vời. Ngoài ra, tôi hơi thất vọng vì sẽ tốt hơn nếu tôi viết mã kiểm tra và đưa vào các ví dụ thực tế như trong các bài giảng trước, nhưng tôi sẽ xoa dịu sự hối tiếc của mình bằng cách tự mình thử nghiệm. Luôn chờ đợi. Tôi sẽ rất cảm kích nếu lần sau bạn có thể quay lại sớm với một bài giảng hay hơn ^^!!

      • rheech22님의 프로필 이미지
        rheech22

        Đánh giá 4

        Đánh giá trung bình 5.0

        Đã chỉnh sửa

        5

        100% đã tham gia

        Tôi đang trong tình huống phải làm việc gấp một dự án được triển khai bằng Flutter, vì vậy tôi đã nhanh chóng tìm hiểu những kiến ​​thức cơ bản, chủ yếu thông qua tài liệu chính thức và tham gia khóa học này. Tôi đã cải thiện rất nhiều mã hiện có với độ liên kết cao bằng cách áp dụng kiến ​​trúc mới dựa trên những gì tôi đã học trên lớp. Nhờ đó, tôi có thể bắt đầu bằng cách sắp xếp lại code của mình và nó vẫn rất hữu ích. Nếu phải nói điều gì đáng tiếc thì thật tuyệt nếu đây là khóa học trung cấp - nâng cao, thay vì chỉ trình bày cách triển khai UI, sẽ có nhiều ví dụ triển khai đa dạng hơn và có cơ hội trải nghiệm viết mã kiểm thử. Tuy nhiên, cảm giác này có thể là do tôi chưa từng tham dự bài giảng nào của giảng viên có nội dung đa dạng như vậy. Trên hết, như tiêu đề gợi ý, tôi nghĩ đây là bài giảng hữu ích để suy nghĩ về kiến ​​trúc tốt và tích lũy kinh nghiệm thực tế với Flutter. Cảm ơn bài giảng tuyệt vời!

        • iamlimyeonju2930님의 프로필 이미지
          iamlimyeonju2930

          Đánh giá 5

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

          Điều này thực sự hữu ích! Thật tuyệt khi được tìm hiểu cách tạo ứng dụng bằng Figma, điều mà tôi không biết khi tự mình phát triển. Tôi cũng thực sự thích cách phân chia cấu trúc thư mục và triển khai liên kết sâu. Cảm ơn bài giảng tuyệt vời!!

          • songjin39148713님의 프로필 이미지
            songjin39148713

            Đánh giá 19

            Đánh giá trung bình 5.0

            Đã chỉnh sửa

            5

            100% đã tham gia

            Đầu tiên, hãy tóm tắt những lý do tại sao tôi nghĩ khóa học này tốt. 1. Thật tốt khi học cách tạo một ứng dụng dựa trên các tiêu chuẩn thiết kế figma. 2. Thật tuyệt khi tìm hiểu cách tạo tiện ích tùy chỉnh và cách triển khai liên kết sâu. 3. Thật tuyệt khi có thể nhanh chóng xem lại cách thiết lập cấu trúc tổng thể. Cá nhân tôi, khi nghe nói rằng họ đang cộng tác thông qua Figma, được đề cập ở phần 1, tôi đã tò mò về quá trình triển khai thiết kế thành mã thực sự và tôi nghĩ điều tuyệt vời nhất là nó đã giải quyết được câu hỏi đó. Cuối cùng em xin cảm ơn thầy vì đã có một bài giảng rất hay.

            Ưu đãi có thời hạn, kết thúc sau 8 ngày ngày

            84.700 ₫

            30%

            2.534.025 ₫

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

            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!