SungJin Kang

SungJin Kang

hour30000@gmail.com

© 2024

Dark Mode

프로그램을 설계할 때 명심해야할 것 ( 클래스를 만들 때 생각해야할 것들 )

클래스는 무엇인가?? 클래스는 그냥 기능을 수행하는 것이다.
이 점에서 클래스와 함수의 존재 이유는 차이가 없다. 다만 클래스가 조금 더 유용한 기능들을 가질 뿐이다.

프로그램을 설계할 때는 어떻게 설계를 해야할까?

  1. 먼저 프로그램이 수행하는 기능, 행동들을 먼저 정하고 나열해보아라.
  2. 그 기능들을 가지고 클래스를 만들어보아라.
  3. 그 기능들이 해당 클래스와 맞지 않거나, 클래스가 너무 많은 기능을 가지면 클래스를 더 만들어서 기능들을 새로 만든 클래스로 옮겨라.
  4. 위를 반복하라.

클래스를 만들 때 생각해야할 것은 하나다!
바퀴를 가지고 핸들을 가지면 자동차이다 ( X )
자동차는 움직이고 방향을 전환하는 기능(!!)을 한다 -> 이 기능을 위해 수단으로 바퀴와 핸들을 가진다 ( O )

위의 문장을 잘 생각해보아라. 바퀴와 핸들은 단순히 수단일 뿐이다. 수단이 목적(기능)에 우선하면 안된다.
기능(목적)을 먼저 생각하고 그 기능을 달성하기 위한 수단은 그 다음에 생각하는 것이다!


UML 다이어그램을 그릴 때 알아야 할 것들

  1. 클래스들만 정의해라.
  2. 각 클래스는 이름만 보아도 무슨 행동을 하는지 알 수 있어야한다. ( 단순히 함수 선언부를 몇개 써주는 것은 괜찮다. )
  3. 클래스 이름만 보고 그 클래스가 해당 기능을 하는지 알 수 없을 꺼 같으면 그 때는 해당 기능을 클래스를 하나 더 만들거나 다른 클래스로 빼주어야한다.