Trình bao bọc thuộc tính (@State, @Binding...) trong SwiftUI
Tìm hiểu về trình bao bọc thuộc tính liên quan đến dữ liệu xuất hiện sớm trong SwiftUI. @State, @Binding, .constant, ObservableObject, @Published, @ObservedObject, @EnvironmentObject, @Environment
Tôi đang học SwiftUI một cách dễ dàng nhưng bị mắc kẹt ở property wrapper.
🥲
@State, @Binding, @ObservedObject và nhiều thuộc tính khác rất khó tìm được câu trả lời dễ hiểu ngay cả khi tìm kiếm.
Xin chào, tôi là agmma, một nhà phát triển iOS đang làm việc
Bắt đầu học lập trình ở tuổi 31 sau khi làm công việc khác, hiện tại đang nhiệt tình phát triển iOS tại một công ty con thuộc tập đoàn công nghệ hàng đầu Hàn Quốc
Đầu năm 2020 (31 tuổi) bắt đầu học lập trình tại bootcamp
Cuối năm 2021 (33 tuổi) được tuyển dụng làm iOS Developer vị trí junior tại một công ty con thuộc tập đoàn Naver/Kakao/Line/Coupang
Hiện đang làm việc tại cùng một công ty cho đến năm 2025
Là người không chuyên ngành và bắt đầu học lập trình ở độ tuổi 30, tôi thấu hiểu sâu sắc hơn ai hết sự bế tắc và khó khăn của những người đang chuẩn bị tìm việc. Đồng thời, tôi cũng hiểu rõ những nỗ lực của những người đang chuẩn bị chuyển việc bằng cách dành thời gian quý báu của mình để phát triển bản thân một cách bền vững.
Trong suốt 2 năm không có thu nhập và chỉ chạy theo ước mơ trở thành lập trình viên, tôi muốn cung cấp khóa học chất lượng cao với mức giá hợp lý cho những người đang đi trên con đường tương tự.
Mặc dù chưa hoàn thành toàn bộ chương trình giảng dạy, nhưng khi tất cả các khóa học mà tôi đã lên kế hoạch được công bố, nếu bạn kiên trì theo dõi các khóa học của tôi, tôi sẽ chịu trách nhiệm tạo ra nội dung để bạn có thể trang bị đầy đủ kiến thức cần thiết cho một lập trình viên iOS có 1-2 năm kinh nghiệm.
⚠️ Lưu ý
Khóa học này không phù hợp với người mới bắt đầu tiếp cận SwiftUI hoặc Swift lần đầu.
Khóa học này dành cho những ai muốn học sâu về **Quản lý trạng thái (State Management)** trong SwiftUI, đặc biệt là những người muốn hiểu đúng cách hoạt động của các property wrapper như @State, @Binding, @ObservedObject, @EnvironmentObject.
Mặc dù hai khóa học trên cũng đề cập đến những kiến thức cơ bản về quản lý state, nhưng do nội dung quá phong phú nên đã có rất nhiều yêu cầu về một khóa học cô đọng và có hệ thống riêng biệt. Nhờ vào những yêu cầu từ các học viên, chúng tôi đã quyết định tạo ra khóa học này - tập hợp và hệ thống hóa những kiến thức về quản lý state vốn đang rải rác ở nhiều nơi.
🚀 Giảm giá combo 1) Làm chủ hoàn toàn SwiftUI! Tạo ứng dụng iOS thực chiến 🎉
Sự kiện giảm giá đặc biệt chỉ diễn ra trong thời gian ngắn ✨ Gặp gỡ 3 khóa học phổ biến với mức giá ưu đãi chưa từng có!
💡 Lý do bạn nên chọn gói này ✅ Tổng hợp từ cơ bản SwiftUI đến xây dựng ứng dụng thực tế trong một khóa học ✅ Ưu đãi gói học hợp lý hơn nhiều so với mua lẻ ✅ Kinh nghiệm thực chiến có thể áp dụng ngay vào phát triển iOS thực tế
📚 Cấu trúc (3 bài giảng)
🧩 Part0: Học Swift6 cơ bản qua bài tập (miễn phí)
🌱 Part1: iOS thực sự dành cho người mới bắt đầu (SwiftUI·SwiftData, 2024) — ₩77,000
🚀 Giảm giá combo 2) Từ SwiftUI nâng cao đến thực chiến + Làm chủ Combine 🎉
5 khóa học phổ biến được gộp lại để hoàn thành năng lực chuyên sâu trong một lần! (Bao gồm 3 khóa học của bộ 1)
💡 Lý do bạn nên chọn gói này ✅ Bộ 1 (Nhập môn→Thực chiến) Bao gồm toàn bộ nội dung + Mở rộng khái niệm nâng cao ✅ Nắm vững hoàn toàn luồng trạng thái/dữ liệu với Property Wrapper ✅ Học được pattern bất đồng bộ·phản ứng với Combine → Tối đa hóa khả năng mở rộng trong thực tế
📚 Cấu trúc (5 bài giảng)
🧩 Part0: Học Swift6 cơ bản qua bài tập (miễn phí)
🌱 Part1: iOS thực sự dành cho người mới bắt đầu (SwiftUI·SwiftData, 2024) — ₩77,000
⚡️ Chú ý! - Sau khi truy cập link, nhất định phải nhận coupon trước khi mua khóa học - Chương trình giảm giá có thể kết thúc bất cứ lúc nào mà không báo trước.
Quản lý trạng thái với Property Wrapper không khó như bạn nghĩ 💡
Được thiết kế dễ học và trực quan để những người mới bắt đầu học lập trình cũng có thể dễ dàng tiếp cận SwiftUI. Tôi cũng nhớ khi lần đầu học SwiftUI, tôi đã rất ngạc nhiên vì nó quá dễ và đơn giản so với UIKit.
Tuy nhiên, có một phần khó học là các Property Wrapper liên quan đến dữ liệu của SwiftUI. Những property wrapper này được sử dụng ở quá nhiều nơi đến mức không có đoạn code nào không dùng chúng, nhưng vì ngay cả khái niệm thuật ngữ cũng xa lạ nên tốc độ học tập đã chậm lại rất nhiều. Thực ra sau khi hiểu rồi thì cũng không khó đến vậy, nhưng có vẻ tôi đã loay hoay vì khó tìm được lời giải thích dễ hiểu.
Tôi đã chuẩn bị khóa học này để những người tham gia có thể dễ dàng vượt qua những khó khăn như vậy. Tất cả các bài giảng đều bao gồm các ví dụ được tạo trực tiếp, và được sản xuất với nhiều tài liệu đa dạng (hình ảnh, keynote, v.v.) để bạn có thể hiểu chỉ bằng cách nghe.
Giả sử đối tượng là những người mới bắt đầu học SwiftUI, tôi đã cố gắng làm bài giảng dễ hiểu nhất có thể, vậy nên hãy cùng tôi chinh phục Property Wrapper một cách chắc chắn nhé.
Khóa học này phù hợp với 🙆♀️
Những người mới bắt đầu học SwiftUI
Những người đang sử dụng UIKit nhưng xem tài liệu học SwiftUI
Những người cần nhanh chóng tìm hiểu về Property Wrapper trong SwiftUI
Hãy cùng tham gia khóa học này nhé! 🙌
Học cách sử dụng các property wrapper luôn xuất hiện trong code SwiftUI một cách dễ dàng và hiệu quả.
Tất cả các khóa học đều bao gồm ví dụ nên bạn có thể dễ dàng nắm bắt code.
Nội dung học tập 📚
Học về các Property Wrapper liên quan đến dữ liệu trong SwiftUI.
I'm ready to translate Korean text to Vietnamese. Please provide
# @Binding
`@Binding` là một property wrapper trong Sw
.constant
ObservableObject
I need to see the Korean text that you want me to translate to Vietnamese. You've only provide
@ObservedObject
@StateObject
`@EnvironmentObject` là một property wrapper trong SwiftUI được sử dụng để truy cập các đối tượng được chia s
I understand. I'm ready to translate Korean text to Vietnamese following all the guidelines provided, including:
- Preserv
2023, Xcode15, iOS17 nội dung được phản ánh
ObservableObject -> Chuyển đổi macro @Observable
# Chuyển đổi @StateObject
# Chuyển đổi @EnvironmentObject
@Bindable
Câu hỏi thường gặp Q&A 💬
Q. Cần có kiến thức gì?
Bạn cần phải biết cú pháp Swift thì mới có thể hiểu bài giảng mà không gặp khó khăn. 😊
Câu hỏi: Tôi mới bắt đầu với SwiftUI, liệu tôi có thể học khóa học này không?
Bạn có thể hiểu bài giảng này mà không gặp vấn đề gì ngay cả khi bắt đầu từ đây, nhưng nó sẽ tối ưu nhất cho những người đã từng trải nghiệm SwiftUI dù chỉ một chút.
Lưu ý trước khi đăng ký khóa học 📢
Môi trường thực hành
Hệ điều hành và phiên bản (OS): Cần có mac để cài đặt Xcode.
Công cụ sử dụng: Xcode
Tài liệu học tập
Ví dụ mã theo từng bài giảng
Kiến thức cần có và lưu ý
Cần có kiến thức cơ bản về Swift.
Giới thiệu người chia sẻ kiến thức ✒️
Nhà phát triển iOS hiện tại
Khuyến nghị cho những người này
Khóa học này dành cho ai?
Những người bị mắc kẹt trong Property Wrapper khi học SwiftUI
Những người biết UIKit nhưng gặp SwiftUI trong mã ví dụ
Những người cần xem nhanh SwiftUI
Cần biết trước khi bắt đầu?
Kiến thức ngôn ngữ nhanh
Xin chào Đây là
1,673
Học viên
205
Đánh giá
160
Trả lời
5.0
Xếp hạng
6
Các khóa học
안녕하세요 😀
누구나 쉽게 iOS 개발을 할 수 있도록 돕고 싶은
iOS 개발자 애구마입니다.
강의에 필요한 예제 만드는것을 좋아하고, 입문자에게 필요한 강의를 만들기 위해 연구합니다.