일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- C++
- DFS
- cos
- django
- cos pro
- 안드로이드스튜디오
- Algorithm
- 동적계획법과최단거리역추적
- DART
- Python
- 알고리즘
- issue
- DFS와BFS
- cos pro 1급
- 코딩테스트
- 코드품앗이
- BAEKJOON
- 개발
- 파이썬
- AndroidStudio
- 코테
- 동적계획법
- codingtest
- Flutter
- k8s
- 안드로이드
- 분할정복
- android
- 백준
- vuejs
- Today
- Total
목록Research/Spring (7)
Development Artist
1. SQL 파싱과 최적화구조적, 집합적, 선언적 질의 언어내용SQL은 일반적인 프로그래밍 언어와 달리, 다음 세 가지 특성을 동시에 지닌 고수준 질의 언어입니다.구조적 (Structured) 정해진 문법과 형식에 따라 명확하게 작성되어야 하며, 테이블(관계형 데이터)을 중심으로 동작합니다. 구문은 SELECT, INSERT, UPDATE, DELETE와 같은 키워드로 시작하며, 각 절(clause)이 구조적으로 구성됩니다.집합적 (Set-based) SQL은 데이터 하나하나가 아닌 데이터의 집합을 대상으로 연산을 수행합니다. 따라서 반복문 없이도 수천 건의 데이터를 동시에 처리할 수 있으며, 이는 데이터베이스 엔진의 최적화와 병렬 처리의 기반이 됩니다.선언적 (Declarative) SQL은 무엇..
들어가며패턴에 대한 공부를 하면서 가장 먼저 생각하는 것은 “그 패턴이 없을 때 코드를 먼저 짜보라. 어떤 부분을 해소하기 위함인가” 컴포지트(Composite) 패턴도 마찬가지다. 객체를 트리 구조로 표현하고, 개별 객체와 복합 객체를 동일하게 다루기 위한 이 패턴은, 없으면 코드가 얼마나 지저분해질 수 있는지를 몸소 느껴야 진가를 알 수 있다. 이 글에서는 컴포지트 패턴이 없는 세상이 얼마나 고통스러운지를 실제 사례와 함께 살펴보고, 이를 통해 왜 이 패턴이 중요한지 풀어보고자 한다.컴포지트 패턴이 없는 세상1. 클라이언트 코드가 복잡해짐 (타입 분기 지옥)컴포지트 패턴이 없으면 가장 먼저 눈에 띄는 문제는 클라이언트 코드가 쓸데없이 복잡해진다는 것이다.if (obj instanceof Leaf)..
서론헤드 퍼스트 디자인 패턴 절반을 읽으면서 전체적인 패턴에 대해 실제 예시(결제 시스템)를 들어 정리를 했었다.링크 : https://jmcunst.tistory.com/357 헤드 퍼스트 디자인 패턴 정리 -상- ( 결제 시스템 )서론이번에 헤드 퍼스트 디자인 패턴이라는 책을 절반 정도 읽은 시점에서 한 번 정리를 해보고자 한다. 이 책은 꾀 유명한 책으로, 객체지향 설계를 고민하는 개발자에게 매우 도움이 되는 책jmcunst.tistory.com이번 글에서는 그중에서도 커맨드(Command) 패턴에 대해서 깊게 알아보려고 한다.커맨드 패턴이란커맨드를 직역하면 ‘명령’이다. 왜 커맨드 패턴으로 명명하였을까에 대해 고민해볼 필요가 있다. 우리는 코드에서 특정 동작을 실행할 때 메서드를 직접 호출하는 방..
서론이번에 헤드 퍼스트 디자인 패턴이라는 책을 절반 정도 읽은 시점에서 한 번 정리를 해보고자 한다. 이 책은 꾀 유명한 책으로, 객체지향 설계를 고민하는 개발자에게 매우 도움이 되는 책이다. 현재는 DevOps를 주 업무로 하고 있지만, 개발에도 관심이 많은 사람으로서 꼭 읽어보고 싶었던 책이었다. 실무에서 백엔드 코드들을 보면서 여러 패턴들이 적용된 것을 확인할 수 있었으며, 이를 통해 더 깊이 있는 이해를 하게 되었다. 이 글에서는 패턴의 개념보다는 업무에서 어떻게 쓰이고, 어떤 기준으로 판단해야 하는지를 예시를 통해 다루고자 한다.패턴책의 전반부에서 다루는 패턴은 총 7가지이다:전략 패턴 (Strategy Pattern)옵저버 패턴 (Observer Pattern)데코레이터 패턴 (Decorato..

Spring을 실행할 때 어떤 라이브러리를 불러오는지 확인이 필요했다. 생각보다 간단하다. 아래의 명령어를 치면 확인이 가능하다. ./gradlew dependencies --configuration compileClasspath
장고와 스프링 부트를 통해 백엔드 구축을 해본 경험을 토대로 두가지의 장단점을 정리하고자 합니다. 바로 들어가보시죠. Spring 강력한 생태계: 스프링 프레임워크는 Java 기반의 엔터프라이즈 애플리케이션 개발에서 오랜 기간 동안 사용되어온 프레임워크로, 매우 강력하고 다양한 기능과 라이브러리를 가지고 있습니다. 스프링 부트는 이러한 스프링 프레임워크의 강력한 생태계 위에 구축되어 풍부한 기능을 제공합니다. 유연한 설정: 스프링 부트는 '컨벤션보다는 구성'을 강조하여 설정을 자동화하고, 편리한 설정 옵션을 제공합니다. 자동 설정과 스프링 부트 스타터를 통해 프로젝트 구성을 빠르게 시작하고 개발자가 설정에 신경 쓰지 않아도 되도록 도와줍니다. 내장된 서버 지원: 스프링 부트는 내장된 웹 서버(예: To..
토비의 스프링을 공부하면서 용어 정리를 조금 하고자 글을 작성한다. 자세한 내용은 해당 책을 참고하면 좋을 것 같다. 서블릿 컨테이너 정의 웹 애플리케이션을 실행하고 관리하는 환경. 서블릿 컨테이너는 서블릿 스펙에 따라 작성된 웹 애플리케이션의 실행을 담당하며, 클라이언트로부터의 HTTP 요청을 받아서 해당 요청에 대한 처리를 수행하고 그 결과를 반환한다. 종류 Tomcat, Jetty, Undertow, ... 기능 애플리케이션 관리: 서블릿 컨테이너는 웹 애플리케이션의 생명주기를 관리. 애플리케이션의 시작, 종료, 로딩, 언로딩 등의 단계를 처리한다. HTTP 요청 처리: 클라이언트로부터의 HTTP 요청을 받아서 해당 요청을 처리하는 서블릿을 실행하고, 그 결과를 클라이언트에게 반환. 스레드 관리: ..