공부 자료/Java23 [Java] 디자인 패턴 *이 글의 내용은 제가 이해한 것을 바탕으로 작성되었습니다. 글의 내용 중 잘못된 내용이 있다면 댓글로 피드백 해주시면 감사하겠습니다. 이 글은 내가 디자인 패턴에 대해 공부한 것을 정리한 글이다. 이 글에선 디자인 패턴의 개념과 주의사항, 그리고 디자인 패턴의 종류들을 다룰 것이며 디자인 패턴의 종류는 새롭게 배우는 게 생길 때마다 계속 추가할 예정이다. 1. 디자인 패턴이란? 디자인 패턴은 소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 문제들을 예방하기 위한 재사용 가능한 해결책을 의미한다. "바퀴를 다시 발명하지 마라 (Don't reinvent the wheel)" 이라는 말로 유명한데, 이미 만들어져 있는 것 (해결책) 을 다시 만드는 데 시간을 쏟지 말라는 의미이다. 패턴을 사용할 때 주.. 2022. 11. 28. [Java] JVM JVM에 관해 공부한 내용들을 정리해 보았다. 1. JVM 이란? 자바 가상 머신 JVM(Java Virtual Machine)은 자바 프로그램 실행환경을 만들어 주는 소프트웨어이다. 우리가 작성하는 소스 코드(.java)는 java compiler를 통해 자바 바이트 코드(.class)로 변환 되고, 이 바이트 코드를 JVM이 바이너리 코드로 변환시켜 OS에 전달해준다. 바이너리 코드는 컴퓨터가 인식할 수 있는 0과 1로 구성된 이진 코드이다. JVM 덕분에 자바의 소스 코드는 OS에 종속적이지 않다. 각 OS별로 해당 OS에 맞는 JVM만 설치되어 있다면 우리는 동일한 소스 코드를 윈도우, 리눅스, 맥 OS 그리고 다른 운영체제에서도 사용할 수 있다. JVM의 코드 해석 방식 JVM은 바이트 코드를 .. 2022. 11. 27. [Java] 객체 지향 프로그래밍 5원칙 (SOLID) 2022. 11. 27. [Java] 객체 지향 프로그래밍의 3요소 *이 글의 내용은 제가 이해한 것을 바탕으로 작성되었습니다. 글의 내용 중 잘못된 내용이 있다면 댓글로 피드백 해주시면 감사하겠습니다. 이 글은 객체 지향 프로그래밍의 구성 요소 중 흔히 3요소라고 불리는 캡슐화, 다형성, 상속 과 추가적으로 추상화에 대해 이해한 내용들을 정리한 글이다. 안겔 레오나르드의 '자바 코딩 인터뷰 완벽 가이드' 라는 책의 내용을 주로 참고하였다. 0. 추상화 추상화는 사용자와 관련 있는 내용만 노출하고 나머지 세부 내용은 숨기는 개념이다. 추상화를 통해 사용자는 애플리케이션이 일을 수행하는 방법이 아니라 애플리케이션이 수행하는 일 자체에 집중할 수 있다. Java에서는 인터페이스와 추상 클래스를 통해 추상화를 구현할 수 있다. 인터페이스는 메서드의 사용 방법 (이름) 만 제공.. 2022. 11. 27. [Java] 객체 지향 프로그래밍과 절차적 프로그래밍 2022. 11. 27. [Java] String Buffer 와 String Builder 2022. 11. 23. 이전 1 2 3 4 다음