Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

%PJU,PUMJO1SPHSBNNJOH

᠗⛟ ┟♼❧㬗 ⼯ể≃ㅛể 䁃ゐᠳ㎧

Copyright Note
Cppl;Epju"㤻㲧⎗ 㻫≃៟ⅿ◴ 0ㅛ㎧ⲋ㵣⟻⎓Ⳙ
Bvuips;䁐⿨ᴼ )ZpvohefplIxboh<tfbo/zeixbohAhnbjm/dpn*
VqebufEbuf;39.Kvof.312:
JttvfEbuf;36.Opw.3128
TmjefSfwjtjpo$;sfw13
Ipnfqbhf;bdbsppn/ofu
Ejtusjcvups;ㅛ㎧ⲋ㵣⟻⎓Ⳙ )᳛᳠;◼㿫ៃ*

DpqzsjhiuŠ312:czbdbsppn/ofuBmmsjhiutsftfswfe/
Bmmtmjeftdboopucfnpejgjfeboedpqjfexjuipvuqfsnjttjpo/
⒏ệ ⲓⅣㅛểㄿ ᪛ゐㄧ 㾯ᗧ⾭ㅛ ⚧ᚤ-⛜⪓ḇ ⯿ ⾭ⲜᲯ᳋/

Do it! Kotlin Programming 

Education Environments
Host PC
Xjoepxt92175cjut)5HCnfnpsz*
NBDPT

Development Environments
JoufmmjKJEFBDpnnvojuz
BoespjeTuvejp4/y
TpvsdfUsff )Hju*
WjsuvbmNbdijofgpsBoespje

Target Board
BoespjecbtfenbdijofpsTnbsuqipof

Do it! Kotlin Programming 


Objectives
㩔㷀⒰ 䀄⍜᣸⊘✍ ᤰ⟸ ᜜᱐
㪫⫄ ☗ᚤ-⾟⾛ㄿ 㲠㎼-ⳋⲜ 䀿ᚤ ᝓ㝼

ᤰ⟸ 䀄⍜᣸⊘✍ ☸➕ ⶵ῝
⚧⯿〧 㪧ㅬ-㽏⯿-䄷⍫ ㈃⾛-☗⿛ᛣ ┟ㅷ⿛-㳳ㅣ ㅬ㞃∌

㩔㷀⒰㉘ 㢔ᜀἜ ᤰ➕៼ 䅜ㆩ


㽏⯿㿼 ◶ PPQ 㻫≃៟ⅿ◴-㝻ᗧḃ 㩛ⅿⲋ ᠗♼-ⅳ᳋-㤻⋏㳛-᫷ 㙿⎓

え῜⍜㉴῜バⰜ 㩔㷀⒰ 䅕㊥ ✏ ⮬ㆩ
㤻㲧⎗ 䀼ㆌ-Bolp䀼ㆌ

Do it! Kotlin Programming

Contents (1/2)

୐૩݃‫ ׼‬- ௏ౣܽ ӝࠄ ੊൤ӝ


01 ௏ౣܽ द੘ೞӝ
02 ߸ࣻ৬ ੗‫ܐ‬ഋ, ো࢑੗
03 ೣࣻ৬ ೣࣻഋ ೐‫۽‬Ӓ‫߁ې‬
04 ೐‫۽‬Ӓ‫ ੄۔‬൒ܴ ઁয

‫ل‬૩݃‫ ׼‬- ௏ౣܽ ё୓૑ೱ ೐‫۽‬Ӓ‫߁ې‬


05 ௿‫ې‬झ৬ ё୓
06 ೐‫۽‬ಌ౭৬ ୡӝച
07 ‫׮‬নೠ ௿‫ې‬झ৬ ੋఠಕ੉झ

Do it! Kotlin Programming

Contents (2/2)

ࣇ૩݃‫ ׼‬- ௏ౣܽ ಴ળ ‫ ੄ܻ۞࠳੉ۄ‬ഝਊ


08 ઁ֎ܼҗ ߓৌ
09 ஸ۩࣌
10 ಴ળ ೣࣻ৬ ౵ੌ ੑ୹۱
11 ௏‫ܖ‬౯җ ‫ز‬दࢿ ೐‫۽‬Ӓ‫߁ې‬

֔૩݃‫ ׼‬- ௏ౣܽҗ উ٘‫ ٘੉۽‬ѐߊ


12 উ٘‫٘੉۽‬৬ ௏ౣܽ
13 ௏ౣܽ উ٘‫ ٘੉۽‬ഛ੢
14 Anko ഛ੢ ഝਊ

Do it! Kotlin Programming


㚒㏟⎯᳠  㤻㲧⎗ ᠗⛟ ㅜ䅯᠗
㤻㲧⎗ ⳃㅸ㼿᠗
⚧⯿〧 ㅷ⊳㿼⿗⪗ㅷ
㽏⯿〧 㽏⯿㿼 㻫≃៟ⅿ◴
㻫≃៟↏ㄿ 䄷⍫ ㈃⾛

ㆌ  㤻㲧⎗ ⳃㅸ㼿᠗

01 ௏ౣܽ ঱য ࣗѐ

ௐ౤ܾ੅ ఎࢥ ߔ҄
फत ഝ҄ Ҵ୸

ௐ౤ܾ ೑‫۾‬ઃౠ धਖ਼೟Ӟ

Do it! Kotlin Programming


Kotlin 㪫⫄ ☗ᚤ
▩㽜
㹧ⲋ㫄 ム ᘃ☃-Boespje〧 jPT⽘-៟⎓ᛇ ㅫ⚇ỻể-JpUỘ ⒏ệ ᘃ☃ㄫ
᳋⽸㽃 㻳→㷣⾷⬃ ᘃ☃㽇 ⯿ ㅯᶫ≄ 㼿ᱻ ᙪ/
㶹㓕
JEF)BoespjeTuvejpㄿ ⒏㚛*≃ ㄇ⑬㽃 KfuCsbjot⾷⬃ ᘃ☃㼿ᛇ ⛛៰
㤻ểᗧ ᗫᚗ㼿ᛇ ᳋㆓ ᳋᲌㼿⑗ 䀟䀿⬘ㅛ ᭹᳋/
┟ㆌ ᩄ⾷ ⬟◟㥃≇ㄧ 〜⬿ㅛ᳋/
BoespjeTuvejp⾷⬃ ⼯ể≃ㅛể ᛜⳄ ⾟⾛≃ 㝻ᗧ
⚧⯿ᱻ Ovmmbcmf)᫷ ᗹ ⪓ゐ ᗧ᲌*ᛣ OpuOvmm≃ ᩿᰿ᱻᵗ-
⚧⯿ ⬇⾟ⳃ (@(⍣ ➀⿓ Ovmmbcmf≃ ⎳ị ⯿ ㅯ᳋/

Do it! Kotlin Programming 

᳋⽸㽃 㻳→㷣
⮬ㆩ ᜀᶥ䁜 䀌⊫㻼
Lpumjo0KWN. ㅷ◻ ᗧ⪨ ␟ⳇ ⪨⾷⬃ ᷀ㅸ㼿ᱻ ⽘ㄫ ⎳ị ⯿ ㅯ᳋/
Lpumjo0KT. ㅷ◻ⲋ㩓⎤㲟⾷ ㄿ㽛 ⟳Ⅳ゗㇧⾷⬃ ᷀ㅸ㼿ᱻ ⽘ㄫ ⎳ị ⯿ ㅯ᳋/
Lpumjo0Obujwf. MMWN᠗◿ㄿ ᬋㅛ㳗⟳ 㣛㳳ㅣㄫ ㎧シ㽛 ⿓⇓ 㪧ᠪㄿ ⽘ㄫ
⎳ị ⯿ ㅯ᳋/

Kotlin/NativeバⰜ㉘ 㯀᥃
jPT)bsn43-bsn75-fnvmbupsy97`75*
NbdPT )y97`75*
Boespje)bsn43-bsn75*
Xjoepxt)njohx y97`75*
Mjovy)y97`75-bsn43-NJQT-NJQTmjuumffoejbo*
XfcBttfncmz )xbtn43*

Do it! Kotlin Programming 

㤻㲧⎗ㄿ ㆌㇷ
ㅷ⊳㿼⾷ ᳧㽃 》⌿⍣ ◟⎓ ㆈㄫ ⯿ ㅯᱻ ㇼ㇨ ⾟⾛
᫷ 㷓ㅟ㬗≃ ㅟ㽃 㻫≃៟↏ㄿ ㋸᳏ㄫ ⿯☐㽇 ⯿ ㅯ᳋/
⛛㮜 ᘃ☃ㅷịㄧ 㤻㲧⎗ㄿ ㅛ⇗ 㲠㎼ㄫ (OQF⾷⬃ ㅷㄇ≔᳋(Ⅳᛇ 㽃᳋/
OQFᱻ OvmmQpjoufsFydfqujpoㄫ ㋫⿓ ⎷㽃 ᙪ
⼫㋣ ᗫᚗ㼿ᛇ 䂏ㄏ㇨
㽏⯿㿼 㻫≃៟ⅿ◴ᛣ ᘄ㚛 ㎧㾌 㻫≃៟ⅿ◴ㅛ ⒏ḷ ᗧ᲌
⬟◟㥃≇ㄫ ⫄↜㽇 ⯿ ㅯ᳋/

Do it! Kotlin Programming 


⼯ể≃ㅛểㄿ ᛜⳄ⾟⾛
㊐✔ㅀ え῜⍜㉴῜ ᣸⒬០ 㩔㷀⒰
㈃ㅫⲋ ᛇⲓ⎨ . ㅷ◻⾟⾛ㄿ ㈃ㅸㅷ
⬇ ⎯ㅛ㩓≃ ⳃⲋ㭃㍯ Æ 》Ⅳ㩛 ㅛ䂫 ㅷ◻ㄿ ❧❫ ㄇ⊳ ㇼ㘬 ᛇ⯿

㊐✔ ジゴㅀ Oracle JDK


ㅷ◻ ⾟⾛ ㅷ㚛ᱻ ┛⊳㎧⎳ TELㅟ PsbdmfKELᱻ
㲠ㇼ ᠗᲌ㄫ ル㽛 Ⅳㅛ⬇ⲋ⠫ ㎧❯

OpenJDK
》㻯⭳ⲋ䀻ḃ TEL≃ PsbdmfKEL〧 ᙗㄿ ᷀ㅣ㼿᩿ ⑮ ᗧ㎧
⪨ゐ᠗᲌ㅛ ⡇㎫ 㿼㫃≃ ㈃ᛜ㽃᳋/

Do it! Kotlin Programming 

01 ௏ౣܽ ঱য ࣗѐ

ௐ౤ܾ੅ ఎࢥ ߔ҄

फत ഝ҄ Ҵ୸
ௐ౤ܾ ೑‫۾‬ઃౠ धਖ਼೟Ӟ

Do it! Kotlin Programming

ㅷ◻ JDK ⬋㠿 㼿᠗
JDK Ⱔ㥘ᶔ ㅜ?
㤻㲧⎗ㄫ KWN⾷⬃ ⳋ㽰㼿᠗ ル㽛
᠗㉛ ㅷ◻〧 ⪨䀟ㅸゐ㽇 ⯿ ㅯᛇ ㅷ◻ Ⅳㅛ⟳⇓⎓⍣ ㅛゐ㽇 ⯿ ㅯ᳋/

Oracle JDK vs OpenJDK


PsbdmfKEL;⛛⼯ ⾬ᵗㅛ㲟⍣ ㎧⭴㇨ㄣ≃ ☂ㄣ∋⑛ (ᝓᶬ(☐Ⳅㄣ≃ Ⅳㅛ⬇ⲋ ᝓ⏋
㼫ほ
PqfoKEL;㈃㽃 ⾭ㅛ ⪓ゐ ᗧ᲌/᳏ ⛛⼯ ⬃⠫ⲋㄿ ㄿ┛ᗧ ⾭⾛ ㄇ㎧⛛⯿ ⾛∋ェ

Azul㉘ Julu
UDLㅟ㎄ㄫ 㮜ᛣ㽃 PqfoKEL⍣ ┝⾛⬃ ☗㷓㼿ᱻ ㈃ 4ㄿ ⚋ᴻ
Do it! Kotlin Programming 
JDK ☗㷓㳷ㄿ ⬇㫄
㇐䁘ᶔ ✰㻬㸐㉘ Ⱐ㯝

https://www.oracle.com/
https://openjdk.java.net/ technetwork/java/javase
/downloads

https://www.azul.com/downloads/zulu/

Do it! Kotlin Programming 

01 ௏ౣܽ ঱য ࣗѐ

ௐ౤ܾ੅ ఎࢥ ߔ҄

फत ഝ҄ Ҵ୸

ௐ౤ܾ ೑‫۾‬ઃౠ धਖ਼೟Ӟ

Do it! Kotlin Programming

IntelliJ
IntelliJ
kfucsbjot⾷⬃ ⎳ệ ᶫᝓ≃ 㤻㲧⎗⾟⾛〧 ᝨ㽐ㅛ ㅿ ⏅ᱻ᳋/
ᘃㅟ㇨ㅟ ⪓ゐ⾷⬃ dpnnvojuz♫㇫ㄫ ┛⊳≃ ⪓ゐ㽇 ⯿ ㅯ᳋/
iuuqt;00xxx/kfucsbjot/dpn0jefb0epxompbe

Do it! Kotlin Programming 


Create a new project
New Project
Kbwb⬇㫄
TEL⬇㫄
Kbwb2/7ㅛ⪨ ⬇㫄
Vtfmjcsbsz⬇㫄
Qpskfdu Obnf
IfmmpLpumjo

Do it! Kotlin Programming 

Create a new project


srcバⰜ Kotlin 㢔ᜀ
Xjo;Bmu,Jotfsu㪋 䀠ㄧ
⎯゗ⲋ ゗㠈 ␻ᱛ⾷⬃ ⬇㫄
LpumjoGjmf0Dmbtt
bqqㅬ∌ 䂫 Foufs

Do it! Kotlin Programming 

Create a new project


Coding
nbjoㄫ 㪧ㅛ㳬㼿ᛇ ubc㪋⍣ ᯳⇓⛛ㅷ/
fun main() {

nbjo 㽏⯿ᗧ 㤻ể ⾛ⳃⲋ㲟⾷ ㄿ㽛 ㅷ᷀ 〫⬘ ḃ᳋/


fun main() {
println("Hello Kotlin!")
}

ⷤ䂉 ᷨ㢕㮤(Win)
Dusm,Tijgu ,G21

Do it! Kotlin Programming 


Hello Kotlin ❫⬄
⢄Ⱍ
dmbttᗧ ⾭ᱻᵗ nbjo␻⬃ể 㼿᩿≃ qsjoumoㄫ 㤿⭻⾷ ⳋ㽰㼿ᛇ ㅯ᳋/
ⳋ㈃≃ᱻ nbjo␻⬃ểᱻ 㳳ㅣ⑬ㄫ ᠗㋧ㄣ≃ ㅷ᷀ㄣ≃ 㩛ⅿⲋᗧ ⫄⬘ḃ᳋/
Uppmt?Lpumjo?TipxLpumjoCzufdpef⾷⬃ Efdpnqjmfㄫ 㽛⛟᳋/
public final class HelloKt {
public static final void main(@NotNull String[] args) {
Intrinsics.checkParameterIsNotNull(args, "args");
String var1 = "Hello Kotlin";
System.out.println(var1);
}
}

Do it! Kotlin Programming 

main( )⾷⬃ ⏋ᘃ⚧⯿⍣ ⪓ゐ㼿ᱻ ᚤ゗


㩔῜ ⟴㍰バⰜ maina⍜ Ⱐ㯝䁘ᶔ ួㆰ
nbjo)bsht;Bssbz=Tusjoh?*
fun main(args: Array<String>) {
println(args[0]) // ৻ࠗ੄ ୐ߣ૩ ੋ੗
println(args[1]) // ৻ࠗ੄ ‫ߣف‬૩ ੋ੗
println(args[2]) // ৻ࠗ੄ ࣁߣ૩ ੋ੗
}

㻫≃៟↏ た❧⾷⬃ ㅟㅷ⍣ ☂⼫ịㅟ᳋/

Do it! Kotlin Programming 

HelloKotlinㄿ ❫⬄
main()㉀ 㡜⯁㈄ 䁨ⴘ⍜ ⷤ䂉 㓄㊅㌐㉴ᷤ.
ㅷ◻〧 ᘀㄧ ᘄ㚛 ㎧㾌 ⾟⾛ᱻ 㻫≃៟↏ㄫ ⳋ㽰㼿᠗ ル㽛
㩛ⅿⲋ〧 ៟ ⼯⾷ nbjo)*㼫ほ
㤻㲧⎗ㄧ 㩛ⅿⲋ ⾭ㅛ nbjo)*㽏⯿ 㼿᩿≃ ⳋ㽰 ᗧ᲌
DecompileἜ HelloKotlin.kt Ⲍⶤ
public final class HelloKotlinKt {
public static final void main() {
String var0 = "Hello Kotlin!";
boolean var1 = false;
System.out.println(var0);
}

// $FF: synthetic method


public static void main(String[] var0) {
main();
}
}

Do it! Kotlin Programming 


᷀㇨ ␻⒏⎓ ⿨⿔
䀄⍜᣸⊨㉘ ㉼✘㌁㉸ ╔▨⒬ ㄁ロ

Do it! Kotlin Programming 

You might also like