목록객체 (2)
완숙의 블로그
What is Class? 우리는 클래스라는 개념을 왜 도입했을까? C++에서 함수가 태어나게 된 이유도 분리해서 관리하기 위함이었다. 그런데 함수로 계속해서 나눠서 하는데 한계가 찾아온 것! 함수에 들어가는 입출 파라미터가 특정 데이터 타입에 연관되어 필요하다는 사실을 알아냈다. 실제로 우리가 어떤 물건을 생각해 보면, 해당 물건(객체)는 물건의 용도에 따라 할 수 있는 행동(method)가 정해져 있다. 따라서 우리는 어떤 객체인지를 밝히고, 그 객체가 할 수 있는 함수를 정의해 놓는 것이 보다 실제적인 접근이다. 이 때 클래스 의 개념은 신이 무언가를 만들때 어떻게 만들지 생각해놓은 설계도 라 생각하면 된다. Class 생성 방법 Member data 실제 세상에 비유하면 물체를 만드는 행위에 해당..
Class & Instance & Object 직관적인 이해 C를 배워봐서 알겠지만 C에서는 클래스가 없다. 다시말하면 이는 클래스를 개념을 도입하지 않아도 충분히 프로그램을 만들 수 있다는 얘기와 같다. 그렇다면 왜 굳이 이 개념을 차용했을까?귀찮음을 통해 인류문명이 발전했듯이 이 추상적인 개념을 도입한다면 우리가 얻는 이익은 굉장히 많다. 예제를 통해 생각해보자. 클래스는 어찌보면 인류역사에서 중요한 사건인 산업혁명에 비유될 수 있을 듯 하다. 산업혁명은 수공업으로 부터 공업으로 확산된 생산으로부터의 혁명이다. 기존의 제품을 만드는 것은 각각의 상점에서 수공업으로 하나하나의 상품을 만들어왔다. 그런데 만약 이 하나의 상품을 만드는데에 있어서 정해진 방법, 정해진 틀, 클래스가 있다면 어떨까? 예를 들..