검수요청.png검수요청.png

카멜

위키원
Asadal (토론 | 기여)님의 2019년 8월 22일 (목) 07:46 판
이동: 둘러보기, 검색

카멜(Caml)은 다중 패러다임, 범용 프로그래밍 언어이다. 1985년 컴퓨터과학 및 응용수학 분야를 연구하고 있는 프랑스 연구소 인리아(INRIA)에 의해 개발 배포되었다.

카멜의 경우 (같은 양식 카멜 표기법 ) 문구의 중간에 각 단어 나 약어가 시작되도록 문구를 작성하는 방법이다. 대문자 사이에 공백 또는 구두점. 일반적인 예로는 " iPhone "및 " eBay "가 있고 "johnSmith"와 같은 온라인 사용자 이름에 사용되며 광고와 같이 여러 단어로 된 도메인 이름을 보다 읽기 쉽게 만들 수도 있다.

카멜케이스는 종종 컴퓨터 프로그래밍에서 변수 이름으로 사용된다. 일부 프로그래밍 스타일은 첫 글자가 대문자인 카멜 경우를 선호하지만 다른 경우는 그렇지 않다. 명확화를 위해,이 문서는 두 가지 대안 통화 상부 카멜 케이스를 ( 초기 대문자, 파스칼 경우 ) 및 하부 카멜 케이스 ( 초기 소문자, ) . 일부 사람들과 조직, 특히 Microsoft 는 카멜 경우라는 용어를 소문자 카멜 경우에만 사용하고. 파스칼 케이스 는 상단 카멜 케이스만 의미한다.

개요

  • 카멜(Caml)은 "Categorical Abstract Machine Language"(범주형 추상 기계 언어)의 약자로, 프로그램의 안전과 신뢰성을 최우선으로 두고 설계된 범용 프로그래밍 언어이다. 표현력이 뛰어나면 배우기 어렵다는 보통의 언어와 다르게, 카멜은 표현력이 뛰어나면서 동시에 배우고 사용하기 쉽다. 카멜은 기능적, 명령형 및 객체 지향 프로그래밍 스타일을 지원한다.[1]
  • 대문자로 된 단어를 통합하거나 단어의 하나 이상의 구성 요소를 대문자로하여 만든 새 텍스트 기호이며 이러한 식별자의 모양은 카멜의 개요와 유사하다.[2]

카멜의 코딩 스타일이라 함은 기본적으로 소스 코드를 작성할 때의 불문율적인 편집 규약에 가깝다. 이런 것 때문에, 거대한 프로젝트는 미리 지켜야 할 코딩 스타일을 정의해놓기까지 한다. 여러 단어를 연달아 사용할 때 각 단어의 첫 글자를 대문자로 적되, 맨 앞에 오는 글자는 소문자로 표기한다. 코딩 이후 모습이 낙타의 등에 있는 혹과 같다고 하여 카멜(Camel) 표기법이라고 부른다. 예로는 camelVariable과 같은 식으로 쓴다. Java의 권장 표기법이다.[3]

특징

  • 구조체와 클래스 이름의 첫 글자는 대문자로, 나머지 글자는 소문자로 작성한다.
  • 2개 이상의 복합 단어는 단어별로 끊어 첫 글자는 대문자로, 나머지는 소문자로 작성한다.
  • 이미 축약된 약어는 모두 대문자로 작성 가능하다.
  • 프로퍼티나 메소드를 선언할 때는 소문자로 시작한다.
  • 언더바( _ ) 로 단어를 연결하는 방식은 지양한다.

(참고: 객체 내에 사용되는 프로퍼티, 메소드 이름을 쓸 때에는 첫 글자를 소문자로 쓰며 단어 구분만 대문자로 표시해준다고 한다. 예를 들어, personName 이런 식으로 쓴다.[4])

종류

  • 상단 카멜 케이스 - PascalCase : ThisIsAnExample. thisIsNotAnExample이다.
  • 낮은 카멜 경우 - thisIsAnExample. 티hisIsNotAnExample이다.[5]

활용

단어 조합

  • 일상적인 텍스트를 정기적으로 철자하는 규칙에서 중간 대문자를 사용하는 것은 드물지만 일부 언어에서는 두 단어 나 세그먼트가 결합 될 때 발생하는 특정 문제에 대한 해결책으로 사용 됐다.
  • 이탈리아어로 대명사는 동사에 접미사 할 수 있으며 두 번째 인칭 대명사의 존경 형태가 대문자로되어 있기 때문에 이 같은 문장을 생성 할 수 있다.
  • 이 규약은 또한 몇 가지 서면 Bantu 언어 (예 : kiSwahili , " 스와힐리어 언어 "; isiZulu , " Zulu 언어 ")와 멕시코의 여러 원주민 언어 (예 : Nahuatl , Totonacan , Mixe–Zoque , 일부 Oto-Manguean 언어 ) 에서도 사용 된다.

-네덜란드 의 소리를 나타내는 두 글자의 활용 (IJ)를 두 문자 I 및 문자 J는 COUNTRYNAME의 예를 들면, IJsland이다.

  • 영어로, 중간 대문자는 일반적으로 스코틀랜드 또는 아일랜드어 "Mac-"또는 "Mc-"이름에서만 발견된다.

예를 들어 MacDonald, McDonald 및 Macdonald 는 같은 이름의 일반적인 철자 변형이며 Anglo-Norman "Fitz- 예를 들어, FitzGerald 와 Fitzgerald 가 모두 있다.

음역

  • 다른 대본으로 작성된 언어의 학문적 음역에서도 비슷한 상황에서 중간 수도가 사용된다.

예를 들어 음역 히브리어 에서 ha ' I vri 는 "히브리인"또는 "유대인"을 의미 하고 b'Yerushalayim 은 "예루살렘"을 의미한다. 티베트어 와 같은 적절한 이름 rLobsang 은 "R"은 같은 기능 원래 스크립트에 접두사 문자 모양의 약자 톤 마커가 아닌 일반 문자이다. 또 다른 예는 ts I urku 이며, 중세 방어 타워 의 특징 인 캡핑 스톤에 대한 체첸 용어 의 라틴 전사리다. Chechenia 와 Ingushetia ; 여기서 대문자 " I " 는 "i"로 표기된 것과는 다른 음소 를 나타낸다.

약어

  • 중간 대문자는 전통적으로 약어로 사용되는데, 예를 들어 학술 제목 PhD 또는 BSc와 같이 단어를 완전히 쓰면 대문자가 사용된다.

독일어에서 법령의 이름은 포함 된 대문자를 사용하여 축약된다. (예 : 형사법의 경우 StGB (Strafgesetzbuch), 특허법의 PatG (Patentgesetz), 연방 헌법 재판소의 BVerfG (Bundesverfassungsgericht) ) 에 대한 유한 책임을 가진 회사 . 이러한 맥락에서, 예를 들어 Teilzeit- und Befristungsgesetz를위한 TzBfG에 3 개 이상의 "CamelCase"자본이있을 수있다 (파트 타임 및 기간제 활동). 프랑스어에서는 OuLiPo 와 같은 카멜 대소 문자(1960)는 초기주의의 대안으로 한동안 선호되었다.

  • 카멜 경우는 종종 두 글자는 예를 들어 원래 알파벳의 문자 하나, 표현하기 위해 요구 될 수있다 알파벳에 이니셜을 음역하는 데 사용됩니다 DShK 에서 키릴 ДШК이다.

강점

강력한 타입 시스템 parametric polymorphism을 구비하고 있다. 때문에 프로그램 작성에 있어서 용이한 부분이 많다. 또 사용자 정의 대수 데이터 유형 및 패턴이 매칭되며, 자동으로 메모리를 관리하는 기능도 제공한다. 독립 실행형 응용프로그램의 개별 컴파일이 가능하고, 정교한 모듈 시스템을 갖추고 있어서 프로그래머에게 편의성을 제공한다. 표현형 객체 지향 계층 언어이며, 효율적인 네이티브 코드 컴파일러를 제공한다.

역사

  • 카멜 언어는 1987년 프랑스 과학 기술원 인리아(INRIA)의 연구원에 의해 처음 만들어졌다. 이후 카멜에 객체지향, 모듈 시스템 등을 추가한 오카멜(OCaml)이 출시되었고, 카멜 언어를 경량화시켜 구현한 카멜 라이트(Caml Light)도 만들었으나 현재는 일반적으로 오카멜만 사용하고 있다.
  • 1970 년대 초 스몰 토크 이전의 BCPL 코드 (예 : BBN)에서 이러한 스타일의 단어 분리를 기억한다고 생각한다. -ChrisRyland

(상위) CamelCase 의 최초 상업적 예 는 1950 년대 " CinemaScope "필름 프로젝션 시스템이다. [6]

사용 전망

프로그래밍 및 코딩

주요 기사 : 명명 규칙 (프로그래밍) 많은 조직이나 소프트웨어 프로젝트 의 코딩 스타일 지침 에 따라 복합 식별자에 중간 캡을 사용하는 것이 좋다 . (예 : 일부 언어 메사 , 파스칼 , 모듈라 , 자바 와 마이크로 소프트 의 .NET 이러한 행위가) 언어 개발자 또는 권위 매뉴얼에서 권장하고있다. 그러므로 언어의 "문화"의 일부가 된다.

스타일 가이드 라인은 종종 대문자와 소문자 카멜을 구별하며 일반적으로 변수 , 레코드 필드 , 메소드 , 프로 시저 , 유형 등과 같은 특정 유형의 엔티티에 사용해야하는 다양성을 지정한다 . 이러한 규칙은 때때로 소스 코드를 확인 하는 정적 분석 도구에서 지원된다.

예를 들어, 프로그래밍에 대한 원래 헝가리어 표기법은 "사용 유형"(데이터 유형이 아님)에 대한 소문자 약어가 모든 변수 이름 앞에 접두사를 붙이고 나머지 이름은 대문자 카멜 문자로 지정한다. 따라서 그것은 카멜 사건의 한 형태이다.

프로그래밍 식별자에는 종종 "오래된 HTML 파일"과 같이 이미 대문자 로 된 머리 글자 어와 이니셜 리즘 이 포함되어야 한다 . 제목 대소 문자 규칙과 유사하게 자연적인 낙타 사례 렌더링은 모두 대문자로 된 "oldHTMLFile"이다. 그러나이 접근법은 두 약어가 함께 발생하는 경우 (예 : "parse DBM XML"이 "parseDBMXML"이 됨) 또는 표준이 낮은 카멜 경우를 지시하지만 이름이 약어로 시작하는 경우 (예 : "SQL 서버"가 "sQLServer가 되는 경우) 문제가 됩니다."). 이러한 이유로 일부 프로그래머는 약어를 소문자로 간주하고 "oldHtmlFile", "parseDbmXml"또는 "sqlServer"를 쓰는 것을 선호한다. 하지만, 이것은 주어진 단어가 약어로 인식된다는 것을 인식하기 어렵게 만들 수 있다.

위키 링크 마크 업

카멜 사례는 일부 위키 마크업 언어에서 다른 위키 페이지에 자동으로 링크되어야하는 용어에 사용된다. 이 컨벤션은 원래 워드 커닝햄(Ward Cunningham)의 원래 위키 소프트웨어 인 위키위키웹(WikiWikiWeb)에서 사용되었으며 대부분의 다른 위키에서 활성화될 수 있다. TiddlyWiki , Trac 및 PmWiki 와 같은 일부 위키 엔진은 기본 설정에서 이를 사용하지만 일반적으로 사용하지 않도록 구성 메커니즘 또는 플러그인을 제공한다. 위키피디아(Wikipedia)는 이전에는 카멜 케이스 링크를 사용했지만 대괄호를 사용하여 명시적 링크 마크업으로 전환했다. 그리고 다른 많은 위키 사이트도 마찬가지이다. 카멜케이스 링크를 사용하지 않는 일부 위키에서는 AboutUs와 같은 이름 지정 규칙으로 카멜케이스를 계속 사용할 수 있다.

다른 용도

NIEM의 레지스트리 것을 요구 XML의 데이터 요소가 상위 카멜 케이스를 사용하고 XML 속성이 낮은 카멜 케이스를 사용한다.

가장 많이 사용되는 명령 행 인터페이스스크립팅 언어는 공백이 포함 된 파일 이름을 쉽게 처리할 수 ​​없다 (일반적으로 이름을 따옴표로 묶어야 함). 따라서 이러한 시스템의 사용자는 종종 MyJobResume.pdf 와 같은 복합 파일 이름에 대해 카멜 케이스 (또는 밑줄, 하이픈 및 기타 "안전한"문자)를 사용한다 .

메시지의 문자 수를 제한하는 마이크로 블로그 및 소셜 네트워킹 사이트는 중간 자본의 잠재적 출구다. 단어 사이에 카멜 문자를 사용하면 주어진 메시지에서 공백 수와 문자 수가 줄어들어 제한된 공간에 더 많은 내용을 넣을 수 있다. 해시태그 , 특히 긴 해시태그는 종종 가독성을 유지하기 위해 카멜 케이스를 사용한다. (예 : #collegestudentproblems가 #collegestudentproblems보다 읽기 쉽다).[7]

각주

  1. Caml, "caml", Caml language home, 2018-11-16
  2. 위키, 〈카멜 케이스
  3. 위키백과, 〈[1]
  4. sibalja, 〈카멜표기법이란 무엇인가?〉, 프로그래밍 관련, 2016-05-16
  5. 위키, 〈카멜 케이스
  6. 위키, 〈카멜 케이스
  7. "https://en.wikipedia.org/wiki/Camel_case Camel case]", Wikipedia

참고자료

같이 보기


  검수요청.png검수요청.png 이 카멜 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.