Dart
ํ๋ก ํธ์๋(UI) ๊ฐ๋ฐ์ ์ค์ ์ ๋ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋จ์ด ์ธ์ด
Dart ์จ๋ผ์ธ ์๋ํฐ
Dart SDK ๋ค์ด๋ก๋
Dart SDK ๋ Flutter SDK์ ํฌํจ๋์ด ์์ต๋๋ค.
Dart ํน์ง
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ
: Dart๋ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(OOP) ์ธ์ด๋ก์, ๋ชจ๋ ๊ฒ์ด ๊ฐ์ฒด๋ก ์ทจ๊ธ๋ฉ๋๋ค. ํด๋์ค์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ ์์น์ ๋ฐ๋ฅด๋ฉฐ, ์ฝ๋์ ์ฌ์ฌ์ฉ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ ๋์ด๊ธฐ ์ํด ์ค๊ณ๋์์ต๋๋ค.
๊ฐ๋น์ง ์ปฌ๋ ์
: Dart๋ ๊ฐ๋น์ง ์ปฌ๋ ์
์ ์ง์ํ์ฌ ๊ฐ๋ฐ์๊ฐ ์ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ ํ์๊ฐ ์๊ฒ ํฉ๋๋ค. ์ด๋ ๋ฉ๋ชจ๋ฆฌ ๋์๋ฅผ ๋ฐฉ์งํ๊ณ ํ๋ก๊ทธ๋๋จธ์๊ฒ ๋ ์์ ํ ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค.
๋จ์ผ ์์ ๋ฐ ๋ฏน์ค์ธ(Mixin) ์ง์
: Dart๋ ๋จ์ผ ์์์ ์ง์ํ๋ฉฐ, ๋ฏน์ค์ธ์ ํตํด ์ฌ๋ฌ ํด๋์ค๋ก๋ถํฐ ์ฝ๋๋ฅผ ์ฌ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๋ ๋ค์ค ์์์์ ๋ฐ์ํ ์ ์๋ ์ผ๋ถ ๋ฌธ์ ๋ฅผ ํผํ ์ ์๋๋ก ๋์์ค๋๋ค.
๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ
: Dart๋ Future์ Stream๊ณผ ๊ฐ์ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ ์ง์ํ๋๋ฐ, ์ด๋ ํจ์จ์ ์ธ ์ด๋ฒคํธ ํธ๋ค๋ง ๋ฐ ๋น๋๊ธฐ ์์
์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. async ๋ฐ await ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๊ฒฐํ ๋น๋๊ธฐ ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
์ปดํ์ผ ์ธ์ด
: Dart๋ Just-In-Time(JIT) ์ปดํ์ผ๋ฌ์ Ahead-of-Time(AOT) ์ปดํ์ผ๋ฌ๋ฅผ ๋ชจ๋ ์ ๊ณตํฉ๋๋ค. JIT๋ ๊ฐ๋ฐ ์ค์ ์ฝ๋๋ฅผ ๋น ๋ฅด๊ฒ ํ
์คํธํ ์ ์๊ฒ ํด์ฃผ๊ณ , AOT๋ ๋ ๋์ ์คํ ์๋์ ๋ ์์ ๋ฐฐํฌ ํฌ๊ธฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
Flutter ํ๋ ์์ํฌ
: Dart๋ ์ฃผ๋ก Flutter ํ๋ ์์ํฌ๋ฅผ ์ํ ์ธ์ด๋ก ์ฌ์ฉ๋ฉ๋๋ค. Flutter๋ ๋ชจ๋ฐ์ผ, ์น, ๋ฐ์คํฌํฑ ๋ฑ ๋ค์ํ ํ๋ซํผ์์ ๋์ํ๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํ ์ ์ธ์ ์ด๊ณ ํจ์จ์ ์ธ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ UI ํ๋ ์์ํฌ์
๋๋ค.
Dart ์ฃผ์ ๋ฌธ๋ฒ
1.
๋ณ์
2.
ํ์
โข
ํ์
๊ณ์ธต
โข
๋ ํ์ฉ ํ์
โข
late ํค์๋
3.
์์
์ฐ์ฐ์
1.
๊ธฐ๋ณธ ์ฐ์ฐ์
2.
ํ์
์ฐ์ฐ์
3.
Null ์ฐ์ฐ์
์ ์ด๋ฌธ
1.
์กฐ๊ฑด๋ฌธ
โข
if-else
โข
switch
2.
๋ฐ๋ณต๋ฌธ
โข
for
โข
while
โข
do-while
1.
๊ธฐ๋ณธ ํจ์
2.
์ต๋ช
ํจ์
3.
๋๋ค ํจ์
4.
์ฌ๊ท ํจ์
1.
ํด๋์ค
2.
๊ฐ์ฒด
3.
์์ฑ์
4.
์์
5.
์ถ์ ํด๋์ค
6.
๋ฏน์ค์ธ
7.
enum
8.
static
1.
List
2.
Set
3.
Map
1.
Future
2.
async, await
3.
Stream