반응형
✅ 1. 변수와 불변성F#은 함수형 프로그래밍(FP)언어로, 데이터 불변성을 기본 철학으로 하고 있습니다. 다른 언어에서는 변수를 자유롭게 바꿀 수 있으나, F#에서는 기본적으로 변수를 바꿀 수 없게 설계되어 있습니다. 대신 필요할 때만 명시적으로 변경할 수는 있습니다. 이러한 특성 덕분에 코드 안정성이 높아지고 함수형 사고방식을 자연스럽게 체득할 수 있습니다.✅ 2. F#의 실행 환경기본적으로 F# 코드를 실행하는 방법은 크게 두 가지가 있습니다.프로젝트 단위 실행:dotnet new console -lang 'F#'으로 프로젝트를 만든 후, Program.fs에서 코드를 작성하고 dotnet run으로 실행하는 방법이 있습니다. 이 경우 프로젝트 안에 다른 .fs 파일들도 포함되나 항상 시작점(ent..
✅ 1. 인자 전달과 반환값 GraphQL을 Node.js 환경에서 다룰 때, 가장 마주치는 개념이 바로 인자(argument) 전달과 반환값(response) 부분입니다. REST API는 URL과 Query String(쿼리 스트링), Body를 통해 데이터를 주고 받으나, GQL(GraphQL)에서는 인자와 반환값을 훨씬 직관적이고 유사하게 다룰 수 있습니다.✅ 2. 프로젝트 준비Node.js를 세팅해보겠습니다. 프로젝트 루트 폴더내에서 Apollo Server로 GraphQL을 구현한다고 가정하겠습니다.mkdir graphql-argscd graphql-argsnpm init -y npm install apollo-server graphql✅ 3. 스키마 정의하기 (Schema)이제 프로젝트 루트..
🐧 1. DTO란?DTO(Data Transfer Object, 데이터 전송 객체)는 Nest에서 클라이언트와 서버 간 주고받는 데이터의 구조를 정의하는 객체이며, NestJS에서는 컨트롤러가 받는 요청 데이터(Request Body 등)을 미리 정의해, 코드를 더욱 안정적이고 명확하게 동작하도록 도와주는 역할을 합니다.🐧 2. DTO 사용 예제예를 들어, 프로젝트 루트에 유저 생성 API가 있다고 가정해보겠습니다.yarn add class-validator class-transformer// src/api/create-user-dtoimport { IsString, IsEmail, IsInt, Min, Max } from "class-validator";export class CreateUserDt..
🛜 1. Symfony(심포니)란?동적인 웹 페이지를 만들기 위해 개발한 PHP를 공부하며 그 안에 다양한 프레임워크(Laravel, Composer 등)들을 보고 느끼게 됩니다. 그중에서 Symfony(심포니)는 단순히 웹 프레임워크를 구현하는 것을 넘머, PHP 생태계 전체에 큰 영향을 끼치 대표적인 프레임워크라고 해도 과언이 아닐 정도로 사람들이 Laravel(라라벨)에 대중화 되어 있고 사실상 Laravel(라라벨) 자체에도 Symfony 의 여러 컴포넌트를 거쳐 만들 프레임워크입니다. 그래서 Symfony를 이해하면 사실상 PHP 기반 개발에서는 한 단계 더 깊은 수준으로 올라갈 수 있습니다. 🛜 2. Symfony의 특징💠 1.MVC 아키텍처 기반Modal, View Controller..
🐧 1. 제어문과 반복문 Perl은 텍스트 처리 & 시스템 관리부분에서 강력한 기능을 담당하는 스크립트 언어로, 조건문과 반복문을 통한 프로그램의 흐름을 제어할 수 있기에, 프로그래밍에서 제어문(Control Statement)은 프로그램 흐름을 조건에 따라 바꾸거나 반복하게 만드는 핵심 구조 입니다.🐧 2. 조건문(Conditional Statements)Perl에서 조건문은 특정한 조건이 만족할 때만 코드가 실행되도록 하며, Perl에서는 대표적으로 if, unless, else, elseif를 사용하여 조건문을 형성합니다. 💠 2-1. if 문가장 기본적인 조건문으로, 조건이 참(true)일 때문 블록 안의 코드를 실행합니다. 조건이 거짓이면 아무런 동작도 하지 않습니다.use DateTime..
📚 1. Scala 컬렉션Scala는 함수형 프로그래밍(FP)와 객체지향(OOP)을 결합한 언어이며, 컬렉션 라이브러리가 풍푸하고 불변(immutable)과 가변(mutable) 컬렉션을 모두 제공하는 언어입니다. 데이터 처리 시 불변 컬렉션을 기본으로 사용하고, 필요시 가변컬렉션을 사용합니다.컬렉션특징예시List순서가 있는 불변/가변 컬렉션, 중복 허용List(1,2,3)Set순서 무관, 중복 ❌Set(1,2,3)Map키-값 쌍, 키 중복 ❌Map("a" -> 1, "b" -> 2)VectorList 보다 빠른 임의 접근, 불변 컬렉션Vector(1,2,3)Seq순서 있는 컬렉션의 상위 타입Seq(1,2,3)👉 1-1. Immutable vs Mutable🦖 Immutable 컬렉션값이 한 번 생..