728x90
더 괜찮은 개발자가 되기 윈한 프로젝트 더보기 - 205Page ~ 208Page 발췌
클라이언트 프로그램의 코딩 표준을 정의하는 UI 코딩 표준은 일반적으로 명명규칙, 주석규칙, 소스코드 구조로 구성된다.
· 명명 규칙 : 변수나 이름을 지을 때 사용할 규칙을 정의하는 것이다.
· 주석 규칙 : 프로그램 맨 위에 프로그램을 간단하게 설명하는 주석을 어떤 형태로 만들지를 정의하는 것이다.
· 소스코드 구조 : 프로그램의 가독성을 높이기 위해 메타태그, 외부파일 링크, 자체 스크립트 그리고 HTML 파일을 어떤 구조로 구성할지 정의하는 것이다.
# 객체 명명 규칙
컴포넌트 | 접두어 | 사례 |
Array | ary | aryName, aryEmp |
Button | btn | btnSearch, btnSave, btnDelete |
CheckBox | cb | cbAnniv, cbEmp |
Combo Box | cbo | cboAnniv, cboEmp |
Image | img | imgEmp, imgComp |
List | lst | lstName, lstEmp |
Form | frm | frmSend, frmImp |
Input | In | inId, inName |
Text Area | ta | taReport taSummary |
Radio | rd | rdGubun, rdType |
• 버튼을 표시하는 Button 컴포넌트 btn이라는 접두어로 시작해야 한다.
• 조회기능을 담당한다면 접두어와 업무를 결합해 btnSearch라고 이름 짓는다.
• 저장 기능을 수행하는 버튼은 btnSave라 이름을 지으면 된다.
이와 같이 동일한 패턴으로 컴포넌트 이름을 지으면 다른 사람이 프로그램을 분석 할 때 코드를 분석하지 않아도 이름만으로 대략적인 기능을 유추할 수 있다.
# 메소드 명명 규칙
자주 사용하는 메소드 명명규칙을 살펴보자. 컴포넌트 명명 규칙과 마찬가지로 메소드 명명 규칙또한 프로그램 가독성 및 개발 생산성을 향상시키기위해 사용한다. 메소드의 동작을 기준으로 이름을 만들면 소스코드 분석 없이 기능을 쉽게 유추할 수 있다.
동사 | 설명 | 사례 |
Select | 서버에서 정보를 조회할 경우 | selectBoard |
Search | 서버에서 특정 값을 찾아 조회할 경우 | searchName, searchContent |
Insert | 서버에서 신규 정보를 저장할 경우 | insertBoard |
Update | 서버에서 조회한 정보를 수정해서 다시 서버에 저장할 경우 | updateBoard |
Delete | 서버에서 조회한 정보를 삭제할 경우 | deeleteBoard |
Get | 속성을 가지고 올 경우 | getValue |
Set | 속성을 설정 할 경우 | setValue |
Generate | 새로운 속성 값을 생성할 경우 | generateKey |
Calculate | 수식을 계산할 경우 | calculateAge |
Is | 특성이나 상태의 진위 여부를 판단할 경우 | isValid |
# 주석 규칙과 코딩 표준 정하기
/**
* @프로그램명 : 영업일지 목록
* @소스 파일 이름 : ExampleController.java
* @파일설명 : 영업일지 목록을 보여주는 클라이언트 화면
* @작성자 : 사악미소
* @버전 : 0.0.1
* @생성일자 : 2023-07-05
* @최종수정일자 : 2023-07-10
* @최종수정자 : 사악미소
* @최종수정내용 : 영업일지 목록이 작성 시간을 추가
*/
주석은 소스코드 안에 적어놓은 프로그램에 대한 설명이다. 주석 규칙을 따로 정하기 보다는 주석에 대한 사례를 정확하게 제시하는 것이 보다 효율적이다.
주석에 들어가는 내용은 이 프로그램의 역할이 무엇이고 누가 처음 개발했으며 나중에 언제 누가 왜 수정했는지 정도이다.
728x90
'Document' 카테고리의 다른 글
[Design] 디지털 정부서비스UI/UX 가이드라인 (0) | 2024.04.12 |
---|---|
[Sinipaste] Windows 화면 캡쳐 프로그램 (0) | 2023.07.12 |
[Slack] 바쁜 중간 관리자의 슬랙 알림 설정 - i.e 모든 대화 알림 받기 (0) | 2023.04.20 |
[Document] 지속적인 통합 서버(Continuous Integration Server) (0) | 2023.02.09 |
[MS-Word] 제목을 사용한 탐색 창 활성 화 및 목차 자동생성 (0) | 2022.12.29 |