[Revit API]01-2_C#Basic_코드 구조

JakkeLab·2023년 10월 25일

Revit API

목록 보기
3/9
post-thumbnail

아마 Revit에서 Dynamo를 접해보신 분들이라면 첫 프로그래밍 언어로 Python을 시작했을 것 같습니다.
그래서 구조가 많이 다른 C#을 처음 접하고 많이 생소했을 것이라 생각합니다.
따라서 이해를 돕기 위해 python과 비교하듯이 설명하는 부분이 있을 수 있습니다. 그렇지만 python을 해보지 않은 분들이라도 이해할 수 있도록 작성했습니다.

  1. 코드구조

1) 참조 작성부분
참조를 작성하는 곳으로 코드를 짜기 위해 필요한 항목들을 불러오는 곳으로, 주로 using {네임스페이스}를 적어둡니다.
예를들어, 종이에 글을 쓰기 위해 필통을 가져온다 라고 가정하면

using 필통

이렇게 쓸 수 있습니다.
python의 경우 from 필통 import * 을 한것과 비슷하다고 볼 수 있습니다.

2) 네임스페이스
클래스, 인터페이스, 구조체, 열거형, 델리게이트를 담는 단위라고 볼 수 있습니다

클래스 : 변수, 함수 등을 하나로 묶어두는 틀 입니다. 예를들어 자동차 라는 클래스를 만든다고 하면 그 안에는 연료의 종류, 시동거는법 등이 포함되어 있을 것입니다.

인터페이스 : 클래스에서 가지고 있어야할 특성들을 정하는 것 입니다. 우리가 자동차를 구입할 때 전기차인지 디젤차인지, 4인승인지 6인승인지 등을 파악하고 고를 수 있도록 해야 합니다. 이렇게 일반적인 자동차를 만들 때 가지고 있어야할 속성들을 미리 정의해두는 것이 인터페이스 입니다.

구조체 : 신분증을 보면 이름, 생년월일, 거주지와 같은 간단한 값만 가지고 있습니다. 이런 값들을 묶어서 하나의 단위로 만든 것을 구조체라고 합니다.

열거형 : 달력을 보면 항상 월화수목금토일 이 반복됩니다. 이렇게 여러가지 상수로 쓰는 값을 그룹으로 묶어 관리할때 사용합니다.

델리게이트 : 함수를 참조하도록 하는 단위로, 에어컨 리모컨을 예로 들면 우리가 온도 높이기 버튼을 누르면 에어컨의 온도가 올라갑니다. 이렇게 특정 기능을 '가리키는' 버튼과 같은 것을 델리게이트라고 합니다.

각 항목에 대한 자세한 설명은 뒷 강의에서 진행하겠습니다.
지금은 이런 항목들이 있다는 것만 알아두시면 좋을것 같습니다.

네임스페이스는 이렇게 5가지 타입의 데이터를 담을 수 있습니다. 그리고 이렇게 만든 네임스페이스는 다른 코드 파일 등에서 참조할 수 있습니다.

using 지시문에 표시한 참조는 해당 네임스페이스 내의 항목을 호출하는 코드가 있을 때 밝게 바뀝니다.

Console.WriteLine("Hello, world!");

이 문장을 추가하면서 using System; 부분이 밝게 바뀌었는데, System 네임스페이스 속의 Console 이라는 클래스를 사용하였기 때문입니다.



이상으로 코드구조에 대한 내용은 마치며, 다음은 변수와 조건문, 반복문에 대해 진행하겠습니다.
profile
시간을 설계하는 건축가

0개의 댓글