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

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

(5.0) 26 đánh giá

261 học viên

Độ khó Trung cấp trở lê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

갱모

31% đã tham gia

Khóa học muốn giới thiệu cho những ai muốn học Swift Concurrency nhưng thấy xem WWDC quá khó khăn

5.0

이태현

31% đã tham gia

Tôi rất hài lòng vì khóa học rất bổ ích.

5.0

김시종

39% đã tham gia

Có vẻ như đây là tài liệu bài giảng giúp hiểu về Swift Concurrency một cách rất chi tiết, cảm ơn bạn

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

  • Hiểu về Swift Concurrency qua lăng kính Khoa học máy tính (CS)

  • Khái niệm về luồng thực thi (thread pool) truyền thống, luồng thực thi cộng tác (cooperative thread pool) và cấu trúc bộ nhớ

  • Cô lập tác vụ / Sendable

  • Khái niệm cơ bản về Actor - Cách ly / Không cách ly

  • Sử dụng Actor - Tính nguyên tử/Tính tái nhập/Hopping/Tối ưu hóa

  • Actor - Quy tắc về Hàm khởi tạo/Hàm hủy/Protocol/Kế thừa/Mở rộng

  • Actor toàn cục / MainActor

  • AsyncSequence / AsyncStream

  • Triển khai Trình thực thi (Executor) tùy chỉnh và khái niệm về mức độ ưu tiên

  • Vấn đề về việc truyền các kiểu Non-Sendable và cô lập hàm

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

(Để biên soạn tài liệu cho bài giảng này, chúng tôi đã mất hơn một năm. Vì nội dung bài học được tối ưu hóa/tốt nhất 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, mong các bạn thông cảm rằng chúng tôi bán tài liệu riêng để duy trì chất lượng bài giảng. Việc mua tài liệu là tùy chọn. Bạn hoàn toàn có thể chỉ mua khóa học.)

Swift Concurrency cho Swift 6 bởi Allen (Giáo trình tích 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 - 2) ✍🏻

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ề thực lực.

🌿🌿🌿



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ậ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, để có thể 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 hoàn thành việc học toàn bộ nội dung của Phần 1 và 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, khóa học này khai thác 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ỏ nhưng đầy tỉ mỉ như một sự ám ảnh sẽ tạo nên sự khác biệt về trình độ, 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 cho các bạn.)

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

  • Hiểu về lập trình đồng thời dưới góc độ Khoa học máy tính (Hiểu về cấu trúc Thread/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 dữ liệ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

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

  • 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

  • Hiểu về cách thức 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 - Thiết lập tùy chỉnh)

  • Ứng dụng của biến Task-Local

Link bài giảng Part-1: https://inf.run/jXpfH

Đặ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).

📌 Khóa học được tạo ra sau khi phân tích hoàn hảo tất cả các video liên quan đến WWDC - Swift Concurrency hiện có.

📌 Đây là bài giảng được tạo ra bằng cách tham khảo tất cả các tài liệu Swift Evolution (github) hiện có.

📌 Phân tích vô số sách và bài giảng nước ngoài liên quan đến Concurrency để bao quát tối đa mọi nội dung không sót một chi tiết nào.

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

📌 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 !!!!

📌 (Như các bài giảng của tôi vẫn luôn như vậy) 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ể.

Sử dụng tài liệu tốt nhất cho việc học tậ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 bổ sung (Tài liệu mã nguồn được cung cấp miễn phí.)

  • 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 - mức độ có thể sử dụng thành thạo các hàm (function), 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 UIKit, SwiftUI ở mức độ cơ bản

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

  • macOS Sequoia / Xcode 16.2 trở lên

💌 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 hình ảnh hoặc các tài liệu khác, trong tệp PDF đều có để lại địa chỉ URL liên quan. Ngoại trừ những trường hợp đó, tất cả các tài liệu còn lại đề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 cũng như chia sẻ tệp PDF giáo trình điện tử dùng làm tài liệu giảng dạy đề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 ý.)

Q. 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 giới hạn việc học là 24 tháng (2 năm). Xin vui lòng lưu ý. (Vì tôi đã nhiều lần gặp phải trường hợp chia sẻ khóa học của mình.. và so với thời gian và công sức tôi bỏ ra thì nó cũng không kiếm được số tiền lớn.. 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ẻ khóa học, mong các bạn rộng lòng thông cảm 🙏🏻)

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ề Swift Concurrency

  • Dành cho những ai muốn học kỹ cả nội dung CS (Khoa học máy tính)

  • 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

  • Mức độ kiến thức cơ bản về lập trình đồng thời

Xin chào
Đây là allen

7,619

Học viên

756

Đá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ả

72 bài giảng ∙ (16giờ 2phú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ả

26 đánh giá

5.0

26 đánh giá

  • ckdgnl104263님의 프로필 이미지
    ckdgnl104263

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    31% đã tham gia

    • gaeng11072206님의 프로필 이미지
      gaeng11072206

      Đánh giá 2

      Đánh giá trung bình 5.0

      5

      31% đã tham gia

      Khóa học muốn giới thiệu cho những ai muốn học Swift Concurrency nhưng thấy xem WWDC quá khó khăn

      • rnjsdydqkr0550님의 프로필 이미지
        rnjsdydqkr0550

        Đánh giá 5

        Đánh giá trung bình 5.0

        5

        61% đã tham gia

        • nayalth8348님의 프로필 이미지
          nayalth8348

          Đánh giá 3

          Đánh giá trung bình 5.0

          5

          31% đã tham gia

          Tôi rất hài lòng vì khóa học rất bổ ích.

          • jkjk950님의 프로필 이미지
            jkjk950

            Đánh giá 5

            Đánh giá trung bình 5.0

            5

            34% đã tham gia

            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!

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

            181.500 ₫

            25%

            5.067.376 ₫