[정보통신기술용어해설(개선중)]   

   (사용db : , 사용자 : )

(2019.3.12, 차재복, Cha Jae Bok, cjbword@gmail.com)

[S/W 개발/개선에 따른 상세 코딩 규칙 정리중 ...]

ㅁ 폴더 구분
  ㅇ /test/ : 현재 개선중인 모든 소스 파일 (개방)
  ㅇ /word/ : 구 버전 정보통신기술용어해설 (미개방,향후폐기예정)

ㅁ /test/ 하위 폴더별 용도
  ㅇ base_utils : 공통 유틸리티 
  ㅇ coding : 코딩 목록 구축
  ㅇ ex_run : 모듈 구현 항목
  ㅇ example : 구현 목록화
  ㅇ items : 분류 관리 (향후폐기예정 => yoyak으로 대체)
  ㅇ knowledge : 지식 관리 시험 버전 (향후폐기예정)
  ㅇ login : 로그인 관리 구현
  ㅇ open_src : 소스 개방
  ㅇ reform : 개선중 (특정검색,재구성,코딩이란? 등)
  ㅇ search : 정보통신용어해설 검색
  ㅇ view : 정보통신용어해설 보기
  ㅇ yoyak : 분류요약관리

ㅁ 세션 변수화
  ㅇ user_name
  ㅇ user_type : 사용자 레벨 구분 (4단계)
    - ('일반사용자 0' or '테스트편집자 1' or '정식편집자 2' or '종합관리자 3')
  ㅇ db_name : 주로, 'test'

ㅁ 변수명 규칙
  ㅇ 구별/식별 : no, id, ...
  ㅇ 순서 : seq, sub_seq, ...
  ㅇ 카운트 : i, j, cnt, ...

ㅁ 화면 구성
  ㅇ top section : 상단
  ㅇ body section : 본문
  ㅇ footer section : 하단

ㅁ 텍스트 문자열 관리
  ㅇ 줄바꿈 구분자 (10개)
    - 경우 1 : ( □ ○ ◇ - * ▣ ⊙ ◆ . .. )
    - 경우 2 : ( ㅁ ㅇ - * ~ . .. )

  ㅇ 텍스트 파일별 부분문자열 교체
    - db 테이블 구조 (5개 칼럼)
      * dict_no int(11) : 기술용어해설 no
      * word varchar(80) : 기술용어해설 용어명
      * link_no int(11) : 텍스트 파일 내 링크 번호
      * target varchar(20) : 파일명
      * type char(1) : 링크 타입
        ~ l : word link, i : image link, m : math link, t : table link
    - str 파일 또는 문자열
      * 추출 부분 문자열 구분자 : \^XXX^\ (XXX : 3자리 숫자 이내, 1~999)

    - 단어 인식 
      * (직전 가능 구분자) : `(space)` `[` `]` `(` `)` `/` `.` `:` `;` `,`
      * (직후 가능 구분자) : `(space)` `[` `]` `(` `)` `/` `.` `:` `;` `,`
      * (직후 불가 구분자) : 한글 (정규표현식 : /[\xA1-\xFE][\xA1-\xFE]/)

ㅁ 주석 기재 원칙
  ㅇ 우선, 소스 자체가 명확하게 의도를 드러나게 하고, 단락별 적정 주석 기재
  ㅇ 소스 코드 자체를 코딩 학습 자료화 도모 등

ㅁ html table ↔ db table
  ㅇ html table 
    - (array) [id, parent, title, depth, rspan, cspan]
  ㅇ db table
    - id int(11)
    - parent int(11)
    - title varchar(80)
    - depth int(2)
    - sub_seq int(11)
    - path2node varchar(100)
    - merged text
    - translated text

ㅁ MathJax
  ㅇ inlineMath : {#  #}
  ㅇ displayMath  : [#  #]

ㅁ reform 텍스트 파일 보이기 테이블 : code, manual
  ㅇ code 테이블 : 코드 테이블
  ㅇ manual 테이블 : 메뉴얼 테이블

□ 코드 테이블 (테이블명 : code, 칼럼수 : ?개) 
  ㅇ no int(11) : 코드 no (유일 번호)
  ㅇ date datetime : 수정 일시
  ㅇ id int(11) : 그룹(모듈) id
  ㅇ id_name varchar(50) : 그룹(모듈) 이름
  ㅇ code text : 코드 내용
  ㅇ type varchar(20) : 자연언어, Pseudocode, PHP, C, Java, Javascript, Python, 참고사항, 웹실행
  ㅇ run varchar(30) : (실행 대상 파일 url)

Copyrightⓒ written by 차재복 (Cha Jae Bok)       [ 재구성 (개선중) ]