강좌,팁

[KD스타일규칙] Panel, Control, Function 에 대한 이름부여규칙

조회 수 20960 추천 수 0 2008.10.15 22:36:18
허창원 *.68.47.59
한달쯤 전에 정리해둔 내용을 일단 먼저 올려놓습니다.
자세한 설명이나 강좌는 다음에 하도록 하구요, CVI 프로그래밍을 좀 해보신분들은 쉽게 알아차릴 내용입니다.

변수명, 함수명, Control명, Panel명, Callback 함수명 등을 어느정도의 범위 안에서 나름의 규칙을 정해두면, 복잡한 작업시에 편리할 뿐 아니라, 한참 세월이 지난 뒤에도 프로그램을 쉽게 파악할 수가 있습니다.

아래에 옮겨둔 메모는 오랫동안 CVI 프로그래밍을 해오면서 느끼던 것을 다듬어서 정리해두었는데요, 편리한 점이 있습니다. 지금은 일일이 설명하지는 못해도...

----------------------------------------------------------------------


2008-08-21 12:02


    앞으로의 프로그래밍 작업 효율성 제고를 위해


    


    Panel Constant Name, Panel Handle 변수명,

    Control의 Constant Name, INI에서 관리하는 변수명

    에 대한 부여규칙을 정합니다.

    


    예외는 Main Panel    


    Panel Constant Name     Panel Handle 변수명

    --------------------------------------------

    PANEL                   panelHandle

    PNLSetting              phPNLSetting

    PNLManual               phPNLManual

    PNLProgres              phPNLProgres

    --------------------------------------------


    


        Panel Constant Name은 PNL로 시작되도록 합니다.

    현재 CVI 8.5 버전까지도 Panel의 Constant Name은 10자까지만 허용되므로, 그 범위 안에서 적절히 명명하도록 합니다.

    


    Control Constant Name   INI 변수명          Control ID 예(PANEL, PNLManual 의 예)

    ---------------------------------------------------------------------------------------------

    numInterval             numInterval         PANEL_numInterval, PNLManual_numInterval

    bsPower                 bsPower             PANEL_bsPower, PNLManual_bsPower

    tmMessage               tmMessage           PANEL_tmMessage, PNLManual_tmMessage

    strString               strString           PANEL_strString, PNLManual_strString

    tbTextBox               tbTextBox           PANEL_tbTextBox, PNLManual_tbTextBox

    GRAPH                                       PANEL_GRAPH, PNLManual_GRAPH

    cmdOK                                       PANEL_cmdOK, PNLManual_cmdOK

    cnColor                 cnColor             PANEL_cnColor, PNLManual_cnColor

    chkCheckBox             chkCheckBox         PANEL_chkCheckBox, PNLManual_chkCheckBox

    nsNumericSlide          nsNumericSlide      PANEL_nsNumericSlide, PNLManual_nsNumericSlide

    knobNumKnob             knobNumKnob         PANEL_knobNumKnob, PNLManual_knobNumKnob

    radioOption             radioOption         PANEL_radioOption, PNLManual_radioOption

    ---------------------------------------------------------------------------------------------


        


2008-08-22 19:07


    어제 작성한 것을 약간 수정합니다.    


    


    Panel Constant Name     Panel Callback Function     Panel Handle 변수명         Callback 함수 포함 파일명

    -------------------------------------------------------------------------------------------------------------

    PANEL                   PanelCB                     panelHandle                 DEFPROG.c

    PNLSetting              PNLSettingCB                phPNLSetting                DEFPROG_PNLSerringCB.c

    PNLManual               PNLManualCB                 phPNLManual                 DEFPROG_PNLManualCB.c

    PNLProgres              PNLProgresCB                phPNLProgres                DEFPROG_PNLProgresCB.c

    -------------------------------------------------------------------------------------------------------------


 


    설명:

    Panel Constant Name은 PANEL 만 제외하고, PNL로 시작합니다.

    Panel Callback Function은 PanelCB만 제외하고 Panel Constant Name에다가 CB만 붙입니다.

    Panel Handle 변수명은 Panel Constant Name의 앞에 ph를 붙입니다.

    Panel Callback 함수를 포함하는 파일에는 그 Panel에 있는 Control의 콜백함수도 정의되는데, 이 파일명은 프로젝트명 뒤에 Panel Callback 함수명이 옵니다.


   


    이름하여, KD-Style Naming Rule (KD 스타일 이름 규칙) Kuk Dong Tech. Style Naming Rule

    Panel의 Constant Name, Panel Callback Function Name, Panel Handle 변수명, Panel Callback 함수 포함 파일명,

    Control의 Constant Name, Control Callback Function Name, 컨트롤과 연계된 INI 변수명, 그리고 자연히 Control ID도...


----------------------------------------------------------------------


List of Articles
번호 제목 글쓴이 날짜 조회 수
116 [팁] 컨트롤의 tooltips 지정하기 file 허창원 2020-05-08 389
115 멀티쓰레드 사용 시, 메모리 관련 참고사항입니다. [1] 요돌이 2017-10-24 1092
114 [팁]타이머 사용시 주의할점. file 이현화 2014-02-13 2535
113 Lable 세로쓰기 [1] 초보 2013-12-21 2668
112 [강좌:45] ini 파일 이용하기(CISManip.dll 활용) [2] 허창원 2013-05-29 3876
111 [강좌:44] ini 파일 이용하기(기본 활용) [1] 허창원 2013-05-29 5159
110 [강좌:43] Panel 크기 변경시에 컨트롤의 위치나 크기 조절하기(CISManip.dll 활용) 허창원 2013-03-12 6457
109 [강좌:42] Panel 크기 변경시에 컨트롤의 위치나 크기 조절하기(기본 활용) 허창원 2013-03-12 7072
108 [팁21] 그래프를 지우고 그릴때의 plotHandle을 구하는 방법 [1] 야리싸내 2012-05-25 7457
107 [강좌:41] Prototype 프로그램 CISDEFPROG 소개 [1] [1] 허창원 2012-01-03 8670
106 [강좌:40] CIS Project를 시작하며... [4] 허창원 2011-12-29 8429
105 ------------- 이제 새로운 지평이 열립니다 ------------- 허창원 2011-12-29 8835
104 [팁]그룹명령(고수님들은 패스~ ^^;) file [2] 이현화 2009-06-15 23113
» [KD스타일규칙] Panel, Control, Function 에 대한 이름부여규칙 file 허창원 2008-10-15 20960
102 [팁]Elaped Time [1] 이현화 2008-10-15 26401
101 [팁:19] 시리얼 포트 모니터링(Serial Port Monitoring) 유틸리티 소개 [9] [1] 허창원 2008-05-12 95070
100 [팁:18] CVI에서 ActiveX 컨트롤 사용하는 절차 file [2] 허창원 2008-04-07 30959
99 [강좌:39] 입맛대로 좀더 편리하게 배포용 설치 프로그램 만들기(CVI 8.5 이용) [1] [1] 허창원 2008-03-14 22994
98 [강좌:38] 배포용 설치 프로그램 만들기(CVI 8.5 이용) 허창원 2008-03-14 22899
97 [팁]간단한 최소화 기능개선입니다. 김민수 2007-10-05 24105