분류 전체보기 30

[디자인 패턴] 싱글턴 패턴이란?

싱글턴 패턴이란 객체의 인스턴스가 오직 1개만 생성되도록 제한하는 패턴이다. 싱글턴의 장점은 다음과 같다. 하나의 객체만 생성되며 추후 해당 객체에 접근할 때 불필요한 메모리 낭비를 방지 할 수 있다. 전역으로 공유하기 때문에 다른 클래스의 인스턴스들이 데이터를 공유하기 쉽다는 장점이 있다. DBCP, 스레드풀, 캐시, 로그 기록 객체 등에 이용된다. 여기서 DBCP란 DataBase Connection Pool을 의미한다. Connection Pool이란 DB Connection 객체를 여러개 생성 한 후 Pool에 담아놓고 필요할 경우 불러와서 사용하기 위한 것이다. DB에서 데이터를 가져올 경우 먼저 드라이버를 로드하고 커넥션 객체를 받아오는 일련의 과정이 필요하지만 사전에 만들어 놓는다면 커넥션 ..

CS/디자인 패턴 2023.11.27

[디자인 패턴] 디자인 패턴이란?

디자인 패턴이란 소프트웨어 개발시 자주 나타나는 구조나 방식, 패턴을 구체적이고 체계적으로 나누어 정리한 것이다. 다음은 디자인 패턴을 잘 사용하면 해결 할 수 있는 내용들이다. 코드의 응집성 Up 어떠한 로직 부분을 변경하고자 할 때, 코드가 산재되어있어서 그 부분들을 일일이 변경시켜줘야 하지만 디자인 패턴을 이용한다면 최소한의 코드 변경으로 변경 할 수 있다. 코드의 결합성 Down 코드 한 부분을 변화시키면, 다른 부분까지 변화시켜야 하는 것이 아니고 각각 맡은 부분이 깔끔하게 분리되어 있어서 서로간에 쉽게 변경이 가능하고 대체 가능한 것을 뜻한다. 코드의 재활용성 up 한번 작성한 로직을 다시 작성하지 않도록 미리 정해놓은 패턴에 따라 구성해 놓는 것을 뜻한다. 코드의 효율성 Up 이미 다듬어진 ..

CS/디자인 패턴 2023.11.27

Spring Boot [NaverCloud ObjectStorage] 사용법

이번에 진행하는 프로젝트에서 영상 및 JSON 파일을 object storage에 저장하는 서비스 로직을 추가하게 되었다 설명에 앞서 Amazon의 S3가 아닌 Ncloud의 objectStorage를 선정한 이유는 크게 4가지다. 1. 국내서비스라 문서읽기가 매우편함. 2. 최근 Ncloud의 Server, DB 등등 사용해봐서 익숙함. 3. AWS 과금에 당한적이있음. 4. objectstorage 1주간 사용해봤는데 파일 크기가 얼마안되는지 아직까지 0원 청구됨. (매우쌈) Amazon의 S3랑 완벽하게 호환되고 국내서비스라 Docs를 읽을때 좀 더 쉽게 이해할 수 있었다 나는 spring boot 즉 java 언어를 사용하기 때문에 아래와 같은 Docs를 참고하여 사용하였음 https://guid..

7562 백준 파이썬 [나이트의 이동]

https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 이문제는 BFS를 이용해 l * l 맵 에서 처음가보는 장소가 있다면 직전거리(graph)에다 + 1을해가며 (visited)방문처리를 해주었다. 마지막으로 graph[e_y][e_x]를 해주면 목표지점의 거리가 나올것이다. from collections import deque import sys input = sys.stdin.readline dx = [2, 2, -2, -2, 1, -1, 1, ..

Algorithm 2023.02.20

리눅스계열 웹 서버를 위한 명령어 모음.

nohup sudo {node server.js} (백그라운드 실행) rm {test} (파일삭제) rm -r {home/} home디렉토리 삭제 ls (현재 디렉토리에 있는 파일 list 확인) ps -ef (pid 확인) kill {pid} (프로세스 죽이기) pwd - 현재 위치 요즘 라즈비안을 통해 웹서버 구동중인데 그냥 전원을 뽑을 시 micro sd카드에 손상이 가서 아래 명령어를 통해 종료 확인 후 전원을 해제 해야 한다네요~ sudo shutdown -h now - 즉시종료 (적색 LED만 남으면 종료된 것) sudo shutdown -r now - 리부팅 깃에 올려놓은 파일 가져올 때. 파일 가져오고 싶은 폴더에 이동 후 git init - 새로운 Git 저장소(repository)를 생..

카테고리 없음 2023.02.12