
โ . ์๋ก : ๋ณ์์ ๋ฐ์ดํฐ ํ์ ์ ๋ฐฐ์ฐ๋ ์ด์
๐ 1. ๋ฐ์ดํฐ ํ์ ์ด ์ค์ํ ์ด์
๐ 2. Dart์ ๊ฐํ์ ์ธ์ด ํน์ง
โ ก. ๋ณธ๋ก : Dart์ ์ฃผ์ ๋ฐ์ดํฐ ํ์ (int, double, String, bool) ์ดํดํ๊ธฐ
๐ Step 1: ์ ์ ํ์ (int)๊ณผ ๊ธฐ๋ณธ ์ฐ์ฐ
๐ Step 2: ์ค์ ํ์ (double)๊ณผ ์์์ ์ฐ์ฐ
๐ Step 3: ๋ฌธ์์ด ํ์ (String)๊ณผ ๋ฌธ์์ด ์กฐ์ ๋ฐฉ๋ฒ
๐ Step 4: ๋ ผ๋ฆฌ ํ์ (bool)๊ณผ ์กฐ๊ฑด๋ฌธ ํ์ฉ๋ฒ
โ ข. ๊ฒฐ๋ก : Dart์์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
๐ ๋ฐ์ดํฐ ํ์ ์ ํ ๊ธฐ์ค
๐ ํ์ ๋ณํ๊ณผ ํ์ ์ฒดํฌ ํ์ฉ๋ฒ
Dart์ ์ฃผ์ ๋ฐ์ดํฐ ํ์
(int, double, String, bool) ์ดํดํ๊ธฐ ๐ฏ๐
Dart๋ ๊ฐํ์ (Strongly Typed) ์ธ์ด๋ก,
๋ชจ๋ ๋ณ์์๋ ๋ช ํํ ๋ฐ์ดํฐ ํ์ ์ด ์กด์ฌํฉ๋๋ค.
์ฃผ์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์
์
int(์ ์), double(์ค์),
String(๋ฌธ์์ด), bool(์ฐธ/๊ฑฐ์ง)์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ด๋ฌํ ๋ฐ์ดํฐ ํ์ ์ ์ดํดํ๋ฉด
Flutter ๊ฐ๋ฐ ์
์ฌ๋ฐ๋ฅธ ๋ฐ์ดํฐ ํ์ฉ์ด ๊ฐ๋ฅํ๋ฉฐ,
์ฝ๋์ ์์ ์ฑ๊ณผ
๊ฐ๋ ์ฑ์ ๋์ผ ์ ์์ต๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋
Dart์ ์ฃผ์ ๋ฐ์ดํฐ ํ์ ์ ์ดํดํ๊ณ ,
์ค์ ์ฝ๋ ์์ ๋ฅผ ํตํด
ํ์ฉ ๋ฐฉ๋ฒ์ ์ตํ๋ณด๊ฒ ์ต๋๋ค. ๐
๋จผ์
๋ ๋ง์ ์ ๋ณด, ํน์
์์๋๋ก ํฌ์คํ
์ ๋ณด๊ณ ์ถ๋ค๋ฉด
์๋ ๋
ธ์
์ ํ์ธํด์ฃผ์ธ์.

https://mongmung-i.notion.site/Flutter-1a39b1e2cdaa80319a0fc2a89281dc71?pvs=4
Flutter ์ดํ ๊ฐ๋ฐ ์ผ์ง | Notion
Made with Notion, the all-in-one connected workspace with publishing capabilities.
mongmung-i.notion.site
https://mongmung-i.notion.site/19f9b1e2cdaa80a984ade6141a87fd29?pvs=4
์ฐฝ์ ํธ๋ ์ฌ์ ์บ ํ ๐ฒ | Notion
์ด ๊ณณ์ ์ฐฝ์ ํธ๋ ์ฌ์ ์บ ํ ์งํ ์ฌํญ์ ์ ๋ฆฌํ๋ ๊ณณ์ ๋๋ค.
mongmung-i.notion.site
โ
. ์๋ก : Dart์ ์ฃผ์ ๋ฐ์ดํฐ ํ์
์ ๋ฐฐ์์ผ ํ๋ ์ด์ ๐ค
๋ฐ์ดํฐ ํ์ ์ด ์ค์ํ ์ด์
โ
๊ฐ ๋ณ์์ ์ญํ ๊ณผ ์ ์ฅํ ์ ์๋ ๊ฐ์ด ๋ค๋ฆ
โ
์๋ชป๋ ๋ฐ์ดํฐ ํ์
์ ๋ฐฉ์งํ์ฌ ์ค๋ฅ๋ฅผ ์ค์ผ ์ ์์
โ
Flutter UI ๊ฐ๋ฐ ์ ์ฌ๋ฐ๋ฅธ ๋ฐ์ดํฐ ํ์
์ ์ฌ์ฉํด์ผ ์ต์ ์ ์ฑ๋ฅ ์ ์ง ๊ฐ๋ฅ
โก Dart์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ ์ ํํ ์ดํดํ๋ฉด, ๊ฐ๋ฐ ์์ฐ์ฑ์ด ํฅ์๋ฉ๋๋ค! ๐
Dart์ ๊ฐํ์ ์ธ์ด ํน์ง
Dart์์๋
์ ์(int), ์ค์(double), ๋ฌธ์์ด(String) ๋ฑ
์ฌ๋ฌ ๊ฐ์ง ๋ฐ์ดํฐ ํ์ ์ ์ ๊ณตํฉ๋๋ค.
์ด๋ฌํ ๋ฐ์ดํฐ ํ์
์ ํ์ฉํ๋ฉด
๋ถํ์ํ ์ค๋ฅ๋ฅผ ์ค์ด๊ณ
์ฝ๋์ ์์ ์ฑ์ ๋์ผ ์ ์์ต๋๋ค.
โ
Dart๋ ๊ฐํ์
์ธ์ด → ๋ณ์์ ๋ฐ์ดํฐ ํ์
์ด ๊ฒฐ์ ๋๋ฉด ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅ
โ
์ ์ ํ์
์ง์ ๊ฐ๋ฅ → ์ฝ๋ ์คํ ์ ์ ํ์
์ค๋ฅ ๊ฐ์ง ๊ฐ๋ฅ
โ
ํ์
์ถ๋ก ์ง์ (var) → ๋ณ์ ์ ์ธ ์ ์๋์ผ๋ก ํ์
์ด ์ง์ ๋จ
โก ์ด์ ๊ฐ ๋ฐ์ดํฐ ํ์ ์ ํ๋์ฉ ์ดํด๋ณด๊ฒ ์ต๋๋ค! ๐ฏ
โ ก. ๋ณธ๋ก : Dart์ ์ฃผ์ ๋ฐ์ดํฐ ํ์ (int, double, String, bool) ์ดํดํ๊ธฐ ๐๏ธ
Step 1: ์ ์ ํ์ (int)๊ณผ ๊ธฐ๋ณธ ์ฐ์ฐ
์ ์ ํ์ (int)์
์์์ ์์ด
์ ํํ ๊ฐ์ ์ ์ฅํ ๋ ์ฌ์ฉํฉ๋๋ค.
โ
Dart์์ ์ ์๋ฅผ ๋ํ๋ด๋ ํ์
์ int
โ
int๋ ์์์ ์์ด ์ ์๋ฅผ ์ ์ฅ ๊ฐ๋ฅ
โ
*์ผ๋ฐ์ ์ธ ์ฐ์ฐ(+, -, , /, %)์ ์ง์
์๋ฅผ ๋ค์ด,
์ฌ์ฉ์์ ๋์ด,
๊ฐ์, ID ๋ฒํธ ๋ฑ๊ณผ ๊ฐ์ด
์์์ ์ด ํ์ ์๋
๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ ์ ์ฉํฉ๋๋ค.
1๏ธโฃ ์ ์ ํ์ (int) ์ง์
์ ์ ํ์ ์ ๋ช ํํ๊ฒ ์ง์ ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
void main() {
int a = 10;
int b = 3;
print('๋ง์
: ${a + b}'); // 13
print('๋บ์
: ${a - b}'); // 7
print('๊ณฑ์
: ${a * b}'); // 30
print('๋๋์
: ${a / b}'); // 3.333...
print('๋๋จธ์ง: ${a % b}'); // 1
}
void main() {
print('int ์ต๋๊ฐ: ${9223372036854775807}');
print('int ์ต์๊ฐ: ${-9223372036854775808}');
}
โก ์ถ๋ ฅ ๊ฒฐ๊ณผ:
โก ์ ์ ํ์ ์ ๊ณ์ฐ์ด ๋น ๋ฅด๊ณ , ์์์ ์์ด ์ ํํ ๊ฐ์ ๋ค๋ฃฐ ๋ ์ฌ์ฉ๋ฉ๋๋ค! ๐ฏ
Step 2: ์ค์ ํ์ (double)๊ณผ ์์์ ์ฐ์ฐ
โ
Dart์์ ์ค์๋ฅผ ๋ํ๋ด๋ ํ์
์ double
โ
์์์ ์ด ํฌํจ๋ ์ซ์๋ฅผ ์ ์ฅํ ๋ ์ฌ์ฉ
โ
๋๋์
(/) ์ฐ์ฐ ๊ฒฐ๊ณผ๋ ์๋์ผ๋ก double ํ์
์ด ๋จ
์์์ ์ ํฌํจํ ์ซ์๋ฅผ ์ ์ฅํ๋ ค๋ฉด
double ํ์ ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์๋ฅผ ๋ค์ด,
ํค, ๋ฌด๊ฒ, ์จ๋ ๋ฑ๊ณผ ๊ฐ์
๊ฐ์ ์ ์ฅํ ๋
double์ด ํ์ํฉ๋๋ค
void main() {
double pi = 3.141592;
double height = 175.5;
print('์์ฃผ์จ: $pi');
print('ํค: $height cm');
}
โก ์ถ๋ ฅ ๊ฒฐ๊ณผ:
โ ์ ์์ ์ค์ ์ฐ์ฐ ์์
void main() {
int a = 10;
double b = 3.5;
print('๋ง์
: ${a + b}'); // 13.5
print('๊ณฑ์
: ${a * b}'); // 35.0
print('๋๋์
: ${a / b}'); // 2.857142857142857
}
โก ์ฆ, double์ ์ ๋ฐํ ๊ณ์ฐ์ด ํ์ํ ๊ฒฝ์ฐ ์ฌ์ฉ๋ฉ๋๋ค! ๐ฏ
โ double์ ๋ฐ์ฌ๋ฆผ ๋ฐ ์ ์ ๋ณํ
void main() {
double num = 10.75;
print('๋ฐ์ฌ๋ฆผ: ${num.round()}'); // 11
print('์ฌ๋ฆผ: ${num.ceil()}'); // 11
print('๋ด๋ฆผ: ${num.floor()}'); // 10
print('์ ์๋ก ๋ณํ: ${num.toInt()}'); // 10
}
โก double ๊ฐ์ ์ ์๋ก ๋ณํํ ๋ toInt() ์ฌ์ฉ ๊ฐ๋ฅ ํฉ๋๋ค! ๐
Step 3: ๋ฌธ์์ด ํ์ (String)๊ณผ ๋ฌธ์์ด ์กฐ์ ๋ฐฉ๋ฒ
๋ฌธ์์ด(String)์
ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด,
์ฌ์ฉ์ ์ด๋ฆ, ๋ฉ์์ง, ์ค๋ช ๋ฑ์
์ ์ฅํ ๋ ํ์ํฉ๋๋ค.
void main() {
String greeting = 'Hello, Dart!';
print(greeting);
}
โก ์ถ๋ ฅ ๊ฒฐ๊ณผ:
โ ๋ฌธ์์ด ์กฐํฉ(Concatenation) ๋ฐ ๋ฌธ์์ด ๊ธธ์ด ํ์ธ (์์ ํ์ผ)
void main() {
String firstName = 'Dart';
String lastName = 'Lang';
print('์ด๋ฆ: $firstName $lastName'); // Dart Lang
print('์ด๋ฆ ๊ธธ์ด: ${firstName.length}'); // 4
}
โก ์ถ๋ ฅ ๊ฒฐ๊ณผ:
โ ๋ฌธ์์ด์์ ํน์ ๋ฌธ์ ๊ฐ์ ธ์ค๊ธฐ
void main() {
String text = 'Flutter';
print(text[0]); // F
print(text.substring(1, 4)); // lut
}
โก ๋ฌธ์์ด ์กฐ์์ด ์ฌ์
UI ๊ฐ๋ฐ ์ ์ ์ฉํ๊ฒ ํ์ฉ๋ฉ๋๋ค! ๐
Step 4: ๋ ผ๋ฆฌ ํ์ (bool)๊ณผ ์กฐ๊ฑด๋ฌธ ํ์ฉ๋ฒ
bool ํ์ ์
๋ ผ๋ฆฌ์ ์ธ ์กฐ๊ฑด์ ํ๋จํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด,
๋ก๊ทธ์ธ ์ฌ๋ถ,
ํน์ ์กฐ๊ฑด ์ถฉ์กฑ ์ฌ๋ถ ๋ฑ์
์ ์ฅํ ๋ ํ์ฉ๋ฉ๋๋ค.
โ
Dart์์ ์ฐธ/๊ฑฐ์ง์ ํํํ๋ ํ์
์ bool
โ
true ๋๋ false ๊ฐ๋ง ์ ์ฅ ๊ฐ๋ฅ
void main() {
bool isFlutterAwesome = true;
print('Flutter๋ ๋ฉ์ง๊ฐ์? $isFlutterAwesome'); // true
}
โก ์ถ๋ ฅ ๊ฒฐ๊ณผ:
โ ์กฐ๊ฑด๋ฌธ์์ ํ์ฉ ์์
void main() {
int age = 20;
bool isAdult = age >= 18;
if (isAdult) {
print('์ฑ์ธ์
๋๋ค.');
} else {
print('๋ฏธ์ฑ๋
์์
๋๋ค.');
}
}
โก ์ถ๋ ฅ ๊ฒฐ๊ณผ:
โก bool ํ์ ์
์กฐ๊ฑด๋ฌธ๊ณผ ํจ๊ป ์ฌ์ฉํ ๋
๊ฐ์ฅ ์ ์ฉํฉ๋๋ค! ๐
โ ข. Dart์์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ โ
๋ฐ์ดํฐ ํ์ ์ ํ ๊ธฐ์ค
โ
์ ํํ ์ ์๋ฅผ ๋ค๋ฃฐ ๋ → int
โ
์์์ ์ด ํ์ํ ์ฐ์ฐ → double
โ
ํ
์คํธ๋ฅผ ์ ์ฅ ๋ฐ ์กฐ์ → String
โ
์ฐธ/๊ฑฐ์ง ๊ฐ์ ์ ์ฅ → bool
ํ์ ๋ณํ๊ณผ ํ์ ์ฒดํฌ ํ์ฉ๋ฒ
โ
์ซ์๋ฅผ ๋ฌธ์์ด๋ก ๋ณํ → .toString()
โ
๋ฌธ์์ด์ ์ซ์๋ก ๋ณํ → int.parse(), double.parse()
โ
ํ์
์ฒดํฌ → variable is Type ์ฌ์ฉ ๊ฐ๋ฅ
โก ์ ์ ํ ๋ฐ์ดํฐ ํ์ ์ ์ฌ์ฉํ๋ฉด
์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ
์ ์ง๋ณด์์ฑ์ด ํฅ์๋ฉ๋๋ค! ๐
์ฆ,
โ
Dart๋ ๊ฐํ์
์ธ์ด์ด๋ฉฐ, ์ ์(int), ์ค์(double), ๋ฌธ์์ด(String), ๋
ผ๋ฆฌ(bool) ํ์
์ด ์์
โ
๊ฐ ๋ฐ์ดํฐ ํ์
์ ์ ์ ํ ์ํฉ์์ ์ฌ์ฉํด์ผ ์ต์ ์ ์ฑ๋ฅ ์ ์ง ๊ฐ๋ฅ
โ
ํ์
๋ณํ๊ณผ ๋ฌธ์์ด ์กฐ์ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ํธ๋ฆฌํ๊ฒ ํ์ฉ ๊ฐ๋ฅ