언어/JAVA
JAVA 공부방법
's writer
2025. 5. 7. 11:21
✅ 먼저 정리할 핵심 Java 개념들
우선 아래 항목들이 어느 정도 익숙해야 자바 기반 프로젝트를 혼자서 만들고 유지할 수 있어요:
- OOP (객체지향의 진짜 의미)
- 클래스, 인터페이스, 추상화, 상속, 다형성
- 언제 인터페이스를 쓰고, 언제 상속을 쓰는가?
- 컬렉션 프레임워크
- List, Map, Set 차이와 사용처
- 언제 HashMap, 언제 TreeMap?
- Exception 처리
- Checked vs Unchecked 예외
- 예외 설계 방법
- JVM 개념 (가볍게라도)
- 메모리 구조, GC, static의 의미
- Spring (혹은 Spring Boot)
- DI/IoC, Controller-Service-Repository 구조
- REST API 설계와 간단한 CRUD
🧠 “좋은 코드”를 익히는 방법 3가지
1. 좋은 오픈소스 프로젝트 따라 읽기 (정해진 기준을 보고)
추천: Spring PetClinic
- 작은 규모의 스프링 부트 프로젝트로, 구조가 아주 깔끔합니다.
- MVC 구조, 테스트, 설정 등 현실적인 예제가 많아요.
2. “Clean Code” 읽기 + 실습
- 로버트 마틴의 『Clean Code』는 개발자라면 필독입니다.
-> 내용정리 : https://velog.io/@soojxng/%ED%81%B4%EB%A6%B0-%EC%BD%94%EB%93%9CClean-Code-%EB%A6%AC%EB%B7%B0 - 예시 코드 개선하기 과제를 직접 해보면 코드를 보는 눈이 확 올라갑니다.
3. “좋은 코드란 무엇인가”에 대한 기준을 익히기
아래 기준들이 있어요.
코드를 볼 때 아래를 하나씩 체크해보면 훈련이 됩니다:
평가 기준설명
명확한 역할 분리 | 클래스/함수가 너무 많은 책임을 지고 있지 않은가? |
이름 짓기 | 함수/변수 이름이 의미를 잘 전달하는가? |
중복 제거 | 비슷한 코드가 반복되고 있지 않은가? |
확장성 | 새로운 요구사항이 생겨도 쉽게 확장 가능한 구조인가? |
테스트 가능성 | 단위 테스트 작성이 용이한 구조인가? |
📌 실천 팁
- 지금 하고 있는 사이드 프로젝트가 있다면, 구조나 코드를 보여주면 같이 리뷰해줄 수 있어요.
- 그리고 "개념 부족"을 느낀다는 것 자체가 실력 향상의 첫걸음이에요. 아무 생각 없이 코딩만 하는 사람보다 훨씬 나은 출발점이에요.