2024/08 36

[네트워크] 네트워크 기기

네트워크 기기네트워크는 여러 개의 네트워크 기기를 기반으로 구축됩니다. 그리고 상위 계층을 처리하는 기기는 하위 계층을 처리할 수 있지만 그 반대는 불가능합니다.네트워크 기기 종류애플리케이션 계층: L7스위치인터넷 계층: L3 스위치, 라우터데이터 링크 계층: L2 스위치, 브리지물리 계층: NIC, 리피터, AP 애플리케이션 계층을 처리하는 기기L7 스위치스위치란 여러 장비를 연결하고 데이터 통신을 중재하며 목적지가 연결된 포트로만 전기 신호를 보내 데이터를 전송하는 통신 네트워크 장비입니다. L7 스위치는 로드밸러서라고도 하며, 서버의 부하를 분산하는 기기입니다. 클라이언트로부터 오는 요청들을 뒤쪽의 여러 서버로 나누는 역할을 하며 시스템이 처리할 수 있는 트래픽 증가를 목표로 합니다.L7 스위치는 ..

[Spring] 싱글톤 컨테이너 - 강의 정리

강의스프링 핵심 원리 - 기본편 스프링 핵심 원리 - 기본편 강의 | 김영한 - 인프런김영한 | 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., 스프링 핵심 원리를 이해하고, 성장하는 백엔드 개발자가 되어보www.inflearn.com  웹 애플리케이션과 싱글톤스프링은 온자인 서비스 기술을 지원하기 위해 탄생하였습니다. 웹 애플리케이션은 보통 여러 고객이 동시에 요청을 합니다. 이런 경우 요청에 따라 인스턴스를 하나씩 생성한다면 아래와 같이 여러개의 인스턴스가 하나의 요청마다 생깁니다. 이런 경우 메모리 낭비가 매우 많이 됩니다. 따라서 이를 해결하기 위해 객체가 하나만 생성될 수 있는 싱글톤 패턴을 사용하면 됩니다. 싱글톤 패턴싱글톤 패턴..

20240826_TIL

오늘은 TIL보다는 몇일동안 한 내용에 관하여 작성하였습니다.1. 내일배움캠프 Sping JWT, JPA 관하여 공부를 하였고, RestTemplate, Entity 연관관계(1대 1, N대 1, 1대 N, N대 M에 관하여 공부하였습니다. 그리고 새로운 프로젝트를 시작하였습니다. 2. 김영한의 스프링 입문 & 기본편기본편을 모두 완료하고 기본편은 세션 5까지 공부하였습니다.입문편에서는 기본적으로 스프링이 어떤 방법으로 돌아가는지, 구조는 어떻게 되는지에 관한 강의로 스프링이 처음이신 분들도 쭉 들으면서 구조를 파악하기 매우 좋았습니다. 처음이신 분들은 하나하나 이해한다고 생각하기 보다는 전체적인 흐름을 가져간다는 생각으로 보는것을 추천 드립니다.  기본편은 이제 본격적으로 자세하게 알려주십니다. 저는 ..

TIL 2024.08.27

[프로그래머스] 대충 만든 자판 JAVA

문제[프로그래머스] 대충 만든 자판 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 휴대폰의 자판은 컴퓨터 키보드 자판과는 다르게 하나의 키에 여러 개의 문자가 할당될 수 있습니다. 키 하나에 여러 문자가 할당된 경우, 동일한 키를 연속해서 빠르게 누르면 할당된 순서대로 문자가 바뀝니다. 예를 들어, 1번 키에 "A", "B", "C" 순서대로 문자가 할당되어 있다면 1번 키를 한 번 누르면 "A", 두 번 누르면 "B", 세 번 누르면 "C"가 되는 식입니다. 같은 규칙을 적용해 아무렇게나 만든 휴대폰 자판이 있습니다. 이 휴대폰 자판은 키의 개수가 1개부터..

[프로그래머스] 체육복 JAVA

문제[프로그래머스] 체육복 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   정답import java.util.*;class Solution { public int solution(int n, int[] lost, int[] reserve) { int answer = 0; answer = n - lost.length; Arrays.sort(lost); Arrays.sort(reserve); for(int i = 0; i    풀이우선 체육복을 잃어버린 사람(lost)과 체육복이 2개 있는 사..

[프로그래머스] 문자열 나누기 JAVA

문제[프로그래머스] 문자열 나누기 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   정답class Solution { public int solution(String s) { int answer = 0; int countX = 0; int countAlse = 0; String x = ""; for(int i = 0; i    풀이 int countX = 0; int countAlse = 0; String x = "";x와 x가 아닌 다른 글자들이 나온 ..

좋은 객체 지향 설계의 5가지 원칙(SOLID)

SOLID컴퓨터 프로그래밍에서 SOLID란 로버트 C.마틴이 2000년대 초반에 명명한 객체 지향 프로그래밍 및 설계의 다섯 가지 기본 원칙을 정리SRP (Single responsibility principle) : 단일 책임 원칙OCP (Open/closed principle): 개방-폐쇄 원칙LSP (Liskov substitution principle): 리스코프 치환 원칙ISP (Interface segregation principle): 인터페이스 분리 원칙DIP (Dependency inversion principle): 의존관계 역전 윈칙     SPR 단일 책임 원칙모든 클래스는 하나의 책임만 가져야 하며, 클래스는 그 책임을 완전히 캡슐화 해야한다.     OCP 개방-폐쇄 원칙'소프트..

[프로그래머스] 옹알이 (2) JAVA

문제[프로그래머스] 옹알이 (2) 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   정답class Solution { public int solution(String[] babbling) { int answer = 0; String[] say = {"aya", "ye", "woo", "ma"}; String[] notSay = {"ayaaya", "yeye", "woowoo", "mama"}; for(int i = 0; i    풀이아이가 할수 있는 발음 4개를 say에 저장하였고 아이는 ..

[프로그래머스] 로또의 최고 순위와 최저 순위 JAVA

문제[프로그래머스] 로또의 최고 순위와 최저 순위 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   정답class Solution { public int[] solution(int[] lottos, int[] win_nums) { int[] answer = new int[2]; int count = 0; int zeroCount = 0; for(int i = 0; i 6) answer[0] = 6; if(answer[1] > 6) answer[1] = 6; ret..