Flutter (์•ฑ ๊ฐœ๋ฐœ)/Dart ์ฝ”๋“œ ์ฒจ๋ถ€ ํŒŒ์ผ

[Dart ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž…] Dart์—์„œ ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์ดํ•ดํ•˜๊ธฐ(๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฒจ๋ถ€ ํŒŒ์ผ ์ œ๊ณต)

๋ชฝ๋ฌผ๊ณ ๊ธฐ๐“†œ 2025. 2. 23. 16:14
728x90
728x90

 

 

Dart์—์„œ ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์ดํ•ดํ•˜๊ธฐ ๐ŸŽฏ๐Ÿ“Œ

 

Dart์—์„œ ๋ณ€์ˆ˜(Variable)๋Š”

๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„์ด๋ฉฐ,

๊ฐ ๋ณ€์ˆ˜๋Š”

ํŠน์ •ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…(Type)์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

 

Dart๋Š”

Strongly Typed Language๋กœ,

๋ณ€์ˆ˜์˜ ํƒ€์ž…์„

๋ช…ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


ํ•˜์ง€๋งŒ, ํƒ€์ž… ์ถ”๋ก  ๊ธฐ๋Šฅ๋„ ์ œ๊ณตํ•˜์—ฌ

๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” 

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

 

 


โ… . ์„œ๋ก : ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋ฐฐ์šฐ๋Š” ์ด์œ  ๐Ÿค”

 

๋ณ€์ˆ˜๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

 

๋ณ€์ˆ˜(Variable)๋ž€ 

๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.

 


Dart์—์„œ๋Š” ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด 

์ˆซ์ž, ๋ฌธ์ž์—ด, ๋ฆฌ์ŠคํŠธ ๋“ฑ์˜ 

๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  

ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.



์˜ˆ๋ฅผ ๋“ค์–ด, 

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ณ€์ˆ˜๋ฅผ

 ์„ ์–ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

void main() {
  int age = 25;   // ๋‚˜์ด ์ €์žฅ
  String name = 'Flutter';  // ์ด๋ฆ„ ์ €์žฅ
  bool isDeveloper = true;  // ๊ฐœ๋ฐœ์ž์ธ์ง€ ์—ฌ๋ถ€

  print('๋‚˜์ด: $age');
  print('์ด๋ฆ„: $name');
  print('๊ฐœ๋ฐœ์ž์ธ๊ฐ€์š”? $isDeveloper');
}

 

๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด

๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ,


ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋Š” ๋™์•ˆ

ํ•„์š”ํ•œ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ๋ณ€๊ฒฝํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

โœ… ๋ณ€์ˆ˜(Variable)๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„
โœ… Dart์—์„œ๋Š” ๋ณ€์ˆ˜์— ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์ €์žฅ ๊ฐ€๋Šฅ

 

 

โžก๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด 

๋ฐ์ดํ„ฐ๋ฅผ 

ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ,


ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋Š” ๋™์•ˆ

 ํ•„์š”ํ•œ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  

๋ณ€๊ฒฝํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.๐Ÿš€

 


Dart์—์„œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

 

 

Dart์—์„œ๋Š” 

๋ชจ๋“  ๋ณ€์ˆ˜๊ฐ€ 

๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.


์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„

 ๋ช…ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•˜๋ฉด 

์ฝ”๋“œ์˜ ์˜ค๋ฅ˜๋ฅผ ์ค„์ด๊ณ 

 ๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

โœ… ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์ง€์ •ํ•˜๋ฉด ์ฝ”๋“œ๊ฐ€ ๋ช…ํ™•ํ•ด์ง€๊ณ , ์˜ค๋ฅ˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Œ
โœ… Dart๋Š” ์ •์  ํƒ€์ž… ์–ธ์–ด์ด๋ฉด์„œ ๋™์  ํƒ€์ž… ์ง€์ •๋„ ๊ฐ€๋Šฅํ•จ
โœ… Flutter ๊ฐœ๋ฐœ ์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ํ•„์ˆ˜์ ์œผ๋กœ ์ดํ•ดํ•ด์•ผ ํ•˜๋Š” ๊ฐœ๋…

โžก ์ด์ œ Dart์˜ ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐฉ๋ฒ•๊ณผ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ํ•˜๋‚˜์”ฉ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค! ๐ŸŽฏ


โ…ก. ๋ณธ๋ก : Dart์˜ ๋ณ€์ˆ˜ ์„ ์–ธ๊ณผ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์ดํ•ดํ•˜๊ธฐ ๐Ÿ—๏ธ

 

Step 1: ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐฉ๋ฒ• (var, dynamic, ๋ช…์‹œ์  ํƒ€์ž… ์ง€์ •)

 

 

UI์™€ UX๋Š” ๋ฐ€์ ‘ํ•œ ๊ด€๋ จ์ด ์žˆ์ง€๋งŒ, **๊ฐ๊ฐ ๋‹ค๋ฅธ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฐœ๋…**์ž…๋‹ˆ๋‹ค.

 

โœ… Dart์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ• 3๊ฐ€์ง€


1๏ธโƒฃ ๋ช…์‹œ์  ํƒ€์ž… ์ง€์ •

int age = 30;
String name = 'Flutter';
bool isDeveloper = true;

โžก ๋ณ€์ˆ˜ ํƒ€์ž…์„ ๋ช…ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•˜๋ฉด ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์ด ํ–ฅ์ƒ๋จ!

 

2๏ธโƒฃ ํƒ€์ž… ์ถ”๋ก  (var) ์‚ฌ์šฉ

var city = 'Seoul';  // ์ž๋™์œผ๋กœ String ํƒ€์ž… ์ง€์ •
var temperature = 25.5; // ์ž๋™์œผ๋กœ double ํƒ€์ž… ์ง€์ •

โžก var์„ ์‚ฌ์šฉํ•˜๋ฉด ํƒ€์ž…์„ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ํ•œ ๋ฒˆ ์ •ํ•ด์ง„ ํƒ€์ž…์€ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€!

 

3๏ธโƒฃ ๋™์  ํƒ€์ž… (dynamic) ์‚ฌ์šฉ

dynamic value = 'Hello';
value = 42; // ๊ฐ€๋Šฅ

โžก dynamic์€ ์–ด๋–ค ํƒ€์ž…์ด๋“  ์ €์žฅ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ํƒ€์ž… ์•ˆ์ •์„ฑ์ด ๋–จ์–ด์ง! ๐Ÿšจ

 

โœ… ๋ณ€์ˆ˜ ์„ ์–ธ ์˜ˆ์ œ

void main() {
  var name = 'Dart';
  int year = 2024;
  double pi = 3.14;
  bool isAwesome = true;
  
  print('์–ธ์–ด: $name, ์—ฐ๋„: $year, PI ๊ฐ’: $pi, ๋ฉ‹์ง„๊ฐ€์š”? $isAwesome');
}

๋ณ€์ˆ˜์„ ์–ธ์˜ˆ์ œ.txt
0.00MB

โžก ์ถœ๋ ฅ ๊ฒฐ๊ณผ:

์–ธ์–ด: Dart, ์—ฐ๋„: 2024, PI ๊ฐ’: 3.14, ๋ฉ‹์ง„๊ฐ€์š”? true

๐Ÿš€ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์—์„œ ์‰ฝ๊ฒŒ ํ™œ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค!

 


Step 2: ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž… (int, double, String, bool, List, Map, Set)

 

Dart์—์„œ

๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š”

๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„

์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

๋ฐ์ดํ„ฐ ํƒ€์ž… ์„ค๋ช… ์˜ˆ์ œ
int ์ •์ˆ˜ ๊ฐ’์„ ์ €์žฅ int age = 25;
double ์†Œ์ˆ˜์ ์„ ํฌํ•จํ•œ ์ˆซ์ž double pi = 3.14;
String ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ String name = 'Dart';
bool ์ฐธ/๊ฑฐ์ง“ ๊ฐ’ bool isFlutter = true;
List ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฐ์—ด List<int> numbers = [1, 2, 3];
Map ํ‚ค-๊ฐ’ ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ ์ €์žฅ Map<String, int> scores = {'John': 90, 'Jane': 95};
Set ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฆฌ์ŠคํŠธ Set<String> uniqueNames = {'Alice', 'Bob'};

 

โœ… List(๋ฐฐ์—ด) ์˜ˆ์ œ

List<String> fruits = ['Apple', 'Banana', 'Cherry'];
print(fruits[0]); // Apple

 

โœ… Map(๋”•์…”๋„ˆ๋ฆฌ) ์˜ˆ์ œ

Map<String, int> scores = {'Alice': 85, 'Bob': 92};
print(scores['Bob']); // 92

 

โœ… Set (์ค‘๋ณต ํ—ˆ์šฉ X) ์˜ˆ์ œ

 Set<String> uniqueNames = {'Alice', 'Bob', 'Alice'}; // 'Alice'๋Š” ์ค‘๋ณต ์ œ๊ฑฐ๋จ
print('์œ ์ผํ•œ ์ด๋ฆ„ ๋ชฉ๋ก: ${uniqueNames.toList()}');

 

๐Ÿš€ ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ํ™œ์šฉํ•˜๋ฉด

Flutter UI์—์„œ๋„

๋ฐ์ดํ„ฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 


Step 3: null safety์™€ nullable ๋ณ€์ˆ˜ ์‚ฌ์šฉ๋ฒ•

 

 

Dart๋Š”

null safety๋ฅผ ์ง€์›ํ•˜์—ฌ

null ๊ฐ’์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”

์•ˆ์ „ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

null ํ•จ์ˆ˜๋ฅผ ์•Œ์•„๋ณผ๊นŒ์š”?

 

โœ… nullable ๋ณ€์ˆ˜ ์„ ์–ธ

String? nullableText = null; // null ๊ฐ€๋Šฅ
nullableText = 'Hello'; // ๊ฐ€๋Šฅ

 

โœ… null ์ฒดํฌ (?? ์—ฐ์‚ฐ์ž ์‚ฌ์šฉ)

String? message;
print(message ?? '๊ธฐ๋ณธ ๋ฉ”์‹œ์ง€'); // message๊ฐ€ null์ด๋ฉด '๊ธฐ๋ณธ ๋ฉ”์‹œ์ง€' ์ถœ๋ ฅ

๐Ÿš€ null safety๋ฅผ ํ™œ์šฉํ•˜๋ฉด

null ๊ด€๋ จ ์˜ค๋ฅ˜๋ฅผ

๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ๐ŸŽฏ

 


Step 4: ๋ฐ์ดํ„ฐ ํƒ€์ž… ๋ณ€ํ™˜ (String → int, double → String ๋“ฑ)

 

โœ… ๋ฌธ์ž์—ด์„ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ (int.parse, double.parse)

String numText = '42';
int num = int.parse(numText);
print(num + 10); // 52

 

โœ… ์ˆซ์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ (toString())

double pi = 3.14;
String piText = pi.toString();
print('PI ๊ฐ’: ' + piText);

โœ… ์ •์ˆ˜์™€ ์‹ค์ˆ˜ ๋ณ€ํ™˜ (toInt(), toDouble())

void main() {
  double value = 10.99;  
  int rounded = value.toInt(); // toInt() ์ ์šฉ ํ›„ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜

  print('์›๋ž˜ ๊ฐ’: $value');  
  print('๋ฐ˜์˜ฌ๋ฆผ๋œ ๊ฐ’ (toInt() ์ ์šฉ): $rounded');
}

 

๐Ÿš€ Dart์—์„œ๋Š”

๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ

๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ

์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ๐ŸŽฏ

 


โ…ข. ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ํšจ๊ณผ์ ์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• โœ…

 

๋ณ€์ˆ˜ ์‚ฌ์šฉ ์‹œ ์ฃผ์˜ํ•  ์ 

 

โœ… ๋ช…์‹œ์  ํƒ€์ž… ์ง€์ • vs ํƒ€์ž… ์ถ”๋ก (var) ์‚ฌ์šฉ์„ ์ ์ ˆํžˆ ์กฐ์ ˆ
โœ… ๋ถˆํ•„์š”ํ•œ dynamic ์‚ฌ์šฉ์„ ์ง€์–‘ํ•˜๊ณ  ํƒ€์ž… ์•ˆ์ •์„ฑ์„ ์œ ์ง€
โœ… null safety๋ฅผ ํ™œ์šฉํ•˜์—ฌ null ์˜ค๋ฅ˜ ๋ฐฉ์ง€


Dart์˜ ํƒ€์ž… ์ถ”๋ก ๊ณผ ๋ช…์‹œ์  ํƒ€์ž… ์‚ฌ์šฉ์˜ ๊ท ํ˜•

 

โœ… ๊ฐ„๋‹จํ•œ ์ฝ”๋“œ์—์„œ๋Š” var ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€๋…์„ฑ ํ–ฅ์ƒ
โœ… ๋ช…ํ™•ํ•œ ํƒ€์ž… ์ง€์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ int, String, List ๋“ฑ์„ ์‚ฌ์šฉ
โœ… null safety๋ฅผ ์ ์šฉํ•˜์—ฌ ์•ˆ์ •์ ์ธ ์ฝ”๋“œ ์ž‘์„ฑ

728x90
728x90

'Flutter (์•ฑ ๊ฐœ๋ฐœ) > Dart ์ฝ”๋“œ ์ฒจ๋ถ€ ํŒŒ์ผ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Dart ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž…] var, dynamic, const, final ์ฐจ์ด์  ์ •๋ฆฌ(๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฒจ๋ถ€ ํŒŒ์ผ ์ œ๊ณต)  (1) 2025.02.23
[Dart ๋ณ€์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž…] Dart์˜ ์ฃผ์š” ๋ฐ์ดํ„ฐ ํƒ€์ž… (int, double, String, bool)(๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฒจ๋ถ€ ํŒŒ์ผ ์ œ๊ณต)  (0) 2025.02.23
[Dart ์–ธ์–ด ๊ธฐ์ดˆ ๋ฌธ๋ฒ•] Dart ํ”„๋กœ๊ทธ๋žจ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ ๋ฐ main() ํ•จ์ˆ˜ (๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฒจ๋ถ€ ํŒŒ์ผ ์ œ๊ณต)  (1) 2025.02.23
[Dart ์–ธ์–ด ๊ธฐ์ดˆ ๋ฌธ๋ฒ•] Dart ๊ณต์‹ ํŽ˜์ด์ง€์—์„œ ๊ฐœ๋ณ„ ํ”„๋กœ๊ทธ๋žจ ๋‹ค์šด๋ฐ›๊ธฐ /Dart ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ • ๋ฐ ์‹คํ–‰ ๋ฐฉ๋ฒ• (๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฒจ๋ถ€ ํŒŒ์ผ ์ œ๊ณต)  (1) 2025.02.23
[Dart ์–ธ์–ด ๊ธฐ์ดˆ ๋ฌธ๋ฒ•] Dart๋ž€? ๊ฐœ๋…๊ณผ ํŠน์ง• ํ•œ๋ˆˆ์— ๋ณด๊ธฐ (๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฒจ๋ถ€ ํŒŒ์ผ ์ œ๊ณต)  (0) 2025.02.20