반응형
✅ 1. Dart 클래스 (Class)Dart의 Class는 객체를 만들기 위한 설계도로 틀과 같습니다. 클래스는 변수(필드)와 함수(메서드)를 묶어 정의합니다. Dart에서는 class 키워드로 선언합니다.class Person { String name; int age; // Constructor 생성자 Person(this.name, this.age); // Name constructor 이름 생성자 Person.guest() : name = "Guest", age = 0; // Method 메소드 void introduce() { print('Hello, my name is $name and I am $age years old.'); }}✅ 2. 객체 (Object)객체는 클래..
✅ 1. Koa란?Koa는 Node.js 환경에 사용되는 웹 프레임워크 중 하나로 Express.js를 만든 팀에서 개발한 차세대 프레임워크입니다. Koa의 주요 특징으로는 다음과 같습니다.미들웨어 중심 설계: Koa는 async/await 방식으로 쉽게 작성할 수 있도록 설계되어 미들웨어가 연속으로 돌아감, 요청이 들어오면 미들웨어들이 체인처럼 연결되어 순서대로 처리됨 초경량 코어: 기본적으로 내장된 것은 없고, HTTP 코어만 존재함 라우팅, 템플릿 정적 파일 서비스는 직접 원하는 미들웨어를 붙여서 쓰는 방식임강력한 오류 처리: 미들웨어 스택 방식으로 오류처리가 탁월함, 미들웨어 스택 중간에 에러가 나도 상위 미들웨어에서 깔끔하게 잡을 수 있음컨텍스트 객체 (ctx): 요청과 응답을 ctx 객체 하나..
✅ 1. 소유권(Ownership)변수는 어떤 값의 소유자가 되며 소유자는 하나뿐입니다. 소유자가 범위를 벗어나면(scope 종료) 값이 자동으로 메모리에서 해제됩니다.(drop 호출){ let s = String::from("Hello, World"); // s는 "Hello, World"의 소유자} // 여기서 s가 범위를 벗어나며 메모리 해제✅ 2. 이동(Move)와 복사(Copy)Move: 소유권이 다른 변수로 넘어감 -> 원래 변수는 더 이상 사용 불가Copy: 스택에 저장되는 단순 값(i32, bool 등)은 복사 가능fn main() { let s1 = String::from("Hello"); let s2 = s1; // println!("{}", s1); // 🚫 에러: s..
✅ 1. 클래스와 객체클래스(class): 객체를 만들기 위한 설계도객체(object): 클래스로부터 생성된 인스턴스class Person(val name: String, val age: Int) { def greet(): Unit = { println(s"Hello, my name is $name and I am $age years old.") }}object ClassObject extends App { val p = new Person("Charlie", 30) p.greet()}✅ 2. 생성자와 필드클래스 파라미터가 기본 생성자 역할이며 val을 붙이면 읽기 전용, var을 붙이면 수정 가능한 필드 보조 생성자는 def this(...)로 정의 가능합니다.clas..
✅ 1. Symbol의 기본 개념Symbol(심볼)은 절대 중독되지 않는 유일한 값을 생성하고 같은 설명(description)을 줘도 값은 다릅니다. 객체의 키(Key)로 많이 쓰이고 있습니다.const a = Symbol('id');const b = Symbol('id');console.log(a === b); // false;✅ 2.Symbol 생성 방법const mySymbol = Symbol(); // Creating a symbol without a descriptionconst mySymbol2 = Symbol('description'); // Creating symbolsconsole.log(mySymbol2.toString()); // Symbol(description)✅ 3. Symbo..
✅ 1. 변수 선언Scala에서 val(불변 변수)과 var(가변 변수)를 사용해 변수를 선언하고 기본적으로 val을 쓰는 것을 권장합니다.object Variable { def main(args: Array[String]): Unit = { val x: Int = 10 // 불변 변수 (변경 불가) var y: Int = 20 // 가변 변수 (변경 가능) y = 30 // O // x = 40 // X (컴파일 오류) println(s"x: $x, y: $y"); }} 자료형은 생략이 가능합니다.var name = "Alice"; // 가변 변수 var age = 25; // 가변 변수✅ 2. 기본 자료형 스칼라는 자..
✅ 1. Scala 란?Scala(스칼라)는 "Scalable Language"의 줄임말로, 객체지향 프로그래밍과 함수형 프로그래밍을 모두 지원하는 JVM 기반의 프로그래밍 언어로, 자바 가상 머신(JVM) 위에서 실행되어 자바(Java) 언어와 상호 운용이 가능합니다. Scala의 주요 특징으로는 아래와 같습니다. JVM 위에서 동작Java와 100% 호환됨 (Java 코드 사용 가능, 라이브러리 호출 가능)간결하고 표현령이 풍부한 코드val(불변) 또는 var(가변)을 사용하여 변수를 정의타입추론 기능으로 코드가 간결해짐, 세미콜론 생략가능 강력한 타입 시스템Java보다 코드가 짧고 깔끔하며 세미콜론 생략가능 간단한 표현식으로 많은 작업 수행 가능 패턴 매칭 switch-case보다 훨씬 강력하고 유..
1. Sass Mixin이란?Sass 믹스인은 공통된 스타일을 재사용할 수 있게 만드는 기능으로 함수처럼 매개변수도 받을 수 있습니다.// 1. 믹스인 정의@mixin mixin이름 { 속성: 값; ...}// 2. 믹스인 사용.클래스명 { @include mixin이름;}2. 사용 예제기본 믹스인@mixin center-box { display: flex; justify-content: center; align-items: center;}.box { width: 100px; height: 100px; background: #34948b; @include center-box;}출력 결과.box { width: 100px; height: 100px; background: #34948..
✅ 1.템플릿 폴더 구조 설정Django는 기본적으로 templates/ 폴더에서 테블릿을 찾아 화면에 반환합니다.프로젝트/│├─ myapp/│ ├─ templates/│ │ └─ myapp/│ │ └─ example.html│ └─ views.py│├─ manage.py└─ settings.py // settings.pyTEMPLATES = [ { ... 'DIRS': [BASE_DIR / 'templates'], # 프로젝트 전역 템플릿 폴더 ... },]✅ 2. HTML 템플릿 기본 문법example.html {{ title }} {% for item in items %} {{ item }} ..
1. 파일 읽기BuffredReader는 파일을 한 줄씩 읽을 때 효율적인 코드이며, 내부적으로 버퍼를 사용해 읽기 성능을 올려줍니다.import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;public class FileReaderExample { public static void main(String[] args) { String filePath = "output.txt"; try (BufferedReader br = new BufferedReader(new FileReader(filePath))) { String line; while ((l..