commonMain, androidMain และ iosMain
ชุดซอร์สทั้งสามที่คุณจะใช้งานเป็นประจำ
commonMain, androidMain และ iosMain เป็นบทเรียน Kotlin Multiplatform Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Kotlin Multiplatform Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Kotlin Multiplatform Academy มีบทเรียนทั้งหมด 4 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
Source Sets, Not Folders
Inside shared, code lives in source sets. Each one targets a different platform, and Kotlin compiles them accordingly.
Meet commonMain
commonMain is where shared Kotlin lives. Code here compiles for every target, so it must stay platform-neutral.
Meet androidMain
androidMain holds Android-only code in the shared module. Here you can touch JVM and Android APIs freely.
Meet iosMain
iosMain holds iOS-only Kotlin. It can reach Apple frameworks through Kotlin/Native interop.
A Place for Everything
Put cross-platform logic in commonMain. Drop into androidMain or iosMain only when you truly need that platform.
What commonMain Looks Like
Plain Kotlin with no platform imports belongs in commonMain, like this small greeting function.
fun greet(name: String): String {
return "Hello, " + name
}Platform Code in androidMain
An Android API call belongs in androidMain, never in commonMain, because iOS has no such class.
import android.os.Build
fun osName(): String = Build.MODELThey Share One Name
commonMain can declare an API and each platform set fills it in. That handshake is the expect/actual pattern you will meet soon.
Folder Layout
On disk the sets sit under src: src/commonMain, src/androidMain, src/iosMain, each with its own kotlin folder.
Compilation Merges Sets
For Android the compiler merges commonMain with androidMain. For iOS it merges commonMain with iosMain.
Start in Common
A good habit: write in commonMain first, and only move code outward when the compiler tells you a platform API is missing. 🙂
Quick Check
Where should this code go?
Recap
Three homes: commonMain for shared logic, androidMain for Android-only, iosMain for iOS-only. Default to common.
คำถามที่พบบ่อย
บทเรียน “commonMain, androidMain และ iosMain” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “commonMain, androidMain และ iosMain” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Kotlin Multiplatform Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Kotlin Multiplatform Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “commonMain, androidMain และ iosMain”
ชุดซอร์สทั้งสามที่คุณจะใช้งานเป็นประจำ คุณปฏิบัติ Kotlin Multiplatform Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Kotlin Multiplatform Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Kotlin Multiplatform Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “commonMain, androidMain และ iosMain” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Kotlin Multiplatform Academy นี้ได้ไหม
ได้ บทเรียน Kotlin Multiplatform Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- โมดูล shared เทียบกับโมดูลแอป
- commonMain, androidMain และ iosMain
- การอ่าน build.gradle.kts ของ shared
- การจัดวาง Test: commonTest และส่วนที่เกี่ยวข้อง