규칙 1: 각 클래스에 대한 유닛 생성(One Class, One Unit)
항상 명심하세요: 클래스의 비공개(PRIvate) 부분과 보호(보호) 부분은 다른 유닛의 클래스와 프로시저에서만 숨겨집니다. 따라서 효과적인 캡슐화를 원한다면 각 A 클래스가 다른 유닛을 사용하도록 제공해야 합니다. 다른 클래스에서 상속되는 클래스와 같은 일부 간단한 클래스의 경우 공유 단위를 사용할 수 있습니다. 그러나 동일한 유닛을 공유하는 클래스의 수는 제한되어 있습니다. 단일 유닛에 복잡한 클래스를 20개 이상 넣지 마세요.
규칙 2: 구성 요소 이름 지정
구성 요소에 대해 설명적인 이름을 사용하는 것도 중요합니다. 이름을 지정하는 가장 일반적인 방법은 클래스의 소문자와 BtnAdd 또는 editName과 같은 구성 요소의 기능으로 시작하는 것입니다.
규칙 3: 이름 이벤트
이벤트 처리 방법에 적절한 이름을 지정하는 것이 훨씬 더 중요합니다. 구성 요소에 적절한 이름을 지정하면 시스템 기본 이름인 ButtonClick이 BtnAddClick이 됩니다. 이 이벤트 핸들러의 기능은 이름에서 짐작할 수 있지만, 델파이에서 붙인 이름보다는 메소드가 하는 일을 설명하는 이름을 사용하는 것이 더 좋은 방법이라고 생각합니다. 예를 들어 BtnAdd 버튼의 OnClick 이벤트 이름은 AddToList로 지정할 수 있습니다. 이렇게 하면 특히 클래스의 다른 메서드에서 이벤트 핸들러를 호출할 때 프로그램을 더 쉽게 읽을 수 있으며 프로그래머가 유사한 이벤트나 다른 구성 요소에 대해 동일한 메서드를 선택하는 데 도움이 됩니다.
규칙 4: 양식 방법을 사용하세요
양식은 클래스이므로 양식의 코드는 메소드별로 구성됩니다. 이벤트 핸들러를 양식에 추가할 수 있으며 이러한 핸들러는 특별한 기능을 수행하며 다른 메소드에 의해 호출될 수 있습니다. 이벤트 처리 방법 외에도 작업 완료를 위해 특별히 정의된 메서드와 양식 상태에 액세스하기 위한 메서드를 양식에 추가할 수 있습니다. 다른 폼이 해당 구성 요소를 직접 작동하는 것보다 다른 폼이 호출할 수 있도록 폼에 일부 공용(Public) 메서드를 추가하는 것이 더 좋습니다.
규칙 5: 양식 생성자 추가
런타임 시 생성된 두 번째 양식은 기본 생성자(TcomComponent 클래스에서 상속됨) 외에 특수 생성자를 제공합니다.
Create 메서드를 오버로드하고 필요한 초기화 매개변수를 추가하는 것이 좋습니다. 특정 코드는 다음 코드에서 찾을 수 있습니다.
공공의
생성자 Create(Text:string): 오버로드를 다시 도입합니다.
생성자 TformDialog.Create(Text:string);
시작하다
상속됨 Create(응용 프로그램);
편집1.텍스트:=텍스트;
끝;
규칙 6: 전역 변수를 피하세요
전역 변수(유닛의 인터페이스 섹션에 정의된 변수)는 피해야 합니다. 다음은 이를 수행하는 방법에 대한 몇 가지 제안 사항입니다.
양식에 대한 추가 데이터를 저장해야 하는 경우 양식 클래스에 일부 개인 데이터를 추가할 수 있습니다. 이 경우 각 양식 인스턴스에는 자체 데이터 복사본이 있습니다. 단위 변수(단위의 구현 섹션에 정의된 변수)를 사용하여 양식 클래스의 여러 인스턴스에서 공유되는 데이터를 선언할 수 있습니다.
다양한 유형의 양식 간에 데이터를 공유해야 하는 경우 기본 양식에서 이를 정의하여 공유를 달성하거나 전역 변수를 사용하거나 메서드 또는 속성을 사용하여 데이터를 얻을 수 있습니다.
규칙 7: Tform1 클래스 내에서 Form1을 사용하지 마십시오.
클래스의 메소드에서 특정 객체 이름을 사용하지 않아야 합니다. 즉, 현재 객체를 꼭 사용해야 하는 경우에는 Self 키워드를 사용할 수 있습니다.
규칙 11: 구성요소 속성 노출
다른 양식의 상태에 액세스해야 하는 경우 해당 구성 요소에 직접 액세스하면 안 됩니다. 이는 다른 양식이나 다른 클래스의 코드를 사용자 인터페이스와 결합하며 사용자 인터페이스는 종종 애플리케이션에서 가장 변경하기 쉬운 부분이기 때문입니다. 가장 좋은 방법은 액세스해야 하는 구성 요소 속성에 대한 양식 속성을 정의하는 것입니다. 이를 달성하려면 Get 메서드를 사용하여 구성 요소 상태를 읽고 Set 메서드를 사용하여 구성 요소 상태를 설정할 수 있습니다.
이제 사용자 인터페이스를 변경하고 기존 구성 요소를 다른 구성 요소로 교체해야 하는 경우, 필요한 모든 양식을 찾아서 수정할 필요 없이 이 구성 요소의 속성과 관련된 Get 메서드 및 Set 메서드만 수정하면 됩니다. 이 구성 요소와 클래스 소스 코드를 참조하세요. 자세한 구현 방법은 아래 코드를 참조하세요.
사적인
함수 GetText:문자열;
프로시저 SetText(const Value:String);
공공의
속성 텍스트:문자열;
GetText 읽기 SetText 쓰기;
함수 TformDialog.GetText:String;
시작하다
결과:=Edit1.Text;
끝;
절차 TformDialog.SetText(const Value:String);
시작하다
편집1.텍스트;=값;
끝;
규칙 16: 시각적 형태 상속
올바르게 적용하면 강력한 도구가 될 수 있습니다. 내 경험에 따르면 개발하는 프로젝트의 규모가 클수록 가치가 높아집니다. 복잡한 프로그램에서는 서로 다른 양식 계층을 사용하여 관련 양식 그룹의 다형성을 처리할 수 있습니다.
시각적 양식 상속을 사용하면 여러 양식의 일부 공통 작업을 공유할 수 있습니다. 공유 메서드, 공통 속성은 물론 이벤트 핸들러, 구성 요소, 구성 요소 속성, 구성 요소 이벤트 처리 방법 등도 사용할 수 있습니다.
자세한 내용은 http://lincosoft.go.nease.net/을 참조하세요.