Allen Swift Concurrency cho Swift 6 (Phần-1)

Tìm hiểu về Swift Concurrency từ A đến Z. (Phần 1)

(5.0) 65 đánh giá

582 học viên

Độ khó Cơ bản

Thời gian 24 tháng

iOS
iOS
Swift
Swift
concurrent
concurrent
async-await
async-await
concurrency
concurrency
iOS
iOS
Swift
Swift
concurrent
concurrent
async-await
async-await
concurrency
concurrency

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

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

5.0

5.0

김동현

100% đã tham gia

Tôi nghĩ đây là một khóa học bắt buộc phải nghe để học Swift Concurrency. Việc so sánh GCD hiện tại với Swift Concurrency đã giúp tôi hiểu rõ ràng về cách quan điểm lập trình bất đồng bộ đã thay đổi từ quá khứ đến hiện tại, và phần giải thích về structured concurrency đã rất hữu ích. Mong rằng sẽ có nhiều khóa học hay như vậy trong tương lai!

5.0

Bana

63% đã tham gia

Nội dung quá tuyệt vời.... Tôi mong anh Allen sẽ quay nhiều bài giảng iOS hơn nữa Anh nhấn mạnh các khái niệm quan trọng một cách chắc chắn và giải thích nhiều lần nên tôi nhớ rất rõ Bài giảng tuyệt vời đến mức tôi muốn nghe một mình nhưng tôi vẫn để lại bình luận 😊😊

5.0

qowiedncz

43% đã tham gia

Tôi thấy anh giải thích rất dễ hiểu và tuyệt vời. Tôi là người làm trong ngành này và nhận được rất nhiều sự giúp đỡ từ anh. Tôi thực sự rất cảm kích!

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

  • Swift Concurrency (Lập trình đồng thời trong Swift)

  • Task / async / await (Xử lý bất đồng bộ)

  • API mới liên quan đến async/await

  • Cách sử dụng Continuation (컨티뉴에이션)

  • Structured Concurrency (Đồng thời có cấu trúc / Xử lý song song)

  • async let / TaskGroup (Kỹ thuật xử lý song song)

  • Hủy bỏ (작업취소)

  • Cách sử dụng Task-Local (Biến cục bộ của tác vụ)

  • Ví dụ áp dụng dự án (Hủy tác vụ)

Bài giảng này yêu cầu bạn phải mua riêng giáo trình (E-book PDF).

(Phải mất hơn một năm để biên soạn giáo trình cho bài giảng này. Vì nội dung đã được tối ưu hóa tốt nhất cho việc học và chi tiết hơn bất kỳ nội dung nào liên quan đến Swift Concurrency trên thế giới, nên mong các bạn thông cảm rằng giáo trình được bán riêng để duy trì chất lượng bài giảng. Việc mua giáo trình là tùy chọn. Bạn hoàn toàn có thể chỉ mua khóa học mà không gặp vấn đề gì.)


Swift Concurrency cho Swift 6 bởi Allen (Giáo trình tổng hợp Phần -1 / Phần -2)

Link nơi bán: https://smartstore.naver.com/allenschool/products/11528874881
(30.000 won)

Ngay cả khi bạn không trực tiếp tham gia khóa học này, bạn vẫn có thể mua riêng giáo trình. (Tuy nhiên, vì đây là tài liệu được tối ưu hóa cho mục đích giảng dạy, nên có thể có những nội dung khó hiểu nếu chỉ mua giáo trình. Nếu bạn đồng ý với điều này, bạn có thể chỉ mua giáo trình mà không cần mua khóa học.)

Swift Concurrency cho Swift 6 (Phần - 1) ✍🏻

Phụ đề: Học lập trình Swift Concurrency đúng cách để tiến tới Swift 6


🌿🌿🌿

Nền tảng cơ bản vững chắc dựa trên CS và
sự khác biệt nhỏ trong chi tiết
sẽ tạo nên sự khác biệt về trình độ.

🌿🌿🌿



Kể từ khi Swift Concurrency mới được giới thiệu trong phiên bản 5.5, Swift đã trải qua các giai đoạn chuẩn bị và cuối cùng đã được cập nhật lên phiên bản 6. Và một trong những mục tiêu cốt lõi của phiên bản Swift 6 chính là đảm bảo tính an toàn bằng cách loại bỏ khả năng xảy ra tranh chấp dữ liệu tiềm ẩn (Race Condition/Data-Races) và cho phép triển khai mã nguồn Thread-Safe (an toàn luồng) ngay từ giai đoạn biên dịch.

(Chúng ta đang đứng trước bước ngoặt cho việc áp dụng dần dần Swift 6.)


Vì vậy, bài giảng này được thiết kế với mục tiêu giúp bạn học tất cả các nội dung liên quan đến Swift Concurrency, tức là từ A đến Z, để từng bước tiến tới Swift 6. Vui lòng tham khảo nội dung chính của khóa học bên dưới, và tôi cũng có giải thích chi tiết về khóa học trong video giới thiệu bài giảng đầu tiên, nên mong bạn cũng hãy tham khảo thêm.

(Nếu bạn học đến hết Phần 2, tôi tin rằng nền tảng lý thuyết cho việc áp dụng Swift 6 sẽ được hoàn thiện.)


Luôn là mục tiêu cá nhân trong các bài giảng của tôi, tôi đang truyền tải những nội dung chi tiết và sâu sắc hơn bất kỳ bài giảng nào về Swift Concurrency trên thế giới này. (Vì tôi tin rằng sự khác biệt nhỏ trong những chi tiết tỉ mỉ như một sự ám ảnh sẽ tạo nên sự khác biệt về năng lực, nên tôi luôn cố gắng cung cấp các ví dụ mã nguồn đa dạng và tài liệu được sắp xếp gọn gàng.)

Nội dung được đề cập trong khóa học 🕵🏻‍♂️👨🏻‍🎓

(1) Nội dung chính được đề cập trong Phần - 1 (Bài giảng này)

  • Thấu hiểu đúng về Task / async / await


  • Cách thức hoạt động của hàm bất đồng bộ (async)

  • Giới thiệu API bất đồng bộ mới liên quan đến URLSession

  • Sử dụng Continuation (1) Chuyển đổi hàm callback / (2) Chuyển đổi phương thức Delegate sang phương thức bất đồng bộ

  • Ví dụ dự án chuyển đổi phương thức Delegate của ứng dụng vị trí (CoreLocation) sang async/await

  • Nội dung lý thuyết về tính đồng thời có cấu trúc (Structured Concurrency)

  • Xử lý song song - (1) async let (2) TaskGroup

  • Thấu hiểu cơ chế hoạt động của việc hủy bỏ tác vụ (Ví dụ dự án liên quan đến hủy bỏ tác vụ)

  • Tìm hiểu về mô hình hủy bỏ mang tính hợp tác

  • Ứng dụng của tính đồng thời có cấu trúc và hủy bỏ tác vụ

  • Ứng dụng của TaskGroup (Chỉ định số lượng luồng đồng thời - Cài đặt tùy chỉnh)

  • Ứng dụng biến Task-Local


(2) (Tương lai) Nội dung chính sẽ được đề cập trong Phần - 2 (Bài giảng riêng)

  • Thấu hiểu lập trình đồng thời dưới góc độ Khoa học Máy tính (Thấu hiểu cấu trúc Luồng/Bộ nhớ)

  • Data Isolation / Task Isolation / Actor Isolation (Hiểu về khái niệm cô lập)

  • Task Isolation và Shared Mutable State (Dữ liệu chia sẻ có thể thay đổi)

  • Kiểu Sendable (Kiểu dữ liệu an toàn để chia sẻ giữa các luồng)

  • Chinh phục hoàn toàn Actor (1) Cách ly/Không cách ly (2) Tính nguyên tử (3) Tính tái nhập (4) Actor hopping

  • (5) Chặn MainActor (6) Giải quyết tranh chấp Actor

  • Global Actor và MainActor

  • Ví dụ dự án triển khai bộ nhớ đệm (cache) bằng Actor

  • AsyncSequence (Dãy tuần tự bất đồng bộ) và AsyncStream (Luồng bất đồng bộ)

  • Ví dụ dự án áp dụng AsyncStream vào WebSocket

  • Truyền (sending) các kiểu Non-Sendable

  • Vấn đề liên quan đến sự cô lập của hàm (closure) - isolated (Actor)? = #isolation / @isolated(any)

  • Thực thi Trình thực thi (Executor) tùy chỉnh / Ưu tiên Trình thực thi (Executor) của Task

  • (Tham khảo) Từ khóa consume / consuming

  • Quy tắc cú pháp chuyên sâu của Actor - Hàm khởi tạo / Hàm hủy / Protocol / Kế thừa / Extension

  • Chuyển đổi từ Swift 5 sang Swift 6

  • Phân tích dự án bằng cách sử dụng Instruments



    Link bài giảng Part-2: https://inf.run/TyZcJ


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

📌 Chúng tôi có mục tiêu bao quát lập trình Swift Concurrency từ A đến Z.

📌 Đây là nền tảng để viết mã an toàn giữa nhiều luồng ngay từ thời điểm biên dịch (mục tiêu của Swift 6).

📌 Đây là bài giảng được tạo ra bằng cách phân tích hoàn hảo tất cả các video WWDC liên quan đến Swift Concurrency hiện có.

📌 Phân tích vô số sách và bài giảng về Concurrency từ nước ngoài để bao quát toàn bộ nội dung một cách chi tiết nhất có thể mà không bỏ sót bất kỳ điều gì.

📌 Đa dạng các dự án ví dụ

📌 Vì vậy, nó chi tiết hơn bất kỳ bài giảng Swift Concurrency nào trên trái đất !!!!

📌 (Giống như các bài giảng trước đây của tôi) tôi cung cấp các tài liệu học tập riêng biệt để giúp bạn hiểu và hệ thống hóa kiến thức một cách trực quan nhất có thể.

Tài liệu tốt nhất để phục vụ việc học tập sẽ được cung cấp.

Có thể mua giáo trình riêng (Sách điện tử PDF)

Để giúp bạn hiểu một cách trực quan nhất, tôi sẽ giải thích bằng một bộ giáo trình riêng dày 300 trang.
(Giáo trình phải được mua riêng.)

Cung cấp đa dạng tài liệu dịch thuật như bản dịch tài liệu chính thức

Chúng tôi cung cấp bản dịch của tài liệu chính thức Swift 6 (Concurrency), tài liệu chính thức API Collection, v.v. để giúp bạn tận dụng tối đa thời gian học tập một cách hiệu quả nhất.

Cung cấp tài liệu mã nguồn ví dụ cho nhiều dự án khác nhau

Không chỉ dừng lại ở nội dung lý thuyết, bạn sẽ được học chuyên sâu thông qua việc trực tiếp áp dụng những gì đã học vào dự án.

Cung cấp tài liệu mã nguồn học lý thuyết

Cung cấp tài liệu mã nguồn playground với nhiều ví dụ đa dạng để hỗ trợ việc học lý thuyết một cách tốt nhất.

Lưu ý trước khi đăng ký khóa học

Giáo trình bán riêng (30.000 won)

1. Cung cấp tài liệu học tập

  • Cung cấp tài liệu mã nguồn /

    Cung cấp ví dụ dự án

  • Cung cấp nhiều bản dịch (Swift 6 - Concurrency / API Collection / Migrating to Swift 6)

2. Kiến thức tiên quyết và lưu ý

  • Kiến thức cơ bản về cú pháp Swift - trình độ có thể sử dụng thành thạo hàm, closure, v.v.

  • Kiến thức cơ bản về cách xử lý các hàm callback bất đồng bộ truyền thống, DispatchQueue, v.v.

  • Kinh nghiệm xử lý API gọi mạng (URLSession, v.v.) bằng Swift

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

3. Môi trường thực hành (Có thể theo học trong môi trường từ mức dưới đây trở lên)

  • macOS Sequoia / Xcode 16 (Học lý thuyết trên Playground cũng có thể thực hiện trên Xcode 15.3 ~ 15.4)


💌 Liên quan đến bản quyền nội dung bài giảng


Nội dung của bài giảng này, trong trường hợp tôi có tham khảo dù chỉ một chút hình ảnh, thì địa chỉ URL liên quan đã được để lại trong tệp PDF. Ngoại trừ những trường hợp đó, tất cả các tài liệu đều do tôi tự soạn thảo, vì vậy việc đưa nội dung bài giảng này lên blog và chia sẻ tệp PDF giáo trình điện tử được dùng làm tài liệu bài giảng đều bị nghiêm cấm trong mọi trường hợp.

(Nếu vi phạm các nội dung liên quan đến bản quyền này, bạn có thể phải chịu trách nhiệm pháp lý, vì vậy xin vui lòng lưu ý.)

Hỏi: Khóa học có được học trọn đời không?

A. Đây không phải là khóa học trọn đời. Khóa học này có thời hạn truy cập bài giảng là 24 tháng (2 năm). Xin vui lòng lưu ý. (Sau nhiều lần trải qua các trường hợp chia sẻ trái phép bài giảng của mình.. và vì tôi cũng không kiếm được số tiền quá lớn so với thời gian và công sức bỏ ra.. nên đây chỉ là biện pháp tốt nhất mà tôi có thể làm để ngăn chặn việc chia sẻ bài giảng, mong các bạn rộng lòng thông cảm 🙏🏻)

Nếu bạn đã từng tham gia khóa học Bootcamp ngữ pháp..? 🙋🏻‍♂️🙋🏻‍♀️

Nếu bạn đã từng tham gia khóa học Swift Master School (khóa 2 tháng) của tôi, vui lòng liên hệ qua Slack.. tôi sẽ cung cấp mã học miễn phí cho khóa học Part-1 này. (Vui lòng kiểm tra thông báo chung trên Slack của Bootcamp.)

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

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

  • Dành cho những ai muốn học lập trình Swift Concurrency một cách bài bản.

  • Dành cho những ai muốn học sâu về lý thuyết lập trình đồng thời một cách bài bản.

  • Dành cho những ai muốn "nghiền ngẫm" kỹ hơn cả những video WWDC!!!!!!

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

  • Những kiến thức cơ bản của ngôn ngữ Swift

Xin chào
Đây là allen

7,620

Học viên

757

Đánh giá

312

Trả lời

5.0

Xếp hạng

7

Các khóa học

Tôi là Allen, nhà phát triển iOS.
https://www.youtube.com/@allen_ios

"Kiến thức thực sự hiểu rõ là phải có thể giải thích một cách dễ dàng bằng ngôn ngữ của chính mình." là phương châm của tôi.

Vì vậy, tôi muốn trở thành một nhà phát triển có thể chia sẻ kiến thức bằng ngôn ngữ mà bất kỳ ai cũng có thể hiểu được, thông qua việc giải thích một cách dễ hiểu những sai lầm mà tôi đã trải qua trong quá trình học tập.


Tôi không quan tâm đến việc tạo ra những bài giảng chỉ dạy hời hợt những chủ đề dễ dàng trong thời gian ngắn.
Những bài giảng như vậy có thể được tạo ra nhanh chóng như sản xuất hàng loạt, nhưng tôi tin rằng để cuối cùng "trưởng thành thành một nhà phát triển giỏi", thì nền tảng lý thuyết phải thực sự vững chắc.

Thay vì những bài giảng dễ dãi, mục tiêu bài giảng của tôi là truyền đạt những nội dung khó mà bạn
bắt buộc phải biết để trở thành một nhà phát triển giỏi (người có thể không ngừng phát triển) một cách dễ hiểu và trực quan nhất có thể.
Từ đó, tạo ra nền tảng để chính các bạn, chứ không phải tôi, có thể tự mình trăn trở và suy nghĩ về lý do TẠI SAO (WHY).

Cũng giống như việc bản thân tôi luôn nỗ lực để ngày mai trở thành một nhà phát triển tốt hơn,
tôi muốn truyền đạt một cách sâu sắc những nội dung mà mình đã từng trăn trở.

 

Tôi nghĩ rằng việc liên tục thất bại trong các buổi phỏng vấn, hoặc không thể diễn đạt những nội dung dễ dàng bằng ngôn ngữ của chính mình, đồng nghĩa với việc bạn chưa thực sự hiểu rõ chúng. Ngược lại, tôi tin rằng chỉ khi có "nền tảng cơ bản vững chắc" về những nội dung cơ bản và CS, bạn mới có thể phát triển nhanh chóng.


👇🏻Mọi thắc mắc vui lòng gửi về email bên dưới.

we.love.code.allen@gmail.com


Ngôn ngữ: Swift, Python, Java, C#

Thêm

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

Tất cả

50 bài giảng ∙ (11giờ 38phú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ả

65 đánh giá

5.0

65 đánh giá

  • roel님의 프로필 이미지
    roel

    Đánh giá 16

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Giảng viên đã giải thích rất tỉ mỉ và chi tiết, giúp tôi hiểu rõ những khái niệm mà trước đây tôi chỉ biết một cách sơ sài. Điều ấn tượng nhất trong buổi giảng lần này là những ví dụ minh họa cách áp dụng vào dự án thực tế rất xuất sắc. Không chỉ truyền đạt lý thuyết đơn thuần mà còn có những ví dụ tập trung vào thực tế giúp tôi dễ hiểu hơn rất nhiều, đồng thời giúp tôi tự tin rằng mình có thể áp dụng ngay vào công việc thực tế.

    • tjdgml1502376517님의 프로필 이미지
      tjdgml1502376517

      Đánh giá 2

      Đánh giá trung bình 5.0

      Đã chỉnh sửa

      5

      80% đã tham gia

      Đây là một bài giảng hay nhất về concurrency.

      • sjybext6573님의 프로필 이미지
        sjybext6573

        Đánh giá 4

        Đánh giá trung bình 5.0

        5

        100% đã tham gia

        Tôi rất mong chờ Part 2 của bài giảng... Nội dung rất khó nhưng thầy đã giải thích một cách dễ hiểu, tôi thực sự rất cảm ơn! Tôi cảm thấy tự tin hơn về Swift Concurrency!

        • lghan000203650님의 프로필 이미지
          lghan000203650

          Đánh giá 6

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

          Tôi nghĩ đây là một khóa học bắt buộc phải nghe để học Swift Concurrency. Việc so sánh GCD hiện tại với Swift Concurrency đã giúp tôi hiểu rõ ràng về cách quan điểm lập trình bất đồng bộ đã thay đổi từ quá khứ đến hiện tại, và phần giải thích về structured concurrency đã rất hữu ích. Mong rằng sẽ có nhiều khóa học hay như vậy trong tương lai!

          • shimstone5884님의 프로필 이미지
            shimstone5884

            Đánh giá 6

            Đánh giá trung bình 5.0

            5

            100% đã tham gia

            Tôi đã sử dụng mã liên quan đến Concurrency một cách mơ hồ, nhưng tôi đã có thể dễ dàng hiểu được các nguyên tắc!

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

            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!

            2.089.819 ₫