คลาสข้อมูลสำหรับโดเมนของคุณ
โมเดล shared ที่ไม่เปลี่ยนแปลงพร้อม copy และ equals โดยไม่ต้องเขียนเพิ่ม
คลาสข้อมูลสำหรับโดเมนของคุณ เป็นบทเรียน Kotlin Multiplatform Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Kotlin Multiplatform Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Kotlin Multiplatform Academy มีบทเรียนทั้งหมด 4 บทเรียน
โดเมนของคุณต้องมีโมเดล
ทุกแอปอธิบายสิ่งต่าง ๆ ในโลกจริง เช่น ผู้ใช้ คำสั่งซื้อ หรือเพลง ใน KMP คุณจำลองสิ่งเหล่านี้เพียงครั้งเดียวด้วย คลาสข้อมูลที่ใช้ร่วมกัน
ทำความรู้จักคลาสข้อมูล
คลาสข้อมูล เป็นชนิดข้อมูลขนาดเล็กที่สร้างขึ้นเพื่อเก็บค่า คุณเพียงเพิ่มคีย์เวิร์ดและระบุพร็อพเพอร์ตีไว้ในส่วนหัว
data class User(val id: Int, val name: String)อยู่ใน commonMain
วาง โมเดล ไว้ใน commonMain แล้วแอป Android และ iOS จะมองเห็นโครงสร้างเดียวกันทุกประการโดยไม่ต้องเขียนซ้ำ
// shared/src/commonMain
data class User(val id: Int, val name: String)สร้างอินสแตนซ์
สร้างโมเดลโดยเรียกใช้เหมือนฟังก์ชันและส่งค่าแต่ละค่าเข้าไป จากนั้นออบเจ็กต์จะเก็บ ข้อมูล ของคุณไว้ใช้งานได้ทุกที่
val ada = User(id = 1, name = "Ada")อ่านพร็อพเพอร์ตี
เข้าถึงฟิลด์ใดก็ได้ด้วยจุด การอ่าน พร็อพเพอร์ตี ทำงานเหมือนกันในโค้ดที่ใช้ร่วมกัน Android และ iOS
val label = ada.name + " #" + ada.idtoString ฟรี
คลาสข้อมูลจะสร้าง toString ที่อ่านง่ายให้อัตโนมัติ ดังนั้นเมื่อพิมพ์โมเดล ระบบจะแสดงค่าของโมเดลแทนที่อยู่หน่วยความจำที่อ่านไม่รู้เรื่อง
println(ada) // User(id=1, name=Ada)เปรียบเทียบจากค่า
โมเดลสองตัวที่มีฟิลด์เหมือนกันจะถือว่า เท่ากัน คลาสข้อมูลจะเปรียบเทียบจากเนื้อหา ไม่ใช่จากเอกลักษณ์ในหน่วยความจำ
User(1, "Ada") == User(1, "Ada") // trueคัดลอกพร้อมเปลี่ยนค่า
ฟังก์ชัน copy ที่มีให้จะสร้างสำเนาโมเดลพร้อมแทนที่เฉพาะฟิลด์ที่คุณระบุ โดยไม่แก้ไขโมเดลเดิม
val renamed = ada.copy(name = "Grace")เลือกใช้ val แบบแก้ไขไม่ได้
ประกาศฟิลด์เป็น val เพื่อไม่ให้โมเดลเปลี่ยนแปลงหลังสร้างเสร็จ ข้อมูลที่แก้ไขไม่ได้จะปลอดภัยกว่าเมื่อต้องใช้ร่วมกันระหว่างแพลตฟอร์ม
data class Song(val title: String, val seconds: Int)ประกอบโมเดลเข้าด้วยกัน
โมเดลสามารถเก็บโมเดลอื่นเป็นฟิลด์ได้ ทำให้คุณซ้อน คลาสข้อมูล เพื่อสะท้อนความสัมพันธ์จริงในโดเมนของคุณ
data class Playlist(val owner: User, val songs: List<Song>)เหตุผลที่เรื่องนี้สำคัญ
เมื่อมีโมเดลที่ใช้ร่วมกันเพียงหนึ่งชุด Android และ iOS จะไม่มีทางเห็นโครงสร้าง ข้อมูล ของคุณไม่ตรงกัน ช่วยกำจัดข้อบกพร่องทั้งกลุ่มได้เลย 🙂
ตรวจสอบความเข้าใจ
ฟีเจอร์ใดที่มีให้ฟรีจากคลาสข้อมูลในที่นี้
สรุปทบทวน
คลาสข้อมูล ที่ใช้ร่วมกันใน commonMain มอบ copy, equals และ toString ให้ฟรี ช่วยให้คุณจำลองโดเมนเพียงครั้งเดียวสำหรับทั้งสองแอป
เรียนรู้ Kotlin ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “คลาสข้อมูลสำหรับโดเมนของคุณ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “คลาสข้อมูลสำหรับโดเมนของคุณ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Kotlin Multiplatform Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Kotlin Multiplatform Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “คลาสข้อมูลสำหรับโดเมนของคุณ”
โมเดล shared ที่ไม่เปลี่ยนแปลงพร้อม copy และ equals โดยไม่ต้องเขียนเพิ่ม คุณปฏิบัติ Kotlin Multiplatform Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Kotlin Multiplatform Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Kotlin Multiplatform Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “คลาสข้อมูลสำหรับโดเมนของคุณ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Kotlin Multiplatform Academy นี้ได้ไหม
ได้ บทเรียน Kotlin Multiplatform Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- คลาสข้อมูลสำหรับโดเมนของคุณ
- Enum และคลาสปิดผนึกสำหรับสถานะ
- ความปลอดภัยของค่า null ในโมเดล shared
- ตัวช่วยตรวจสอบข้อมูลในโมเดล