Tcl 프로그래밍 예제, 튜토리얼 및 기타

폭로: 귀하의 지원은 사이트 운영을 유지하는 데 도움이됩니다! 이 페이지에서 권장하는 일부 서비스에 대한 추천 수수료가 발생합니다.


Tcl 또는 “도구 명령 언어”(및 “Tickle”이라고 발음)는 1980 년대 후반에 처음 개발 된 동적 형식의 스크립팅 언어입니다. 프로토 타이핑 및 임베디드 시스템에 종종 사용되지만 본격적인 응용 프로그램에 충분히 사용할 수 있습니다. Lisp의 영향을 받았으며 Lisp와 유사합니다..

Tk는 밀접하게 관련된 GUI 도구 키트입니다. Tcl의 확장이지만 다른 여러 언어와 함께 사용할 수 있습니다..

Tcl과 Tk는 동일한 프로그래머에 의해 만들어졌으며 마치 단일 도구의 구성 요소 인 것처럼 자주 사용됩니다. 그들은 심지어 버전 번호를 공유합니다. 함께 “Tcl / Tk”라고하며 빠른 개발을위한 강력한 기술입니다..

Tcl 언어에 대하여

Tcl은 흥미로운 언어입니다. 다른 프로그래밍 언어와 비교할 때 다소 특이한 기능이 있습니다..

Tcl에는 예약어나 제어 구조가 없습니다. “for”및 “if”와 같은 제어 구조는 실제로 명령입니다. Tcl의 명령을 재정의하거나 재정의 할 수 있으므로 프로그래머는 문자 그대로 프로그램에서 “for”(또는 다른 언어 구성)의 의미를 변경할 수 있습니다. 이것은 일반적으로 권장되지 않지만 매우 강력합니다..

Tcl의 모든 데이터 유형은 중요한 방식으로 문자열이기 때문에 문자열로 취급 될 수 있습니다. 소스 코드조차 문자열로 조작 할 수 있습니다. 정수 2와 문자열 "2" 같은 값입니다. 그렇다고 모든 변수가 항상 문자열로 취급되어야한다는 의미는 아닙니다. 값 2는 정수에 의미있는 명령에 인수로 전달 될 때 정수입니다. 만약 "여보세요" 인수를 정수처럼 취급하는 명령에 전달되면 결과는 말이되지 않거나 오류가됩니다. 올바른 값이 인수로 전달되는지 확인하는 것은 프로그래머의 책임입니다..

이것은 Tcl 값이 기본적으로 다형성이라는 것을 의미합니다. 또한 다른 데이터와 마찬가지로 코드를 생성, 검사 및 조작 할 수 있습니다. 이러한 기능은 강력한 내부 검사 및 메타 프로그래밍 기술을 가능하게합니다..

통사론

언어의 구문은 매우 간단하며 Bash 스크립팅 언어와 유사합니다. 공백으로 구분 된 하나 이상의 인수가 뒤에 오는 비공식 명령입니다. 중괄호는 공백을 포함해야하는 인수를 설정하는 데 사용됩니다 (즉, 중괄호 안에 공백은 단어 구분 기호가 아닙니다).

# 이것은 주석입니다. 주석은 해시 기호로 시작합니다.

# 단어를 인쇄하는 매우 간단한 명령 "여보세요"
안녕하세요

#하지만 우리가 말하고 싶다면 "안녕 세상"
{hello world}를 넣습니다.

쉘 스크립트와 마찬가지로 Tcl 스크립트는 단순히 일련의 단일 행 명령입니다. 인터프리터는 항상 첫 번째 행을 명령 이름으로 읽고 행의 각 추가 항목을 해당 명령의 인수로 취급합니다..

복잡하게 보이는 제어 구조조차도 이런 식으로 작동합니다. 다음을 고려하세요:

if {$ a == 1} {{{Hello, World}}} {{Goodbye, brune world! }}

호출되는 명령은 if입니다. 첫 번째 인수는 평가할 표현식입니다. 다음 인수는 첫 번째 인수가 true 인 경우 실행할 스크립트입니다. 마지막 인수는 첫 번째 인수가 사실이 아닌 경우 실행할 스크립트입니다..

물론 이것은 매우 기본적인 프로그래밍이지만 통역사가이 구문을 처리하는 방식은 흥미 롭습니다. 또한 표현식과 스크립트가 한 단어이면 중괄호가 필요하지 않습니다.

# 두 개의 새로운 절차를 만듭니다
proc hello {} {puts {안녕하세요, 세계! }}
proc goodbye {} {좋아, 잔인한 세상!}

중괄호없이 조건부
만약에 안녕 안녕이라면

중괄호와 함께 두 개의 추가 “그룹화”토큰이 있습니다 : 큰 따옴표와 대괄호.

큰 따옴표는 중괄호가 내용을 리터럴 문자열로 취급하는 반면 큰 따옴표는 변수를 보간한다는 점을 제외하고는 모든 것이 문자열이므로 큰 따옴표와 중괄호는 비슷합니다..

# 할당 "세계" 변수 a
세계를 설정

$ a를 넣는다
# 세계

{hello $ a}를 넣습니다.
# 안녕하세요 $ a

넣다 "안녕하세요 $ a"
# 안녕하세요 세계

대괄호는 명령 대체에 사용됩니다. 즉, 한 쌍의 대괄호의 내용은 먼저 인터프리터에 의해 평가 된 다음 반환 값이 명령 또는 인수로 행에 대체됩니다..

퍼팅 [expr {1 + 1}]
# 2

# 그냥 문자열을 반환하는 바보 같은 proc "넣다"
proc returns_puts {} {반품 풋}

# 반환 값이 명령이 됨
[returns_puts] [expr {1 + 1}]
# 2

또한 명령은 문자열 일 뿐이므로 변수 값은 명령 또는 전체 행일 수 있습니다..

# 문자열을 할당 "{이것은 문자열입니다}" foo
foo 설정 {puts {이것은 문자열입니다}}

$ foo
# 이것은 문자열입니다

$ foo를 넣습니다.
# {이것은 문자열입니다}

보다시피, Tcl은 매우 유연합니다.

Tcl 튜토리얼

  • 공식 Tcl 튜토리얼은 시작하기 가장 좋은 곳입니다.
  • 초보자를위한 Tcl Tutorial;
  • Tutorials Point의 Tcl / Tk Tutorial은 매우 체계적이며 온라인 인터프리터가 포함되어 있으므로 Tcl을 즉시 사용할 수 있습니다.
  • TCLWISE는 언어에 관한 책의 처음 9 장이며 온라인에서 무료로 이용할 수 있습니다.
  • Tcl의 프로그래밍은 유머 감각이있는 29 부로 구성된 비디오 과정입니다.
  • Tcl Tutref는 공식 Tcl 설명서에 대한 “이차 의견”으로 설계된 자습서 및 참조 안내서입니다.
  • 청소년을위한 Tcl은 젊은이들과 젊은이들이 Tcl을 사용하여 컴퓨터 게임을 만들도록 가르칩니다.
  • Tcl에 대한 가장 완전한 학습 과정을 찾고 있다면 공식 Tcl 위키에서 다음을 시도하십시오.
    • Tcl 시작;
    • 중간 Tcl;
    • 고급 Tcl.

Tcl / Tk에 관한 책

  • Welch and Jones의 Tcl and Tk 실무 프로그래밍 (2003)은 Tcl과 Tk에 대한 권위있는 교과서이며 다른 언어에서 온 숙련 된 프로그래머조차도 만족시킬 수있는 충분한 심층적 인 내용을 담고 있습니다.
  • Clif Flynt의 Tcl / Tk, Second Edition : Developer ‘s Guide (2003)는 툴링, 일반적으로 사용되는 확장 및 개발 관행에 대해 구체적으로 다루는 언어와 개발 생태계를 모두 다루는 매우 실용적인 책입니다.
  • Oesterhout과 Jones의 Tcl과 Tk Toolkit (2009)은 발명가가 공동 작성한 언어에 대한 결정적인 가이드입니다.
  • Bert Wheeler의 Tcl / Tk 8.5 프로그래밍 요리 책 (2011)은 Tcl / Tk 프로그래밍의 일반적인 문제에 대한 여러 가지 실용적인 솔루션을 제공합니다..

Tk — Tcl 용 GUI 도구 키트

Tcl이 인기를 얻은 데는 여러 가지 이유가 있지만 Tk가 가장 중요한 것일 수 있습니다. Tk는 짧다 ool케이그것. Tcl을 사용하여 그래픽 사용자 인터페이스 (GUI)를 쉽게 구축 할 수 있습니다..

Tk는 버튼, 입력 상자, 레이블, 다양한 유형의 선택기, 스크롤 막대 등과 같이 예상되는 모든 일반적인 데스크탑 요소와 함께 양식 기반 GUI를 생성하기위한 비교적 쉬운 명령 세트를 제공합니다. 이러한 요소는 위젯에 연결되는 실행 가능 코드와 함께 소스 코드에 지정됩니다 (예 : 버튼을 누를 때 어떤 기능을 실행해야하는지 또는 선택 메뉴의 옵션 목록이 나오는 위치). 구문이 다르지만 HTML / JS 응용 프로그램이나 양식으로 작업 한 적이 있다면이 프로세스에 익숙 할 것입니다..

Tk는 원래 Tcl을 발명 한 사람에 의해 Tcl의 확장으로 개발되었습니다. 그러나 Tcl은 수십 개의 언어로 된 프로그래머가 사용할 수있는 크로스 플랫폼 라이브러리가되었습니다. Tk는 1991 년에 공개적으로 출시되었고 Python의 Tkinter 모듈은 1994 년에 출시되었습니다. PerlTk는 그 직후에 나왔습니다..

Tcl / Tk 8.5 릴리스 이전에는 이러한 요소가 실제로 어떻게 보이는지 제어하는 ​​시각적 디자인이 하나뿐이었습니다. 이제 주요 운영 체제에 대한 테마가 있으므로 Tk로 빌드 된 애플리케이션이 실행중인 플랫폼에 고유하게 표시됩니다..

Tk를 처음 사용할 수있게되면서 데스크탑 GUI 응용 프로그램을 시작하고 실행하는 가장 쉽고 빠른 방법 중 하나였습니다. 처음에는 Tcl과 Unix에서만 사용할 수 있었지만 사용하기가 간단하여 시작되었습니다. 오늘날 우리가 이전보다 훨씬 더 많은 옵션이 있지만 Tk는 여전히 데스크톱 응용 프로그램을 신속하게 프로토 타이핑하고 개발하는 가장 효율적인 방법 중 하나입니다..

Tk 튜토리얼

위에서 언급 한 여러 Tcl 자습서에는 Tk에 대한 정보가 포함되어 있습니다. 구체적으로 다음에 초점.

  • 공식 시작 안내서는 시작하기에 정말 좋은 곳입니다. 모든 단계에는 Tcl, Ruby, Perl 및 Python에 대한 코드 샘플이 포함됩니다.
  • Tcl 언어와 함께 Tk를 사용하여 GUI 만들기 언어는 기본 프로그래밍 지식이있는 사용자를위한 다소 부수적 인 튜토리얼입니다. 같은 저자가 Perl을위한 Tk 튜토리얼을 썼습니다..
  • RubyLearning.com의 Ruby / Tk Tutorial은 Rubyists를 시작하기에 좋은 곳입니다.
  • Python의 Tk 구현은 표준 라이브러리의 일부이며 공식 Python 설명서는 유용한 자습서를 제공합니다.
  • 프로그래머가 아닌 Tcl / Tk 소개는 Tcl과 Tk에 대한 자습서이지만 Tk없이 Tcl을 사용하지 않는다는 기본 가정.

Tcl을 배워야합니까?

Tcl은 훌륭한 언어입니다. 인기가 절정에 달했지만 여전히 활발한 개발자 커뮤니티와 많은 Tcl 코드가 필요합니다..

더 중요한 것은 실제로 다릅니다. JavaScript에서 PHP로, Ruby에서 Python으로 옮겼다면 매우 유사한 개념적인 근거를 계속해서 읽습니다. 새로운 구문과 키워드를 배우고 있지만 새로운 사고 방식은 아닙니다.

Tcl은 Lisp 및 Erlang과 같은 몇 가지 언어 중 하나이며 실제로 프로그램 설계 방법에 대해 다른 방식으로 생각하게합니다. 실제 프로젝트에 사용하지 않더라도 학습에 시간을 투자 할 가치가 있습니다..

추가 자료 및 자료

코딩 및 개발과 관련된 추가 가이드, 자습서 및 인포 그래픽이 있습니다.

  • Perl Guide and Resources : Perl은 또 다른 강력하지만 전통적인 언어입니다. 더 찾아 봐.
  • Python 소개, 리소스 및 FAQ :이 강력한 해석 언어에 필요한 모든 정보를 얻으십시오..
  • Ruby on Rails 소개 :이 인기있는 프로그래밍 언어에 대한 모든 정보.

어떤 코드를 배워야합니까?

코딩해야 할 프로그래밍 언어에 대해 혼란 스러우십니까? 인포 그래픽, 어떤 코드를 배워야합니까?를 확인하십시오. 언어의 다양한 측면에 대해서만 논의 할뿐만 아니라“생활에 필요한 Java를 얼마만큼 돈을 벌 수 있을까요?”와 같은 중요한 질문에 답변합니다.

어떤 코드를 배워야합니까?
어떤 코드를 배워야합니까?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me