일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spring
- html
- GraphQL
- puppeteer
- css
- 코딩테스트
- Interceptor
- JWT
- Kubernetes
- bean
- 탐욕법
- LifeCycle
- nestjs
- Deep Dive
- 인접리스트
- dfs
- typescript
- 프로그래머스
- OOP
- winston
- 자료구조
- 알고리즘
- javascript
- MySQL
- java
- REST API
- TIL
- node.js
- 인접행렬
- Linux
- Today
- Total
목록분류 전체보기 (241)
처음부터 차근차근

저번 포스팅에서 Spring Container에 대해서 설명하였습니다. 이번 시간에는 Spring 컨테이너가 기본적으로 Singleton Container로 구성되어 있는데, 왜 singleton으로 구성되어 있는지와, singleton 방식의 주의점 등을 알아보겠습니다. 웹 애플리케이션과 Singleton 스프링은 기본적으로 기업용 온라인 서비스 기술을 지원하기 위해 탄생하였습니다. 그리고 대부분의 스프링 Application은 Web Application입니다. 물론 웹이 아닌 앱 개발도 얼마든지 개발할 수 있습니다. 보통 여기서 문제점이 발생하는데, 웹 애플리케이션은 보통 여러 고객이 동시에 요청을 진행하는 문제점이 발생합니다. 과거 포스팅에서 Spring이 없이 작성했던 AppConfig는 순수 ..

저번 포스팅에서는 객체 지향적으로 코드를 작성하고, 연결해봤으며, Spring을 사용할 경우 간단하다는 것을 알게 되었습니다. 이번에는 Spring을 통해 각 객체마다 어떻게 연결이 간편하게 되는지 알아보겠습니다. Spring Container와 Spring Bean 스프링 컨테이너는 자바 객체의 생명 주기를 관리하며, 생성된 자바 객체들에게 추가적인 기능을 제공합니다. 그리고 스프링에서는 자바 객체를 빈(Bean)이라 합니다. Spring에 있는 자바 객체는 Repository, Service, Controller 등 다양한 객체가 있는데, 이들이 결합하여 하나의 Spring Application을 만드는 것입니다. 이때 이 자바 객체를 Component라고 부르기도 합니다. (Component : 하..
오늘 한 일 코딩테스트 3문제 진행 Spring 공부 진행 프로젝트 ERD, CodeConvention, GitFlow 선정 원티드 백엔드 챌린지 강의 수강 코딩테스트 3문제 진행 DP 사용법에 대하여 학습하였습니다. 너무 복잡하게 생각하기보다는, 단순하게 생각하고 코드를 짜면서 리펙토링 하는 것이 좀 더 좋아보입니다. 3문제를 풀면서, 어려운 문제와 쉬운 문제를 둘 다 풀었습니다. 프로그래머스 - 외계어 사전 문제를 풀면서 느낀 점은 간단한 문제였지만, 어떻게 하면 풀지 너무 생각이 잡혀 있어서 시간이 오래 걸림 실제로 구현한 다음에 리펙토링을 하여 좋은 코드로 문제 해결 또한 DP 사용법에 대해 익혔는데, 굉장히 도움이 되었다고 생각합니다. Spring 강의 진행 Spring에서 객체 지향을 어떻..

Java, Spring은 객체 지향 프로그래밍을 사용하는 언어와 프레임워크로 유명합니다. 하지만 프로젝트를 작성하다보면, 객체 지향의 원리들을 적용하지 못하고 코드를 작성할 때도 많습니다. 오늘은 이 부분을 한번 적용해보도록 하겠습니다. 객체 지향을 적용해보자 간단한 예시로 주문 서비스에 할인 정책이 있다고 가정해보겠습니다. 정액 할인 정책 : 1000원 할인 정률 할인 정책 : 구매금액의 10% 할인 초기 개발할 당시에는 정책이 정해지지 않아, interface만 작성했다고 가정하였습니다. OrderService의 구현 객체에서 할인 정책을 선택할 것인데, 둘 중 하나로 들어갈 것입니다. 초기에는 FixDiscountPolicy(정률 정책)을 한다고 하였으나 급하게 RateDiscountPolicy로 ..

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/43105 문제 설명 위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다. 삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성하세요. 제한사항 삼각형의 높이는 1 이상 500 이하입니다. 삼각형을 이루고 있는 숫자는 0 이상 9,999 이하의 정수입니다. 내 풀이 function soluti..
문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/12951 문제 설명 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = 2 + 3 = 5 와 같이 이어집니다.2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요. 내 풀이 function solution(n)..

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/120869 문제 설명 PROGRAMMERS-962 행성에 불시착한 우주비행사 머쓱이는 외계행성의 언어를 공부하려고 합니다. 알파벳이 담긴 배열 spell과 외계어 사전 dic이 매개변수로 주어집니다. spell에 담긴 알파벳을 한번씩만 모두 사용한 단어가 dic에 존재한다면 1, 존재하지 않는다면 2를 return하도록 solution 함수를 완성해주세요. 제한사항 spell과 dic의 원소는 알파벳 소문자로만 이루어져있습니다. 2 ≤ spell의 크기 ≤ 10 spell의 원소의 길이는 1입니다. 1 ≤ dic의 크기 ≤ 10 1 ≤ dic의 원소의 길이 ≤ 10 spell의 원소를 모두..

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/12951 문제 설명 내 풀이 function solution(priorities, location) { // index가 추가된 배열 만들기. 첫번째는 value, 두번째는 index let indexArray = priorities.map((v, idx) => [v, idx]) // 최우선 순위를 알기 위해서 우선순위 Array를 제작 const sortedArray = priorities.sort((a,b) => b-a); // 답안용 빈 배열 const answerArray = []; // sortedArray가 다 없어질 때까지 동작 while(sortedArray.length > ..
오늘 한 일 코딩테스트 코딩테스트 탐욕법 문제 정리 진행 탐욕법에 집중하다보니 자료구조나 알고리즘을 활용할 생각을 하지 못했다. 어려운 코딩 테스트 문제를 풀어보면서, "내가 공부해왔던 자료구조, 알고리즘을 잘 활용하지 못하는구나"를 느꼈습니다. 이를 위해 계속해서 코딩 테스트 문제를 풀 것이며, 문제를 읽고 어떠한 자료구조나 알고리즘 방법이 옳은지 생각하는 것이 필요하다고 느꼈습니다. 그리고 이번에 취업에 성공하였는데, 앞으로 더 좋은 Backend 개발자가 되기 위해서는 많이 노력해야 된다고 생각하였습니다.

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42883 문제 설명 어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다. 예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다. 문자열 형식으로 숫자 number와 제거할 수의 개수 k가 solution 함수의 매개변수로 주어집니다. number에서 k 개의 수를 제거했을 때 만들 수 있는 수 중 가장 큰 숫자를 문자열 형태로 return 하도록 solution 함수를 완성하세요. 제한 조건 number는 2자리 이상, 1,000,000자리 이하인 숫자입니다..