[Lv.3] Truyền thông mạng thực chiến - SwiftUI Combine, Async/Await

Đây là khóa học giúp bạn tìm hiểu một cách hệ thống về các tác vụ mạng trong SwiftUI, đi sâu vào Combine và Async – những yếu tố cốt lõi của truyền thông mạng SwiftUI – dựa trên các dự án thực tế và nội dung cập nhật mới nhất. (📌 Cung cấp đầy đủ tài liệu bài giảng PDF và file mã nguồn thực hành)

(5.0) 6 đánh giá

100 học viên

Độ khó Trung cấp trở lên

Thời gian Không giới hạn

SwiftUI
SwiftUI
combine
combine
async-await
async-await
iOS
iOS
Swift
Swift
SwiftUI
SwiftUI
combine
combine
async-await
async-await
iOS
iOS
Swift
Swift

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

5.0

5.0

gaeun

100% đã tham gia

Đây không phải là khóa học đi sâu vào các khái niệm một cách chi tiết, nhưng vì là khóa học tập trung vào thực hành nên có thể xem được code combine, async/await thực sự được sử dụng nhiều trong thực tế, điều này rất tốt.

5.0

moon_bear27

100% đã tham gia

Một khóa học giúp bạn chắc chắn làm chủ giao tiếp mạng với SwiftUI Tôi đã gặp khó khăn khi mới bắt đầu với giao tiếp mạng, nhưng sau khi tham gia khóa học này, tôi đã nắm vững các khái niệm một cách chắc chắn. Việc so sánh sự khác biệt giữa Combine và Async/Await thông qua thực hành giúp tôi hiểu dễ dàng hơn rất nhiều. Tài liệu PDF và các tệp thực hành được cung cấp, rất tốt để ôn tập. Tôi giới thiệu khóa học này cho những ai muốn học các kỹ thuật SwiftUI mới nhất! 😊

5.0

guri7788

100% đã tham gia

Tôi đã hiểu rõ hơn về khái niệm giao tiếp mạng trong SwiftUI. Trước đây, tôi cảm thấy bế tắc trong việc xử lý các yêu cầu mạng một cách hiệu quả, nhưng nhờ khóa học này, tôi đã nắm bắt được khái niệm đó.

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

  • Kết nối mạng trong SwiftUI sử dụng Combine và Async/Await

  • Học xử lý dữ liệu mạng qua dự án thực tế (MBox Movie App)

  • Tuần tự hóa dữ liệu JSON và cách sử dụng Codable

  • Tìm hiểu chuyên sâu về SwiftUI Concurrency

Làm thế nào để ứng dụng SwiftUI có thể xử lý dữ liệu thời gian thực một cách hiệu quả?

Câu trả lời nằm ở Combine và Async/Await.

Trong phát triển ứng dụng hiện đại, yêu cầu mạng và xử lý dữ liệu là những tác vụ thiết yếu, và các công nghệ cốt lõi để thực hiện điều này chính là CombineAsync/Await.

Trong khóa học này, bạn sẽ học cách sử dụng CombineAsync/Await cùng với SwiftUI để xử lý dữ liệu mạng thời gian thực, đồng thời áp dụng chúng thông qua dự án thực tế (MBox Movie App). Chúng ta sẽ thực hành toàn bộ quy trình từ Publisher và Operator, tuần tự hóa dữ liệu JSON, cho đến tích hợp TMDB API để nâng kỹ năng phát triển iOS của bạn lên một tầm cao mới.

Dự án thực tế đã được thêm vào trong bản cập nhật mới nhất (21.02.26). TodayBooks là một ứng dụng iOS cấp độ dịch vụ thực tế sử dụng Kakao Book Search API, giúp bạn nắm vững các mô hình thực tế cùng một lúc, từ xử lý mạng dựa trên Async/Await, lưu bộ nhớ đệm hình ảnh bằng Actor, lưu trữ vĩnh viễn với SwiftData , cho đến phân trang.

💬 "Nếu yêu cầu AI viết mã mạng thì nó làm cho hết rồi, vậy có nhất thiết phải học Combine và Async/Await không?"

Tôi cũng tích cực sử dụng AI trong công việc thực tế. Sự thật là năng suất làm việc đã tăng lên đáng kể.

Nhưng sau khi tự mình phát hành và bảo trì ứng dụng, tôi đã nhận ra một điều. Việc tìm hiểu tại sao mã mạng do AI viết lại không hoạt động và sửa lỗi đó cuối cùng vẫn là nhiệm vụ của con người.

Nếu bạn cứ dán mã AI mà không biết Publisher là gì, Subscriber kết nối như thế nào, hay tại sao cần đến Actor, thì chắc chắn sẽ đến lúc bạn bị tắc nghẽn và không thể tiến thêm một bước nào nữa.

Kết luận là như thế này

  1. Để sử dụng AI một cách hiệu quả, bạn cần có khả năng đọc và đánh giá mã nguồn mạng do AI tạo ra.

  2. Nền tảng về Combine và Async/Await sẽ trở thành một vũ khí quan trọng hơn trong thời đại AI.

Đặc điểm của bài giảng này


  • Triển khai giao tiếp mạng bằng SwiftUI: Học về Combine và Async/Await để truyền nhận dữ liệu hiệu quả trong ứng dụng

  • Có thể áp dụng ngay vào thực tế: Nội dung bao gồm các kỹ năng thiết yếu trong dự án thực tế như xử lý dữ liệu JSON, tích hợp API, và tuần tự hóa dữ liệu.

  • 10% lý thuyết, 90% thực hành: Mọi mã nguồn đều được tự tay viết và kiểm tra, đồng thời xác minh xem chúng có hoạt động chính xác trong ứng dụng thực tế hay không.

  • Khóa học dành cho nhà phát triển trung cấp: Nếu bạn đã nắm vững kiến thức cơ bản về SwiftUI, bạn có thể thử sức ngay! Hãy nâng cấp kỹ năng phát triển iOS của bạn lên một tầm cao mới.

Dành cho những đối tượng sau

Muốn nâng cấp kỹ năng phát triển ứng dụng iOS

Nhà phát triển trung cấp muốn hiểu cốt lõi của Combine và Async/Await, đồng thời muốn triển khai giao tiếp mạng bằng SwiftUI.

Những người muốn học thông qua dự án thực tế
Những người muốn tạo một ứng dụng thực tế (MBox Movie App) trong khi học các kỹ năng thực hành như xử lý dữ liệu JSON và tích hợp API.

Những người quan tâm đến công nghệ iOS mới nhất
Những người muốn trải nghiệm các tính năng mới nhất của SwiftUI và bắt kịp xu hướng phát triển hiện nay.

Bạn sẽ học được những nội dung sau.

Hiểu rõ hoàn toàn về Combine và Async/Await

• Học từng bước các kỹ thuật SwiftUI mới nhất (Combine và Async/Await) để yêu cầu mạng và xử lý dữ liệu.

• Nội dung bao gồm từ những kiến thức cơ bản về URLSession đến Publisher, Subscriber, Operator của Combine, và lập trình bất đồng bộ sử dụng Async/Await.

Nắm vững kỹ thuật xử lý dữ liệu nâng cao

• Học cách xử lý dữ liệu hiệu quả bằng cách sử dụng Filter và Sequence Operations của Combine.

• Tìm hiểu các thao tác khác nhau (Transforming, Filtering, Timing, Multiple Publisher Operations) thông qua thực hành thực tế

Dự án thực tế: MBox Movie - Combine, Core Data

• Xây dựng ứng dụng MBox Movie lấy thông tin phim sử dụng TMDB API.

• Thiết kế và triển khai cấu trúc ứng dụng thực tế bằng cách xây dựng HomeView, DetailView, MyListView, v.v.

Dự án thực tế: TodayBooks - Async/Await, SwiftData

• Xây dựng ứng dụng tìm kiếm sách thời gian thực TodayBooks sử dụng Kakao Book Search API.

• Bạn sẽ được học các mô hình thực tế từ xử lý mạng dựa trên Async/Await, lưu trữ hình ảnh (caching) sử dụng Actor, cho đến phân trang (pagination).

• Triển khai tính năng Thư viện của tôi (lưu, xóa dấu trang) bằng SwiftData và xử lý quản lý dữ liệu cục bộ.

SwiftUI Concurrency

• Học các kỹ thuật lập trình bất đồng bộ như Async/Await, Task, Actor và thực hiện tái cấu trúc (refactoring) mã nguồn CompletionHandler hiện có.

• Đảm bảo tính ổn định trong môi trường đa luồng thông qua kỹ thuật xử lý song song và đồng bộ hóa dữ liệu bằng cách sử dụng TaskGroup và Actor.

• Thông qua các ví dụ thực tế, hiểu rõ và áp dụng hoàn hảo các tính năng mạnh mẽ của Concurrency trong SwiftUI.


Cung cấp tài liệu lý thuyết PDF và tệp thực hành

• Cung cấp tất cả tài liệu PDF và tệp dự án Xcode cần thiết cho bài giảng.

• Bạn có thể thực hành và áp dụng nội dung bài học ngay lập tức thông qua các ví dụ mã nguồn theo từng bước.


Thông qua tất cả các quá trình này, bạn sẽ nắm vững các tác vụ mạng trong SwiftUI và học được những kỹ thuật có thể áp dụng ngay vào thực tế!

Khóa học tiên quyết

Nếu bạn đã nắm rõ các khái niệm cơ bản về Swift và SwiftUI, bạn có thể bắt đầu khóa học này ngay lập tức.

Tuy nhiên, nếu bạn còn thiếu kiến thức cơ bản về cú pháp Swift và cách sử dụng SwiftUI, tôi khuyên bạn nên tham gia các khóa học dưới đây trước.

NHẬT KÝ CẬP NHẬT

[2.1] Thêm dự án TodayBooks - 2026-02-22

  • API tìm kiếm sách Kakao

  • Async-Await

  • SwiftData (Đánh dấu sách trong thư viện của tôi)

  • Phân trang

  • Caching hình ảnh bằng Actor


[2.0] Thêm phần Concurrency - 17-02-2025

  • Giới thiệu về Concurrency

  • Async-Await

  • Task

  • Actor

  • @MainActor

  • AsyncLet

  • TaskGroup

  • Tiếp tục

  • AsyncStream

Lưu ý trước khi học

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

  • Hệ điều hành: Bài giảng được thực hiện dựa trên hệ điều hành macOS. Các tác vụ liên quan đến Xcode chỉ có thể thực hiện được trong môi trường macOS.

  • Công cụ phát triển: Sử dụng phiên bản Xcode mới nhất. Các tệp dự án được cung cấp trong bài giảng sẽ chạy trên Xcode 15 trở lên.

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

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

  • Những ai muốn học chuyên sâu về SwiftUI và Combine

  • Những ai muốn nắm vững kỹ thuật truyền thông mạng thông qua các dự án thực tế.

  • Lập trình viên trung cấp muốn tìm hiểu các xu hướng và công nghệ phát triển iOS mới nhất.

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

  • Cú pháp cơ bản Swift

  • Kiến thức cơ bản về SwiftUI

  • Kinh nghiệm sử dụng SwiftUI ở mức độ trung cấp (CoreData, SwiftData)

Xin chào
Đây là jacobko

888

Học viên

50

Đánh giá

49

Trả lời

5.0

Xếp hạng

5

Các khóa học

Luôn có giảm giá dành cho sinh viên

Dành cho những bạn sinh viên cảm thấy học phí là một gánh nặng, nếu bạn sử dụng tài khoản email của trường mình, ví dụ: @***.ac.kr , @***.edu

Nếu bạn gửi email, tôi sẽ gửi mã giảm giá (50%) cho tất cả các bài giảng.

👉jacobko@kakao.com


Xin chào, tôi là Jacob, nhà phát triển iOS.

Hiện tại, tôi đang vừa phát triển ứng dụng iOS vừa tham gia giảng dạy tại nước ngoài.

  • Tham gia thực tế với vai trò nhà phát triển iOS tại các startup ở Úc và New Zealand, có kinh nghiệm phát hành ứng dụng trên App Store

  • Thực hiện nhiều dự án di chuyển (migration) chuyển đổi các ứng dụng legacy dựa trên UIKit sang SwiftUI

  • Thiết kế chương trình giảng dạy tập trung vào thực hành dựa trên kinh nghiệm hợp tác với các đội ngũ nước ngoài

Dựa trên những kinh nghiệm thực tế tích lũy được khi làm việc trực tiếp tại môi trường phát triển nước ngoài thay vì trong nước, tôi đang tạo ra khóa học SwiftUI không chỉ dừng lại ở lý thuyết mà có thể áp dụng ngay vào các dự án thực tế.

Nếu bạn kiên trì theo sát lộ trình học tập được thiết kế theo chuỗi từ Lv.1 đến Lv.4, tôi sẽ chịu trách nhiệm giúp bạn nắm vững các kiến thức cốt lõi của phát triển iOS một cách hệ thống nhất.

Thêm

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

Tất cả

66 bài giảng ∙ (19giờ 29phú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ả

6 đánh giá

5.0

6 đánh giá

  • guri77883623님의 프로필 이미지
    guri77883623

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Tôi đã hiểu rõ hơn về khái niệm giao tiếp mạng trong SwiftUI. Trước đây, tôi cảm thấy bế tắc trong việc xử lý các yêu cầu mạng một cách hiệu quả, nhưng nhờ khóa học này, tôi đã nắm bắt được khái niệm đó.

    • siroro님의 프로필 이미지
      siroro

      Đánh giá 1

      Đánh giá trung bình 5.0

      Đã chỉnh sửa

      5

      100% đã tham gia

      Đây không phải là khóa học đi sâu vào các khái niệm một cách chi tiết, nhưng vì là khóa học tập trung vào thực hành nên có thể xem được code combine, async/await thực sự được sử dụng nhiều trong thực tế, điều này rất tốt.

      • moonbear272091님의 프로필 이미지
        moonbear272091

        Đánh giá 1

        Đánh giá trung bình 5.0

        5

        100% đã tham gia

        Một khóa học giúp bạn chắc chắn làm chủ giao tiếp mạng với SwiftUI Tôi đã gặp khó khăn khi mới bắt đầu với giao tiếp mạng, nhưng sau khi tham gia khóa học này, tôi đã nắm vững các khái niệm một cách chắc chắn. Việc so sánh sự khác biệt giữa Combine và Async/Await thông qua thực hành giúp tôi hiểu dễ dàng hơn rất nhiều. Tài liệu PDF và các tệp thực hành được cung cấp, rất tốt để ôn tập. Tôi giới thiệu khóa học này cho những ai muốn học các kỹ thuật SwiftUI mới nhất! 😊

        • soulem6805님의 프로필 이미지
          soulem6805

          Đánh giá 3

          Đánh giá trung bình 5.0

          Đã chỉnh sửa

          5

          100% đã tham gia

          I was looking for a hands-on lecture, and this was it! I can learn how to efficiently process network data with practical projects, so it's very useful in practice. In particular, I liked that it explained the difference between Combine and Async/Await clearly. I highly recommend it to anyone who wants to implement network communication with SwiftUI.

          • euichungpark0296님의 프로필 이미지
            euichungpark0296

            Đánh giá 5

            Đánh giá trung bình 5.0

            5

            30% đã tham gia

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

            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!