← 홈

🎯

⌘K
🤖
Claude Code AI 도구
🤗
Hugging Face AI 도구
🦜
LangChain AI 도구
🧠
Keras AI 도구
🦙
Ollama AI 도구
🐍
Python 프로그래밍 언어
🟨
JavaScript 프로그래밍 언어
🔷
TypeScript 프로그래밍 언어
⚛️
React 프로그래밍 언어
🐹
Go 프로그래밍 언어
🦀
Rust 프로그래밍 언어
📊
MATLAB 프로그래밍 언어
🗄️
SQL 프로그래밍 언어
⚙️
C/C++ 프로그래밍 언어
Java 프로그래밍 언어
🟣
C# 프로그래밍 언어
🍎
Swift 프로그래밍 언어
🟠
Kotlin 프로그래밍 언어
Next.js 프로그래밍 언어
💚
Vue.js 프로그래밍 언어
🔥
Svelte 프로그래밍 언어
🎨
Tailwind CSS 프로그래밍 언어
💚
Node.js 프로그래밍 언어
🌐
HTML 프로그래밍 언어
🎨
CSS/SCSS 프로그래밍 언어
🐘
PHP 프로그래밍 언어
💎
Ruby 프로그래밍 언어
🔴
Scala 프로그래밍 언어
📊
R 프로그래밍 언어
🎯
Dart 프로그래밍 언어
💧
Elixir 프로그래밍 언어
🌙
Lua 프로그래밍 언어
🐪
Perl 프로그래밍 언어
🅰️
Angular 프로그래밍 언어
🚂
Express.js 프로그래밍 언어
🐱
NestJS 프로그래밍 언어
🛤️
Ruby on Rails 프로그래밍 언어
◼️
GraphQL 프로그래밍 언어
🟪
Haskell 프로그래밍 언어
💚
Nuxt.js 프로그래밍 언어
🔷
SolidJS 프로그래밍 언어
htmx 프로그래밍 언어
💻
VS Code 개발 도구
🧠
PyCharm 개발 도구
📓
Jupyter 개발 도구
🧠
IntelliJ IDEA 개발 도구
💚
Neovim 개발 도구
🔮
Emacs 개발 도구
🔀
Git DevOps & CLI
🐳
Docker DevOps & CLI
☸️
Kubernetes DevOps & CLI
☁️
AWS CLI DevOps & CLI
🔄
GitHub Actions DevOps & CLI
🐧
Linux 명령어 DevOps & CLI
💻
Bash 스크립팅 DevOps & CLI
🌐
Nginx DevOps & CLI
📝
Vim DevOps & CLI
🔨
Makefile DevOps & CLI
🧪
Pytest DevOps & CLI
🪟
Windows DevOps & CLI
📦
패키지 매니저 DevOps & CLI
🍎
macOS DevOps & CLI
🏗️
Terraform DevOps & CLI
🔧
Ansible DevOps & CLI
Helm DevOps & CLI
🔨
Jenkins DevOps & CLI
🔥
Prometheus DevOps & CLI
📊
Grafana DevOps & CLI
💻
Zsh DevOps & CLI
🐟
Fish Shell DevOps & CLI
💙
PowerShell DevOps & CLI
🔄
Argo CD DevOps & CLI
🔀
Traefik DevOps & CLI
☁️
Azure CLI DevOps & CLI
☁️
Google Cloud CLI DevOps & CLI
📟
tmux DevOps & CLI
🔧
jq DevOps & CLI
✂️
sed DevOps & CLI
📊
awk DevOps & CLI
🌊
Apache Airflow DevOps & CLI
🔢
NumPy 데이터베이스 & 데이터
🐼
Pandas 데이터베이스 & 데이터
🔥
PyTorch 데이터베이스 & 데이터
🧠
TensorFlow 데이터베이스 & 데이터
📈
Matplotlib 데이터베이스 & 데이터
🐘
PostgreSQL 데이터베이스 & 데이터
🐬
MySQL 데이터베이스 & 데이터
🍃
MongoDB 데이터베이스 & 데이터
🔴
Redis 데이터베이스 & 데이터
🔍
Elasticsearch 데이터베이스 & 데이터
🤖
Scikit-learn 데이터베이스 & 데이터
👁️
OpenCV 데이터베이스 & 데이터
Apache Spark 데이터베이스 & 데이터
🪶
SQLite 데이터베이스 & 데이터
Supabase 데이터베이스 & 데이터
🔵
Neo4j 데이터베이스 & 데이터
📨
Apache Kafka 데이터베이스 & 데이터
🐰
RabbitMQ 데이터베이스 & 데이터
🔤
Regex 유틸리티
📝
Markdown 유틸리티
📄
LaTeX 유틸리티
🔐
SSH & GPG 유틸리티
🌐
curl & HTTP 유틸리티
📜
reStructuredText 유틸리티
🚀
Postman 유틸리티
🎬
FFmpeg 유틸리티
🖼️
ImageMagick 유틸리티
🔍
ripgrep 유틸리티
🔍
fzf 유틸리티
📗
Microsoft Excel 오피스 애플리케이션
📘
Microsoft Word 오피스 애플리케이션
📙
Microsoft PowerPoint 오피스 애플리케이션
📝
한컴 한글 한컴오피스
📽️
한컴 한쇼 한컴오피스
📊
한컴 한셀 한컴오피스
📄
Google 문서 Google Workspace
📊
Google 스프레드시트 Google Workspace
📽️
Google 프레젠테이션 Google Workspace
🔌
Cadence Virtuoso EDA & 하드웨어
⚙️
Synopsys EDA EDA & 하드웨어
💎
Verilog & VHDL EDA & 하드웨어
LTSpice EDA & 하드웨어
🔧
KiCad EDA & 하드웨어
📝
Notion 생산성 도구
💎
Obsidian 생산성 도구
💬
Slack 생산성 도구
🎮
Discord 생산성 도구
🎨
Figma 디자인 도구
📘
Confluence Atlassian
📋
Jira Atlassian
🃏
Jest 테스팅
Vitest 테스팅
🎭
Playwright 테스팅
🌲
Cypress 테스팅
🌐
Selenium 테스팅
💙
Flutter 모바일 개발
📱
React Native 모바일 개발
🍎
SwiftUI 모바일 개발
📱
Expo 모바일 개발
🐍
Django 웹 프레임워크
FastAPI 웹 프레임워크
🌶️
Flask 웹 프레임워크
🍃
Spring Boot 웹 프레임워크
🍸
Gin 웹 프레임워크
Vite 빌드 도구
📦
Webpack 빌드 도구
esbuild 빌드 도구
🐘
Gradle 빌드 도구
🪶
Maven 빌드 도구
🔧
CMake 빌드 도구
🎮
Unity 게임 개발
🤖
Godot 게임 개발
🔌
Arduino 임베디드 & IoT
🔍
Nmap 보안
🐕
Datadog 모니터링
📖
Swagger/OpenAPI 문서화
검색 결과가 없습니다
EN KO

기초

변수와 타입

변수 선언
var name = "Dart";  // type inferred
String name = "Dart";  // explicit type
Final (런타임 상수)
final name = "Dart";
Const (컴파일타임)
const pi = 3.14159;
늦은 초기화
late String description;
Nullable 타입
String? nullableName;
기본 타입
int, double, String, bool, List, Map, Set
Dynamic
dynamic value = 42;
value = "now string";
타입 확인
if (value is String) { ... }

문자열

보간
"Hello, $name!"
"Sum: ${1 + 2}"
여러 줄
"""
Multi
Line
"""
Raw 문자열
r"No escape \n here"
문자열 메서드
str.toUpperCase()
str.toLowerCase()
str.trim()
str.split(",")

컬렉션

리스트
var list = [1, 2, 3];
List<int> list = [1, 2, 3];
리스트 연산
list.add(4);
list.addAll([5, 6]);
list.remove(1);
list.length;
var set = {1, 2, 3};
Set<int> set = {1, 2, 3};
var map = {"key": "value"};
Map<String, int> ages = {"Alice": 30};
스프레드 연산자
var combined = [...list1, ...list2];
컬렉션 if
[1, 2, if (condition) 3]
컬렉션 for
[for (var i in items) i.toUpperCase()]

제어 흐름

조건문과 반복문

If/else
if (condition) {
  // code
} else if (other) {
  // code
} else {
  // code
}
삼항 연산자
var result = condition ? "yes" : "no";
Null-aware 연산자
value ?? defaultValue  // if null
value ??= defaultValue  // assign if null
object?.method()  // null-safe call
Switch
switch (value) {
  case 1:
    // code
    break;
  default:
    // code
}
For 루프
for (var i = 0; i < 10; i++) {
  print(i);
}
For-in
for (var item in items) {
  print(item);
}
While
while (condition) {
  // code
}
Do-while
do {
  // code
} while (condition);

함수

함수 정의

기본 함수
int add(int a, int b) {
  return a + b;
}
화살표 함수
int add(int a, int b) => a + b;
선택적 위치 인자
void greet(String name, [String? title]) {
  // title is optional
}
이름있는 매개변수
void greet({required String name, int age = 0}) {
  // named params
}
이름있는 인자 호출
greet(name: "Alice", age: 30);
익명 함수
var add = (int a, int b) => a + b;
고차 함수
void execute(Function callback) {
  callback();
}

클래스

클래스 정의

기본 클래스
class Person {
  String name;
  int age;
  
  Person(this.name, this.age);
}
이름있는 생성자
class Person {
  Person.guest() : name = "Guest", age = 0;
}
게터/세터
class Circle {
  double radius;
  double get area => 3.14 * radius * radius;
  set diameter(double d) => radius = d / 2;
}
비공개 멤버
class Person {
  String _secret;  // private (file-scoped)
}
Static
class Counter {
  static int count = 0;
  static void increment() => count++;
}

상속과 믹스인

상속
class Student extends Person {
  String school;
  Student(String name, int age, this.school)
    : super(name, age);
}
추상 클래스
abstract class Animal {
  void speak();
}
인터페이스
class Dog implements Animal {
  @override
  void speak() => print("Woof!");
}
믹스인
mixin Swimming {
  void swim() => print("Swimming");
}

class Duck extends Bird with Swimming {}
확장
extension StringExtension on String {
  String get reversed => split('').reversed.join();
}

비동기 프로그래밍

Future와 Async/Await

Future
Future<String> fetchData() {
  return Future.delayed(
    Duration(seconds: 1),
    () => "Data"
  );
}
Async/await
Future<void> loadData() async {
  var data = await fetchData();
  print(data);
}
비동기 try/catch
try {
  var data = await fetchData();
} catch (e) {
  print("Error: $e");
}
Future.then
fetchData()
  .then((data) => print(data))
  .catchError((e) => print(e));
Future.wait
await Future.wait([future1, future2]);

스트림

스트림 생성
Stream<int> countStream() async* {
  for (var i = 0; i < 5; i++) {
    yield i;
  }
}
스트림 리스닝
stream.listen((data) {
  print(data);
});
Await for
await for (var value in stream) {
  print(value);
}
스트림 메서드
stream.map((x) => x * 2)
stream.where((x) => x > 5)
stream.first

Null 안전성

Null 안전성 기능

Nullable 타입
String? name;  // can be null
Non-nullable
String name = "Required";  // cannot be null
Null 확인
if (name != null) {
  print(name.length);  // promoted to non-null
}
Null-aware 접근
name?.length  // null if name is null
Null-aware 캐스케이드
object?..method1()..method2()
단언 연산자
name!.length  // throws if null
기본값
name ?? "Unknown"
Late 키워드
late String name;  // initialized later