Android

LINE Android CI์— App Bundle ์ ์šฉ๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”. LINE Plus ์ฐจ์˜ํ˜ธ์ž…๋‹ˆ๋‹ค. LINE Android ํŒ€์—์„œ๋Š” ์ž‘๋…„ 7์›”๋ถ€ํ„ฐ Android App Bundle์„ ๋„์ž…ํ•ด์„œ ์•ฑ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ 1๋…„ ์กฐ๊ธˆ ๋„˜๊ฒŒ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ์š”. LINE Android CI์— App Bundle์„ ์ ์šฉํ•˜๋ฉด์„œ ๊ฒช์—ˆ๋˜ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์–ด๋ ค์›€์„ ๊ณต์œ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๋จผ์ € App Bundle๊ณผ ์œ ๋‹ˆ๋ฒ„์„ค APK์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ์†Œ๊ฐœํ•˜๊ณ  LINE Android CI ์‹œ์Šคํ…œ์—์„œ App Bundle์— ๋Œ€์‘ํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋– ํ•œ ์ž‘์—…์„ ํ–ˆ๋Š”์ง€ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋‹ค์Œ CI ์‹œ์Šคํ…œ์— ์ ์šฉํ–ˆ์„ ๋•Œ ๋ฐœ๊ฒฌํ•œ ๋ช‡ ๊ฐ€์ง€ ์˜ค๋ฅ˜์™€ ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ–ˆ๋Š”์ง€ ๊ณต์œ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋กœ๋‚˜ ์‹œ๋Œ€ ์›๊ฒฉ QA! ์˜คํ”ˆ์†Œ์Šค ๋””๋ฐ”์ด์ŠคํŒœ STF ๋„์ž…๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”. Software Quality Engineeringย ํŒ€ ์ž„์ง€ํ›ˆ์ž…๋‹ˆ๋‹ค. QA(Quality Assurance) ๋‹จ๊ณ„์—์„œ ํŠน์ • ๋‹จ๋ง๊ธฐ์—์„œ๋งŒ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ์žˆ์Šต๋‹ˆ๋‹ค.ย ํ•˜์ง€๋งŒ ์ฝ”๋กœ๋‚˜19๋กœ ์ธํ•ด ํ•ด์™ธย ์ถœ์žฅ์€ ๋ฌผ๋ก  ์ถœ๊ทผ์กฐ์ฐจ ์–ด๋ ค์›Œ์ง€๋ฉด์„œ ์›๊ฒฉ์ง€์˜ ๋‹จ๋ง๊ธฐ๋ฅผ ์ž…์ˆ˜ํ•ด ํ…Œ์ŠคํŠธํ•˜๋Š” ์ผ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„์กŒ์Šต๋‹ˆ๋‹ค.ย ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋””๋ฐ”์ด์ŠคํŒœ์„ ๊ตฌ์ถ•ํ•˜๊ณ  ํ…Œ์ŠคํŠธ ์ž๋™ํ™”์— ํ™œ์šฉํ•œ ์‚ฌ๋ก€๋ฅผ ์—ฌ๋Ÿฌ๋ถ„๊ป˜ ๊ณต์œ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ๋‚ด Android ๊ฐœ๋ฐœ์ž ํ–‰์‚ฌ, LINE Android Day ํ›„๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”. LINE Android Day ํ–‰์‚ฌ์˜ ์ง„ํ–‰์„ ๋งก์•˜๋˜ ๋ฌธํฌ์ฃผ, ๊น€์ค€์˜์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„  LINE Android Day์—์„œ ๋ฐœํ‘œ๋๋˜ ์ฃผ์ œ์™€ ์ฐธ๊ฐ€์ž๋“ค์ด ๋Š๊ผˆ๋˜ ์ ์„ ๊ณต์œ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

LINE์—์„œ๋Š” LINE Android์— ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๋ฉด์„œ ๊ฐ ๊ฐœ์ธ์ด ์–ป์€ ๊ฒฝํ—˜๊ณผ ์ง€์‹์ด ๊ฐœ์ธ์—์„œ ๋๋‚˜์ง€ ์•Š๊ณ  ์กฐ์ง์˜ ์—ญ๋Ÿ‰์œผ๋กœ ๋ฐœ์ „ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŽ์€ ๋…ธ๋ ฅ์„ ๊ธฐ์šธ์ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. LINE Android Day๋Š” ์ด๋Ÿฐ ๋…ธ๋ ฅ์„ ๋ฌธํ™”๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ํ™œ๋™ ์ค‘ ํ•˜๋‚˜๋กœ, LINE ๋‚ด Android ๊ฐœ๋ฐœ์ž ๊ฐ„์˜ ๊ต๋ฅ˜๋ฅผ ํ™œ์„ฑํ™”์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๋งˆ๋ จํ•œ ํ–‰์‚ฌ์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ํ–‰์‚ฌ๋Š” COVID 19 ํ™˜๊ฒฝ ์†์—์„œ ๋” ๋งŽ์€ ๋ถ„๋“ค์ด ์•ˆ์ „ํ•˜๋ฉด์„œ๋„ ํŽธํ•˜๊ฒŒ ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์˜จ๋ผ์ธ ํ–‰์‚ฌ๋กœ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

DroidCon2019 Vienna ๋ฐฉ๋ฌธ ํ›„๊ธฐ

Android ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๊ฐ€์žฅ ์œ ๋ช…ํ•œ ๊ฐœ๋ฐœ์ž ์ฝ˜ํผ๋Ÿฐ์Šค๋กœ๋Š” Google์—์„œ ์ง์ ‘ ์ฃผ์ตœํ•˜๋Š” ‘Google I/O’์™€ ‘Android Dev Summit’์„ ๊ผฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ „ ์„ธ๊ณ„์— ํผ์ ธ ์žˆ๋Š” ๊ธ€๋กœ๋ฒŒ ๊ฐœ๋ฐœ์ž ๊ทธ๋ฃน์ธ ‘Google Developer Groups (GDG)’๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์—ด๋ฆฌ๋Š” ์ฝ˜ํผ๋Ÿฐ์Šค๋„ ์žˆ๊ณ , ๋˜ ๋…์ž์ ์œผ๋กœ ๊ฐ ์ง€์—ญ์—์„œ ์—ด๋ฆฌ๋Š” Android ๊ฐœ๋ฐœ์ž ์ฝ˜ํผ๋Ÿฐ์Šค๋„ ์žˆ๋Š”๋ฐ์š”. ๊ทธ์ค‘์—์„œ๋„ ‘DroidCon’์€ ์ „ ์„ธ๊ณ„์—์„œ ๊ฐ€์žฅ ํฐ Android ๊ฐœ๋ฐœ์ž ์ฝ˜ํผ๋Ÿฐ์Šค ๋„คํŠธ์›Œํฌ๋กœ ์•Œ๋ ค์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. 2009๋…„ ‘DroidCon Berlin’์„ ์‹œ์ž‘์œผ๋กœ ์ฃผ๋กœ ์œ ๋Ÿฝ์—์„œ ์—ด๋ฆฌ๋‹ค๊ฐ€ ํ˜„์žฌ๋Š” ์œ ๋Ÿฝ์„ ๋„˜์–ด ์ค‘๋™, ์•„ํ”„๋ฆฌ์นด, ๋ถ๋ฏธ์— ๊ฑธ์นœ 22๊ฐœ ๋„์‹œ์—์„œ ๋งคํ•ด ์—ด๋ฆฌ๊ณ  ์žˆ๋Š”๋ฐ์š”. ์ €๋Š” ์ด๋ฒˆ์— ์˜ค์ŠคํŠธ๋ฆฌ์•„ ๋นˆ์—์„œ ์—ด๋ฆฐ DroidCon2019 Vienna์— ๋‹ค๋…€์™”์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€๋Š” ์ฃผ๋กœ ์•„์‹œ์•„๋‚˜ ๋ถ๋ฏธ์—์„œ ์—ด๋ฆฐ ๊ฐœ๋ฐœ์ž ์ฝ˜ํผ๋Ÿฐ์Šค์— ์ฐธ๊ฐ€ํ–ˆ์—ˆ๋Š”๋ฐ์š”. ์ด๋ฒˆ์— ์ฒ˜์Œ์œผ๋กœ ์œ ๋Ÿฝ์˜ ๊ฐœ๋ฐœ์ž๋“ค์„ ํ˜„์ง€์—์„œ ๋งŒ๋‚˜๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด ๋งŽ์€ ๊ธฐ๋Œ€๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ DroidCon Vienna์—์„  ๋งŽ์€ ๋ฐœํ‘œ๊ฐ€ ‘Kotlin’, ‘ํ…Œ์ŠคํŠธ’, ‘๋นŒ๋“œ’์™€ ๊ด€๋ จ๋œ ์ฃผ์ œ์˜€์Šต๋‹ˆ๋‹ค.

Android ์•ฑ ๋นŒ๋“œ ์†๋„๋ฅผ ๋†’์ด๋Š” 10๊ฐ€์ง€ ๋ฐฉ๋ฒ•

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” Android ์•ฑ ๋นŒ๋“œ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ๋Š” 10๊ฐ€์ง€ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋นŒ๋“œ ์†๋„๋Š” ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ์„ ์œ„ํ•ด ๋งค์šฐ ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ €๋Š” APK ํ•˜๋‚˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ์— 8๋ถ„ ๋„˜๊ฒŒ ๊ฑธ๋ ธ๋˜ ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ํ”„๋กœ์ ํŠธ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋” ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ํŒ€๋„ ์žˆ์„ ํ…๋ฐ์š”. ๊ทธ๊ฒŒ ๋ฐ”๋กœ ์šฐ๋ฆฌ ํŒ€ ์–˜๊ธฐ๋ผ๋ฉด ์ด๋ฒˆ ๋ธ”๋กœ๊ทธ๋ฅผ ๊ผญ ์ฝ๊ณ  ์ œ๊ฐ€ ์†Œ๊ฐœ๋“œ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์„ ์ž˜ ํ™œ์šฉํ•˜์…จ์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

Android ์•ฑ์˜ ํฌ๊ธฐ๋ฅผ ์ค„์ด๋Š” 10๊ฐ€์ง€ ๋ฐฉ๋ฒ•

์•ˆ๋…•ํ•˜์„ธ์š”. LINE Thailand์—์„œ ํ…Œํฌ๋†€๋กœ์ง€ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ๋ฅผ ๋งก๊ณ  ์žˆ๊ณ , Android ๊ฐœ๋ฐœ์ž๋กœ 5๋…„ ๋„˜๊ฒŒ ์ผํ•ด์™”์œผ๋ฉฐ, Firebase์˜ Google Developer Expert์ด๊ธฐ๋„ ํ•œ Jirawat Karanwittayakarn์ž…๋‹ˆ๋‹ค.
์ €๋Š” ์ด๋ฒˆ ๊ธ€์—์„œ ์•ฑ ํฌ๊ธฐ๋ฅผ ์ค„์ด๋Š” ๋ฐฉ๋ฒ•์„ ๊ณต์œ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

AIR GO์— ์•ˆ๋“œ๋กœ์ด๋“œ 9 APK ์„œ๋ช… scheme v3 ์ ์šฉํ•˜๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”. LINE์—์„œ AIR GO๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ๋Š” ๊น€์Šนํ›ˆ์ž…๋‹ˆ๋‹ค. AIR GO์— ๋Œ€ํ•ด์„  ์ด์ „์— ‘AIR GO๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค‘์—์„œ ๋จผ์ € ๋ง์”€๋“œ๋ ธ๋Š”๋ฐ์š”. ์ด๋ฒˆ ๋ธ”๋กœ๊ทธ์—์„œ๋Š” ๊ทธ์— ์ด์–ด APK ์„œ๋ช…์— ๊ด€ํ•œ ๋‚ด์šฉ๊ณผ AIR GO ํƒ์ง€ ์ •๋ณด๋ฅผ ์†Œ๊ฐœํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๊ทผ Google์ดย Android 9(Pie)์—์„œย APK Signature Scheme v3์„ ์†Œ๊ฐœํ–ˆ๋Š”๋ฐ์š”. ์ด์— ๊ด€๋ จ๋œ ๋‚ด์šฉ์„ AIR GO์— ์ ์šฉํ•˜๋ฉด์„œ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋„์›€์ด ๋  ๋งŒํ•œ ๋ถ€๋ถ„์„ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

Kotlin์œผ๋กœ ์„œ๋ฒ„์‚ฌ์ด๋“œ ๊ฐœ๋ฐœ๊ณผ Clova Skill Award ๋„์ „!

LINE Engineering Blog๋ฅผ ์ฐพ์•„์ฃผ์‹  ์—ฌ๋Ÿฌ๋ถ„, ์•ˆ๋…•ํ•˜์„ธ์š”? ์˜ค๋Š˜์€ ๋‘ ๋ช…์ด ๊ณต๋™์œผ๋กœ ์ž‘์„ฑํ•œ ํฌ์ŠคํŒ…์ž…๋‹ˆ๋‹ค. ์ €ํฌ ์†Œ๊ฐœ ๋จผ์ € ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. LINE์—์„œ ๊ฒŒ์ž„ ํ”Œ๋žซํผ ๊ฐœ๋ฐœ์„ ๋งก๊ณ  ์žˆ๋Š” Kagaya์™€ ๋™์˜์ƒ ์ƒ์ค‘๊ณ„ ์„œ๋น„์Šค LINE LIVE์˜ Android ์•ฑ ๊ฐœ๋ฐœ์„ ๋งก๊ณ  ์žˆ๋Š” Akira์ž…๋‹ˆ๋‹ค.

์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์•„๋ž˜ ๋‘ ๊ฐ€์ง€ ์ด์•ผ๊ธฐ๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„์‚ฌ์ด๋“œ Kotlin์— ๊ด€ํ•œ ๋…ธํ•˜์šฐ์™€ ์œ ์Šค์ผ€์ด์Šค๋ฅผ ๊ณต์œ ํ• ๊นŒ ํ•ฉ๋‹ˆ๋‹ค.

  1. Kagaya๊ฐ€ ๋‹ด๋‹นํ•˜๋Š” LINE GAME ํ”Œ๋žซํผ์˜ Kotlin ์ด์šฉ ํ˜„ํ™ฉ ์ด์•ผ๊ธฐ
  2. ‘LINE ์‚ฌ๋‚ด Clova Skill Award’์— ์ €ํฌ ๋‘˜์ด ํŒ€์œผ๋กœ ์ฐธ๊ฐ€ํ•ด์„œ Kotlin์œผ๋กœ ์˜๊ด‘์˜(?) ์ตœ์šฐ์ˆ˜์ƒ์„ ์ˆ˜์ƒํ•œ ์ด์•ผ๊ธฐ

LINE Creators Studio ๊ฐœ๋ฐœ์— ์‚ฌ์šฉํ•˜๋Š” Kotlin ์†Œ๊ฐœ

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

์•ˆ๋…•ํ•˜์„ธ์š”, ์ €๋Š” LINE Fukuoka ๊ฐœ๋ฐœ ํŒ€์—์„œ ์ผํ•˜๋Š” Freddie Wang์ž…๋‹ˆ๋‹ค. ์ €๋Š” ํ˜„์žฌ LINE Creators Studio๋ผ๋Š” ์ƒˆ๋กœ์šด Android ์•ฑ ๊ฐœ๋ฐœ์„ ๋งก๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. LINE Creators Studio๋Š” ๋ˆ„๊ตฌ๋‚˜ ์ž๊ธฐ๋งŒ์˜ ์Šคํ‹ฐ์ปค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ์Šคํ‹ฐ์ปค ์ œ์ž‘ ํˆด์ž…๋‹ˆ๋‹ค. LINE Creators Studio๋กœ ๋งŒ๋“  ์Šคํ‹ฐ์ปค๋Š” LINE Store์—์„œ ํŒ๋งค๋„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ธ”๋กœ๊ทธ์—์„œ๋Š” LINE Creators Studio ์•ฑ ๊ฐœ๋ฐœ์— ์ „์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ธ Kotlin์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์™œ Kotlin์„ ์ฃผ์š” ์–ธ์–ด๋กœ ์„ ํƒํ–ˆ๋Š”์ง€ ์„ค๋ช…ํ•˜๊ณ  Kotlin์˜ ์–ด๋–ค ๊ธฐ๋Šฅ์„ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ์†Œ๊ฐœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ : LINE Creators Studio๋Š” ํ˜„์žฌ ์ผ๋ณธ์—์„œ๋งŒ ์ œ๊ณต๋˜๊ณ  ์žˆ์œผ๋ฉฐ ๋‹ค๋ฅธ ์ง€์—ญ์—๋„ ๊ณง ๋ฐฐํฌ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

Kotlin์˜ ์žฅ์ ๊ณผ ํ•ต์‹ฌ ๊ธฐ๋Šฅ

Google I/O 2017์—์„œ Google์€ Android Studio 3.0๋ถ€ํ„ฐ Kotlin์„ ๊ณต์‹ ์ง€์›ํ•œ๋‹ค๊ณ  ๋ฐœํ‘œํ•œ ๋ฐ” ์žˆ์Šต๋‹ˆ๋‹ค. 2016๋…„ ๋ง LINE Creators Studio ๊ฐœ๋ฐœ ํ”„๋กœ์ ํŠธ๋ฅผ ํ‚ฅ์˜คํ”„ํ–ˆ์„ ๋‹น์‹œ ์ €ํฌ๋Š” ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹จ๊ธฐ๊ฐ„์— MVP(Minimum Viable Product) ํ”„๋กœ์ ํŠธ๋กœ ํ‚ค์›Œ์•ผ ํ•˜๋Š” ๊ณผ์ œ๋ฅผ ์•ˆ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. Kotlin 1.0์ด ์ถœ์‹œ๋œ ์ง€ ํ•œ์ฐธ ์ง€๋‚œ ํ›„์˜€์ง€๋งŒ ์ €ํฌ ํŒ€์—๋Š” Kotlin์„ ์‚ฌ์šฉํ•ด ๋ณธ ์‚ฌ๋žŒ์ด ์•„๋ฌด๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ๋จผ์ € Kotlin์„ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋–จ์ง€ ์•Œ์•„๋ณด์•˜๋Š”๋ฐ, ๊ทธ ๊ฒฐ๊ณผ ์•„๋ž˜์—์„œ ์„ค๋ช…ํ•˜๋Š” ์ด์œ  ๋•Œ๋ฌธ์— Kotlin์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

Kotlin์„ ์„ ํƒํ•˜๊ฒŒ ๋œ ๋ฐฐ๊ฒฝ

Java์™€์˜ 100% ํ˜ธํ™˜์„ฑ

Kotlin์˜ ๊ฐ€์žฅ ํฐ ๋งค๋ ฅ์€ Kotlin ์ฝ”๋“œ์™€ Java ์ฝ”๋“œ๋ฅผ ํ•œ ํ”„๋กœ์ ํŠธ์—์„œ ํ•จ๊ป˜ ์“ธ ์ˆ˜ ์žˆ๊ณ  ๊ธฐ์กด์˜ Java ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ํ”„๋กœ์ ํŠธ์—๋Š” ๋ ˆ๊ฑฐ์‹œ Java ์ฝ”๋“œ๋Š” ์—†์ง€๋งŒ Dagger 2, Retrofit, RxJava ๊ฐ™์€ Java ํ˜ธํ™˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ„๊ฒฐํ•œ ๊ตฌ๋ฌธ

Kotlin์€ ๋ฌธ์ œ ํ•ด๊ฒฐ์„ ์œ„ํ•ด ์„ค๊ณ„๋œ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. Kotlin์˜ ์ฃผ์š” ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜๋Š” ๊น”๋”ํ•œ ์ฝ”๋“œ๋ฅผ Java๋ณด๋‹ค ์‰ฝ๊ฒŒ ์“ฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด Android ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์ตœ์šฐ์„ ์ ์ด๊ณ  ํ•„์ˆ˜์ ์ธ ์š”์ธ์ž…๋‹ˆ๋‹ค.

์ค„์–ด๋“  ์ข…์†์„ฑ

Kotlin์€ Guava์ฒ˜๋Ÿผ ํฌ๊ธฐ๊ฐ€ ํฐ Java ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ์ปดํŒฉํŠธํ•œ ๋Ÿฐํƒ€์ž„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„๋‚˜ ๋ฐ์Šคํฌํ†ฑ ํ™˜๊ฒฝ์—์„œ๋Š” ๋Œ€์šฉ๋Ÿ‰ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ํฐ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ์ง€๋งŒ Android์—์„œ๋Š” ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Android ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ๋Š” 65K ๋ฉ”์„œ๋“œ ์ œํ•œ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€์šฉ๋Ÿ‰ Java ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์‚ฌ์šฉ์„ ํ”ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Kotlin์˜ stdlib ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(๋ฒ„์ „ 1.1.3-2)๋Š” ๋ฉ”์„œ๋“œ ๊ฐœ์ˆ˜๊ฐ€ 6306๊ฐœ๋ผ์„œ ๋ฉ”์„œ๋“œ ๊ฐœ์ˆ˜์— ๋”ฐ๋ฅธ ์˜ํ–ฅ์ด Guava ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ณด๋‹ค ์ ์Šต๋‹ˆ๋‹ค.

์ด์ „ ๋ฒ„์ „์˜ Android ๊ธฐ๊ธฐ ์ง€์›

Kotlin 1.0์€ Java 6์„ ๊ธฐ์ค€์œผ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฒ„์ „ 2.3 ์ด์ƒ์ธ Android ๊ธฐ๊ธฐ๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋˜ํ•œ Android ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์ค‘์š”ํ•œ ์š”์ธ์ž…๋‹ˆ๋‹ค.