Everyday Dev System

0531_TIL : 자바 코드 가독성 향상법, 객체 지향 코드 작성법 본문

내배캠 주요 학습/TIL : Today I Learned

0531_TIL : 자바 코드 가독성 향상법, 객체 지향 코드 작성법

chaeyoung- 2023. 6. 1. 00:31

튜터님께 오늘 질문을 하였다.

 

첫번째 질문으로, 가독성이 좋은 코드를 어떻게 짜면 되는지에 대해서 질문을 했는데,

정말 좋은 답변을 들어서 공유하고 싶다.

 

1. 검증된 코드를 많이 보기 

      - 자바 내부에 구현되어 있는 ArrayList와 같은 내부 구현체를 많이 보고 비교해봐라

2, naming과 최대한 간략하게 보기 수월하게 코드를 구성하는 것이 좋다.

3. 한클래스 라인 100 line 이내를 권장한다.

 

이 말을 듣고 ArrayList에 구현된 메서드를 바로 찾아보고 하나하나 이해하려 노력했다.

하지만, 이해가 잘 되지 않았다. 이를 보기 위해서는 Object 클래스, Collection 클래스의 내부도 봐야 하기 때문에

다 이해하기란 힘들었다.

그렇지만, 확실히 코드가 간단하다는 것이 보여서 이와 같은 간략함을 추구하며 코드를 작성하려 노력해야 겠다.

 

 

두번째 질문으로, 객체 지향에 맞게 코드를 잘 짠건지 어떻게 구분해야 하는가?
- 객체지향 5대 원칙에 맞게 구현하였는가?
- 객체지향의 꽃인 다형성을 잘 활용하고 있는가?

 

 

 

1. 인터페이스와 추상 클래스 활용 차이


- 인터페이스는 그저 명세(설계서)이고, 기능을 구현하지는 않고 메서드의 선언만 한다.
- 추상클래스는 공통의 기능을 구현한다는 점에서 인터페이스와 차이가 있다.
  주로, 기능을 확장하기 위해 상속하는 용도로 사용한다.

 


2. StringBuilder와 String 타입의 차이
- 불필요한 메모리를 피하기 위해! 메모리 관리 필요성 때문에 활용함.

  이것은 더 명확히 이해하고 찾아보면서 깨닫고 정리할 예정이다. 

 

3. 고정된 상수값(final)을 하지 않는 이상 전역변수(static) 거의 안 씀.