profile
웹 개발자가 될래용
태그 목록
전체보기 (175)알고리즘(116)백준(115)ps(114)DP(19)그리디(19)구현(13)Spring(11)브루트포스(10)우선순위큐(10)BFS(9)투포인터(9)자료구조(9)이분탐색(9)정렬(8)수학(8)클린코드(7)cleancode(7)다익스트라(7)JPA(6)Java(6)문자열(6)스택(5)스프링(5)해시맵(5)백트래킹(5)http(5)SpringSecurity(4)S3(4)세그먼트트리(4)JWT(4)JVM(3)시뮬레이션(3)다이나믹프로그래밍(3)SpringDataJpa(3)Token(3)그래프(3)DFS(3)슬라이딩윈도우(3)플로이드와샬(3)유니온파인드(3)토끼책(2)mongodb(2)MVC(2)객체지향의사실과오해(2)Proxy(2)해쉬맵(2)JPQL(2)OSI(2)mysql(2)ObjectStorage(2)nodejs(2)session(2)그래프탐색(2)트러블슈팅(2)네이버클라우드플랫폼(2)redis(2)aws(2)자바스크립트(2)냅색(2)자바(2)https(2)web(2)비트마스킹(1)String(1)JIT(1)StringBuffer(1)count(1)DOM(1)axios(1)utf8(1)encoding(1)LIS(1)SSL/TLS(1)TLS handshake(1)너비우선탐색(1)파싱(1)html(1)퀵정렬(1)에러(1)filezilla(1)재귀(1)역추적(1)2021 KAKAO BLIND RECRUITMENT(1)에라토스테네스의체(1)servlet(1)투포인트(1)이진탐색(1)cookie(1)vm(1)@RequestParam(1)writeValueAsString(1)metaspace(1)VO(1)CallByReference(1)countquery(1)프록시패턴(1)SSAFY(1)너비 우선 탐색(1)(1)보안(1)@MappedSuperclass(1)GoogleCloudPlatform(1)접근지정자(1)DTO(1)projection(1)perm(1)cors(1)클론코딩(1)sql(1)바닐라js(1)(1)CallByValue(1)응용계층(1)DNS(1)FowardProxy(1)ObjectMapper(1)쿠키(1)Request(1)Response(1)multer(1)플로이드-와샬(1)modelattribute(1)exist(1)스위핑(1)전송계층(1)React(1)부분합(1)ProxyPattern(1)centos(1)트리(1)최소스패닝트리(1)GCP(1)StringBuilder(1)JOIN(1)조합(1)정수론(1)DesignPattern(1)네트워크(1)jsp(1)기하학(1)JavaScript(1)분할정복(1)소수판정(1)JAVA8(1)DataJpa(1)webpack(1)인스타그램(1)reverseproxy(1)error(1)Nginx(1)REST API(1)크루스칼(1)filter(1)누적합(1)LocalDate(1)Embedded(1)
post-thumbnail

자바는 Call By Value일까? Call By Reference일까?

결론부터 말하자면 Call By Value 다. Call By Reference처럼 동작하는 것 같기도한데? 하며 헷갈릴 수 있는 부분을 정확히 그림을 통해 어떤 차이점이 있는지 비교 해보고자 한다. Call By Value란 메소드의 매개변수로 값이 전달될 때, 값이

어제
·
0개의 댓글
post-thumbnail

Java 실행 과정, 컴파일러 그리고 메모리 영역에 대하여

예전에 간단하게 JVM에 대해서 정리 해봤었는데, 이번에 팀원들과 스터디를 통해 다시 한번 공부를 하면서 복습도 하고 여러가지 새로운 것들을 알게되어 정리하고자 한다..java파일을 자바 컴파일러가 바이트 코드인 .class 파일로 변환 시킨다.실행 시, 클래스 로더는

어제
·
0개의 댓글

클린코드 12장 - 창발성

켄트 벡이 제시한 소프트웨어 설계 품질을 높여줄 단순한 설계 규칙 네 가지(중요도 순)모든 테스트를 실행한다.중복을 없앤다.프로그래머 의도를 표현한다.클래스와 메서드 수를 최소를 줄인다.설계는 의도한 대로 돌아가는 시스템을 내놓아야 한다.문서로 완벽하게 설계했어도 검증

3일 전
·
0개의 댓글

클린코드 11장 - 시스템

"복잡성은 죽음이다. 개발자에게서 생기를 앗아가며, 제품을 계획하고 제작하고 테스트하기 어렵게 만든다" - 레이 오지, 마이크로소프트 최고 기술 책임자도시의 온갖 세세한 사항을 혼자서 직접 관리하기란 어렵다. 도시가 잘 돌아가는 이유는 수도 관리팀, 전력 관리 팀, 치

3일 전
·
0개의 댓글

객체지향의 사실과 오해 7장 - 함께 모으기

코드와 모델을 밀접하게 연관시키는 것은 코드에 의미를 부여하고 모델을 적절하게 한다. - 에릭 에반스(Eric Evans)마틴 파울러는 객체지향 설계 안에 존재하는 세가지 상호 연관된 관점에 관해 설명한다.개념 관점도메인 안에 존재하는 개념과 개념들 사이의 관계 표현사

5일 전
·
0개의 댓글

객체지향의 사실과 오해 1장 - 협력하는 객체들의 공동체

시너지를 생각하라. 전체는 부분의 합보다 크다. - 스티븐 코비(Stephen R. Covey)객체지향이라고 불리는 새로운 세상의 문을 연 대부분의 사람들은 "객체지향이란 실세계를 직접적이고 직관적으로 모델링할 수 있는 패러다임"이라는 설명에 마주하게 된다.이러한 설명

5일 전
·
0개의 댓글
post-thumbnail

AnonymousAuthenticationFilter란?

AnonymousAuthenticationFilter는 인증 정보가 존재하지 않을 때, 익명 사용자임을 명시해주기 위해 익명 사용자 정보를 SecurityContext에 저장해주기 위해 동작하는 필터다.SecurityContextholder.getContext().ge

6일 전
·
0개의 댓글
post-thumbnail

SuppressedException, Cause 그리고 예외 체이닝

예외의 전파 과정 메소드에서 어떠한 에러가 발생하면 메소드는 예외 객체를 생성한다. 메소드는 런타임 시스템에게 예외를 던지는데 이것을 throw라고 한다. 예외를 throw 하면 예외가 발생한 메소드가 예외를 처리할 무언가를 찾는다. 메소드를 호출한 순서 또는 리스트를

2022년 5월 15일
·
0개의 댓글

OSI 7계층 - 응용 계층

OSI 모델의 최상위 계층으로, 어플리케이션 레벨에서 사용자가 네트워크에 접근할 수 있도록 인터페이스를 제공해주는 계층이다.웹 페이지를 보거나, 메일을 주고 받거나, 파일을 주고 받는 등을 할 수 있도록 도와준다.클라이언트의 요청을 서버에 전달하기 위해 메시지로 변환

2022년 4월 24일
·
0개의 댓글

OSI 7계층 - 전송 계층

위키 백과에서는 "전송 계층(Transport layer)은 계층 구조의 네트워크 구성요소와 프로토콜 내에서 송신자와 수신자를 연결하는 통신 서비스를 제공한다." 라고 설명되어있다.간단히 말해서 양쪽의 end-point 간의 데이터 전송을 담당하는 역할을 하는 계층이다

2022년 4월 24일
·
0개의 댓글
post-thumbnail

클린코드 8장 - 경계

우리는 때로는 오픈 소스를 이용하거나, 사내에서 다른 팀이 제공하는 컴포넌트를 이용하기도 한다.우리는 어떤 식으로든 이 외부 코드를 깔끔하게 통합을 해야한다. 이 장에서는 소프트웨어 경계를 깔끔하게 처리하는 기법과 기교를 설명하고 있다.패키지 제공자나 프레임워크 제공자

2022년 4월 23일
·
0개의 댓글

클린코드 7장 - 오류 처리

깨끗한 코드와 오류 처리는 확실히 연관성이 있다. 상당수 코드 기반은 전적으로 오류 처리 코드에 좌우된다. 이 말은 지저분한 오류 처리 코드 때문에 실제 코드가 무엇을 하는지 파악하기 어려워지기 때문이다. 이 장은 오류 처리하는 기법과 고려 사항 몇 가지를 소개한다.위

2022년 4월 19일
·
0개의 댓글

클린 코드 4장 - 주석

이 장은 프로그래밍 언어 자체가 표현력이 풍부하다면 주석은 필요 없을 것이라고 말한다.주석은 코드 표현의 실패를 의미한다. 이렇게나 저자가 주석을 무시하는 이유는 주석이 너무 자주 거짓말을하기 때문이다. 주석은 오래될수록 코드에서 멀어진다. 점점 유지 보수하기 어려워진

2022년 4월 15일
·
0개의 댓글

클린코드 3장 - 함수

어떤 프로그램이든 가장 기본적인 단위가 함수다. 이 장은 함수를 잘 만드는 법을 소개한다.함수를 만드는 첫째 규칙은 '작게'다. 이 책의 저자는 함수가 적을 수록 좋다는 근거를 대기는 좀 어렵지만 40여년 동안 온갖 크기로 함수를 구현해봤을 때 작은 함수가 좋았다라고

2022년 4월 10일
·
0개의 댓글

클린코드 2장 - 의미 있는 이름

2장 2장에서는 의미있는 이름에 대해서 다룬다. 우리는 변수, 함수, 인수, 클래스, 패키지, 소스파일, 디렉토리, war, jar 등 많은 곳에 이름을 붙인다. 이름을 잘 지으면 여러모로 편하다는 것과 몇가지 규칙을 소개하고 있다. 의도를 분명히 밝혀라 의도가 분명

2022년 4월 10일
·
0개의 댓글
post-thumbnail

웹 통신의 큰 흐름 - 사이트 접속을하면 무슨 일이 일어날까?

브라우저의 URL창에 naver.com을 입력하면 무슨 일이 일어날까?보통은 DNS서버에서 IP주소를 요청하고 IP주소를 받으면 해당 웹서버에 접속한다 정도로 답할 수 있겠지만 이런 답변만으로는 부족할 수 있다.그렇기에 웹 통신의 흐름을 조금 더 자세하게 알아보고자 한

2022년 4월 1일
·
0개의 댓글

HTTP/HTTPS 그리고 TLS HandShake

HTTP란 인터넷 상에서 클라이언트와 서버가 자원을 주고받을 때 사용하는 통신 규약이다.현재 까지 HTTP/1.1을 가장 보편적으로 사용하고 있으며 HTTP/3부터 UDP를 기반으로 통신한다.HTTP 프로토콜은 통신을 함에 있어서 메시지를 암호화하지 않고 평문으로 주고

2022년 3월 31일
·
0개의 댓글
post-thumbnail

디자인 패턴 - 프록시 패턴(Proxy Pattern)

프록시 패턴의 프록시(Proxy)는 '대리' 라는 뜻을 가졌다. 이름 그대로 무엇인가를 대신 처리한다는 의미다. 프록시 서버, 리버스 프록시, 프록시 패턴 등에서의 프록시는 그런 의미에서 사용된다.그림에서 알 수 있듯이 RealSubject의 메소드를 Proxy 객체를

2022년 3월 24일
·
1개의 댓글

백준 9177번 - 단어 섞기

bfs로도 풀 수 있어 보이나 일단은 바텀 업 dp방식으로 풀어봤다.dpi = 첫 문자열에서 i개 만큼 사용하고, 두 번째 문자열에서 j개 만큼 사용했을 때 세 번째 문자열의 i+j까지 사용할 수 있는지 여부를 저장하는 dp 배열이다.예제cat tree tcraete에

2022년 3월 22일
·
0개의 댓글
post-thumbnail

String, StringBuffer, StringBuilder 어떻게 다른가?

개요 JAVA에서는 문자열을 다루는 클래스로 String, StringBuffer, StringBuilder가 있다. 하지만 이 세 가지는 각각 차이점을 가지고 있는데, 각각의 차이점을 이해하고 사용할 줄 알아야한다. 이 글에서는 그 차이점에 대해서 정리하고자 한다.

2022년 3월 22일
·
0개의 댓글