본문 바로가기
Programming/Tips(C++,C#)

C# .NET Programming 101109

by 곰네Zip 2010. 11. 9.

- using 키워드 : 동적으로 로드하는 키워드, 중복되도 문제가 없다. define은 정적으로 로드하고 중복될 경우 문제 일으키는 것과 반대됨

- partital keyword : 한 클래스당 같은 네임스페이스를 사용할 떄

-UML에서 클래스 구성 : 변수와 메소드
-UML에서 변수 표기 : "field : DataType"
 public : +표기, Private면 -표기
 if static이면 밑줄 쫙. static의 경우 힙이 아닌 클래스 영역에 위치한다. (클래스 정보라고 생각하자)

-UML에서 메소드 표기 : "method(ard : datatype) : return Type"
 public : +표기
 if class(static) method일 경우 역시 밑줄 쫙. 그어 표시한다. 

-Class 설계의 원칙
 클래스의 크기는 크지 말아야 한다. 클래스 크기가 크면 나중에 확장성의 문제가 발생할 수 있다.
 클래스에 기능 추가시, 과연 이 기능이 진짜 이 클래스가 꼭 가져야만 하는 기능인지 확인하자.
 필드는 다 감추고 나중에(필요한것만) 오픈해라. 
 오픈하는 과정은 설계하는 때 부터 고려할 것.

 Open시킬것과 클래스의 크기에 대한 고려가 중요할 것으로 보인다.

-C#에서는 String이든 string이든 상관은 없다. 다만 new키워드를 사용하여 객체를 생성해 줄 것.

- Class.method(params); << static으로 선언된 메소드의 경우 바로 이렇게 사용가능하다
- 위 상황에서 static이 아닌경우
  Class = new Class();    //여기에서처럼 생성을 해서 heap에 올려준 후 사용해라
  Class.method(param); 

- Class 선언시 앞에 아무런 접근지정자가 없으면 같은 Namespace안에서만 접근이 가능하다.

- C#언어는 매우 큰 수가 들어가면 exception이 일어난다. 그래서 명시적인 casting이 필요함.


반응형

댓글