목록Language (36)
ecsimsw
Casting Introduction - Dev korea에 c# 상속/ casting에 대한 질문을 보게 되었고, 사용법 자체를 중요시 했던 처음 c# 공부와 다르게 이번에는 그게 객체지향 측면에서 왜 중요한지, 실제 어떤 개념을 구현할 때 필요할 지를 고민하면서 Casting과 상속에 대해서 공부하였다. - 이번 캐스팅 관련 공부 목표는 다음 두가지이다. 1. 'Up casting / Down casting' 을 왜 사용하는가 2. 'Parent objectName = new Child()' 가 의미하는 바가 정확히 무엇인가. Up casting / Down casting Example _ up casting - 다음의 예시를 생각해보자. 3가지 경주용 자동차가 있고, 자동차의 시동을 거는 방법은 차..
Class & Struct Class & Struct 앞서 참조와 값 형식의 차이에 대해서 공부하였고 struct와 class를 비교하여 공부하면 더 명확하게 이해 할 수 있을 것이라고 생각하였다. 두 형식 모두 같은 기능이나 속성을 갖은 것들을 캡슐화하기 위한 장치인 것과 형식적인 차이점은 알고 있으나, 두 개가 어떤 차이가 있는지, 만약 그 쓰임이 같거나 한쪽이 우월하다면 다른 쪽 도구는 왜 존재하는지가 궁금하여 공부하였다. Class & Struct _ Usage aspects - 우선 사용 측면에서의 다른 점은 다음과 같다. 1) struct는 값 형식, class는 참조 형식이다. : struct는 new 연산자 없이 생성해도 자체 호출이 되서 생성이 가능하다. : 개체 복제 시 struct는 ..
Encapsulation Encapsulation / Class & Struct reference type과 value type을 공부하면서 대표적인 참조 형식인 class와 값 형식인 struct를 비교하면 공부하면 더 명확하게 공부할 수 있을 것이라고 생각했고, 두 개념을 비교하기에 앞서 왜 캡슐화를 사용해야하는지, 캡슐화가 뭔지에 대해서 공부하였다. Encapsulation - Class와 Struct 모두 encapsulation을 위한 도구이다. 내가 이해한 캡슐화는 다음과 같다. 1) 유사한 기능이나 변수를 한 집합으로 하여 더 관리하기 쉽게하고 코드를 명확히 함. 2) 외부에서 멤버를 엑세스하는 방법을 지정할 수 있도록, 직접 접근을 막거나 접근 전 부가적인 처리를 요구함. 3) 정보를 외부..
Reference type / Value type Memory structure - 먼저 메모리가 어떻게 구조되었는지 공부하였다. - 메모리는 OS에서 프로그램의 실행을 위해 공간을 할당받는 공간이다. 대표적인 메모리는 code/ data/ stack/ heap 영역이있고 아래 그림과 같은 구조를 갖는다. - 'code 영역'는 실행한 프로그램의 코드, 'data 영역'은 global variable/ static variable, 'heap 영역'은 사용자의 동적 할당 데이터, 'stack 영역'은 지역 변수나 매개 변수를 저장한다. - 힙 영역은 생성자/ 소멸자 또는 garbage collector에 의해 데이터가 저장/ 소멸되고, 스택 영역은 함수의 스코프 안에서 저장/ 소멸된다. 메모리 구조나 각..