티스토리 뷰

728x90
반응형

실력있는 개발자들의 공통된 특징들이 있다. 배운 것에 대해 확실히 알고 있으며 모르는 것들에 대해 인정할 줄 알고 스스로 찾아서 학습할 줄 안다.

 

개념을 모르는 개발자는 스스로에 대한 자신감과 확신이 없다. 그래서 신입시절 본인의 의견보다는 상사의 의견을 의심없이 받아들인다. 그리고 나중에 자신의 밑으로 들어온 신입에게 보고 들은 그대로를 전달한다.

 

똑똑한 신입이 들어와서 이런 저런 질문을 해도 본인도 잘 모르는 내용이기 때문에 정확한 설명 없이 '원래 그렇게 만들져서 그렇다'라고 대답한다. 이미 누군가 만들어 놓은 것이기 때문에 여기에 대해서 이러쿵 저러쿵 이야기 하는 것은 의미가 없다는 변명을 한다. 그런 곳에서는 개발자로서 실력을 향상시키기 힘들다고 생각한다.

 

Java 생태계에서는 이러한 일들이 빈번히 발생하는 것 같다. 왜냐하면 Java는 개체 지향적 (Object Oriented) 프로그래밍 언어이기 때문이다. 이에 따라 다양한 코드 작성 방법(패턴)이 존재한다.

 

개체 지향적 프로그래밍(Object Oriented Programming, 줄여서 OOP)은 주관성이 매우 강한 코드 작성 방법이다. 다양한 방법들이 존재하며 특정 방법을 따르는 집단과 반대 의견을 가진 집단들이 존재한다. 많은 개발자들이 찬성하는 다수설이 있는가 하면 소수의 사람들이 따르는 소수설도 있다. OOP에 대한 기본 개념들을 잘 이해하지 못한 개발자들은 무엇이 옳고 그른지 판단하지 못한다. 이 말은 해당 개념을 제대로 이해하지 못하면 본인이 들어간 회사에서 만난 상사가 제대로 된 사람인지 아닌지에 따라서 개발 실력의 향상(또는 정체)가 결정될 수 있다는 말이다.

 

이번 9월 학기에 수강한 COMP 2500 강의는 아래와 같은 개발자가 될 수 있도록 가르쳐주었다.

 

  1. OOP에 대한 기본 개념들을 제대로 알고 있는 개발자
  2. 많이 사용되는 패턴들의 장단점을 말할 수 있으며 특정 패턴의 광신론자에게 휘둘리지 않는 개발자
  3. 다른 사람이 작성한 OO 기반의 소스코드를 정확히 '분석'할 줄 아는 개발자
  4. 어떤 '설계 방식'을 적용해야 장점은 살리고 단점을 줄일 수 있는지 아는 개발자
  5. 설계한 것을 제대로 '구현'할 수 있는 개발자

 

후기 내용으로 쓸 주제들이 다양해서 아래와 같이 3가지로 나눠서 작성하였다.

 

  1. POCU 'COMP2500: Java 개체 지향 프로그래밍 및 설계' 동영상 강의에서 배우는 내용들
  2. 풀코스 수강(학기 등록)을 해야하는 이유
  3. 풀코스 500% 활용 방법 & 스트레스 없이 수료할 수 있는 방법

 

 

COMP 2500 Java OOP 강의에서 배운 것들

아래의 질문들에 대답할 수 있는가? 이 개념들에 대해 제대로 알고 있는 개발자와 그렇지 못한 개발자는 행동만 봐도 알 수 있다. 제대로 알고 있지 못한 개발자는 - 상사가 시키는 대로만 한다.

rhange.tistory.com

728x90
반응형