위로 아래

자바를 공부하면서 객체지향이라는 말이 잘 와닿지 않았었다.

오브젝트라는 말도 여러 번 사용해 왔지만, 느낌으로 알 뿐 정확히 설명하기 어려웠다.

 

객체지향에 대해 검색해 보던 중,

객체지향은 프로그래밍에서 탄생한 것이 맞지만, 하나의 사고방식으로 생각할 수도 있다는 것을 알았다.

 

절차지향적으로 모든 것을 연결해서 보는 것이 아니라,

모든 사물이나 현상은 그거싱 독립적인 객체이고,

그 객체 자체나 객체가 서로 상호작용하는 관계를

비연속적으로 볼 수 있다는 것이다.

 

 

 

 

자바에는 기본적으로 생성 되어 있는 인터페이스나 클래스, 메소드가 정말 많다.

수업을 듣던 중 배우지 않은 메소드들이 튀어나와 당황한 적이 있다.

그 메소드가 이해되지 않아 강사님께 질문을 했더니,

강사님이 이렇게 말했다.

 

"절차지향적으로 말고, 객체지향적으로 생각하세요.

부분 부분 잘라서 먼저 얼핏 느끼고, 서로가 상호작용하는 관계를 보면서 전체로 합쳐보세요."

 

 

 

 

나는 세상의 다양한 정책들에 피로함을 많이 느껴왔다.

보험 제도나, 집 계약 문제. 국민건강보험, 세금, 지방세, 국민연금, 사대보험, 대출 등등...

이런 모든 것을 포기하고 싶었다. 너무 거대해 보여서. 

 

오늘도 마찬가지로 이런 문제들에 골머리를 썩고 있는데,

객체지향이 떠올랐다.

 

이 모든 것을 하나로 묶고 위에서부터 절차대로 따라가려니까 어려운 것이다.

객체지향적으로 생각해야 한다.

보험 따로, 집 따로, 돈 따로, 세금 따로...

보험 인터페이스를 구현하는 건강보험, 사대보험 등

돈 클래스를 상속하는 집 계약 문제, 대출 등

 

이렇게 생각하니, 꼭 모든 클래스를 한 번에 생각할 필요도 없고,

어떤 클래스를 이해하려다가 어려우면 상위 클래스의 특징을 참고할 수도 있다는 것을 깨달았다.

그러자 이 모든 문제가 커다란 하나의 문제가 아니라, 사소한 여러 문제로 느껴졌다.

 

객체지향적인 사고에 대해서 더 공부해보고 싶다.