999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談TCL(Tool Command Language)語言

2019-10-21 07:31:29劉嘉明
科學與財富 2019年7期

劉嘉明

摘 要:關于TCL語言,想必很多人都沒有聽說過,在語言中被大家熟知的就是出名的C語言,C++,C#,java語言,還有最近很流行的python人工智能語言。但是本文就拿出一個算是很古老的T語言,其實T語言的應用很廣,用于控制工具,在一些測試下經常用到,但是現在python的出現打破了T語言在其領域的地位。本文淺談TCL語言及一些控件,都是本人在學習T語言和python中的一點拙見。

關鍵詞:TCL;工具控制;TK控件

一、TCL的起源與發展

要談論一個語言就要先知道這個語言的來歷,就像我們學習C語言的時候,老師也會和我們說C語言的來源,演變過程,進化與完善。

Tcl 是“工具控制語言(Tool Command Language)”的縮寫。Tk 是 Tcl“圖形工具箱”的擴展,它提供各種標準的 GUI 接口項,以利于迅速進行高級應用程序開發。

John K. Ousterhout于 1988 年開始開發 Tcl/Tk(讀作“tickle tee-kay”),當時其是加州大學伯克利分校(UCB)的教授。Tcl 是以可擴展性、短的學習曲線和易于嵌入為特定目標而設計的。Tk 的開發始于 1989 年,第一個版本于 1991 年問世。

TCL語言簡單易懂,功能強大,常用于快速原型的開發,GUI,腳本,和測試。從測試行業接觸TCL,由于python的流行,發現tcl語言也在被取代。

就此說說我在TCL學習中的一些見解。探討有沒有學習TCL的必要性。

二、TCL語言到底是什么

TCL語言也常被稱:腳本語言,TCL語言其實包括兩部分:語言部分和庫部分。

(1)TCL語言的腳本部分

腳本部分可以理解就是語言的命令部分:就比如:set a 10;puts $a;相當與c語言的

打印命令:int a 10;printf(“%d”,a);就是通過發表命令給一些交互程序或者是一些文本編輯器,shell還要調試器。就比如C語言可以用程序寫文本文件,打開文本文件一樣。

TCL的語法簡易,和高可擴展性。

(2)TCL語言的庫部分

庫部分其實可以理解為庫函數包,而tcl的庫中含有一個腳本分析器來執行腳本命令過程,也可以通過腳本解析創建新的過程,用于擴充函數。這個庫能被嵌套應用程序,該程序可以產生腳本命令并執行過程。

(3)TCL交互界面

腳本命令可由用戶輸入,或者用戶接口中讀取,或者應用程序產生。實現多交互。內搭的腳本界面有tclsh和wish兩種界面,tclsh只支持tcl命令,wish能支持tcl和tk命令。

通過這些腳本交互界面可以直觀的了解語法的運行。逐一執行和得到結果,在創建過程時不打印結果。

(4)TCL/TK控件

TCL內置TK(toolkit)圖形工具,和python的可視化庫中含有的TK類似,能直觀的顯示出來,并且便于開發者開發一些新的交互界面使用。我們可以通過tk控件進行腳本的控制,也可以用輸入界面控制tk控件。

三、淺談TCL的語法

認識完tcl語言以后就來簡單說說語法。

每一種語言都有特定的語法規則,就比如英語有英語語法,數學有計算公式,計算機語言少不了的就是語法了,然而很多比如簡單的c語言有C語言語法,難的語法有java語法。當然tcl也不例外,也有屬于自己的語法。

(1)TCL編程語法和格式

Tcl語言語法簡單,因為tcl只有一種數據類型:字符串。在腳本編譯里只識別成字符串,并且用與存儲值。減少了變量類型的干擾。簡單的理解一下,要是學過C語言就知道,變量是一個缺少不了的東西,而在使用變量我們要先定義。比如說是:int var 100;定義了一個整形的var,在tcl里我們也需要先對用到的變量進行變量聲明和初始化,但是tcl里的變量沒有類型區分,因為它只有一個類型——字符串。所有的變量我們都可以用set 來定義,就像:set var 100;這里的100是字符串,但是你通過解析器運算的話,自動識別成整形,浮點等,就比如:expr $var+100;結果200。在這里注意$符,在tcl里運用普遍就是相當于傳參的東西。具體的語法還是要求從手冊里學習。里面很多符號運算的規則,但是理解起來很方便。

TCL編程有固定的編程格式,就比如c語言也有格式一樣,分號,反斜杠,這一類符號分運用也有特殊規定。

(2)TK編程

TK圖像工具用起來方便簡潔,安裝wish內置TK控件庫。能夠直觀地方便的使用控件,不同于python的函數庫配置,而且python相對于難理解。

學習TCL的時候的感悟就是用起來很方便,但是功能卻一般。易上手難精通。

四、在學習中的一些體會

如果感覺有興趣不妨下載個wish85試試。在學習中偶爾一些大膽的想法,但是卻很難實現。

鄧拓說過:任何科學的結論都不應該永恒不變的。

語言的精妙之處在于它的可開發性,可它的可用性。現在的語言種類繁多,但是離不開共同的特點就是語言的語法精髓,在學習 TCL發現語法類似C語言,而python是C語言的進化。這幾種語言都有其共通之處。

大學剛開始學c語言的時候,覺得printf打印字符都很厲害,但是接觸語言以后發現語言并不只是這樣,就和學習TCL一樣的,最開是的歷程總是叫我們打印一串字符。

在c語言中指針相對來說比較難的,因為涉及到的是變量的傳輸,指針指向。但是學習TCL的時候沒有發現指針這東西了,這對于剛學習語言的人來說很不錯。Tcl的參數傳輸都是考字符串的,變量總是在字符串上,所以就有參數的傳輸問題,早段時間在學習html的時候也遇到類似的參數傳輸問題,但是傳輸方式不一樣。

我的體會就是:在tcl里面區分好全局變量和局部變量就差不多了,但是還有個上一個全局值與當前全局取值的問題,我在學習的時候在這吃到了不少苦頭。總是取到上一個計算值。我覺得這是初學者應該考慮的問題。我的辦法就是通過局部變量釋放全局的上一個值。

學習一種語言沒有可以少走的路。

五、總結

TCL腳本語言簡單方便,也容易學習入手,但是精通的確要花時間。但是在慢慢落后的語言我覺得也值得去學習。畢竟開發的沒有限度,在論壇上,博客上,網頁上找到關于tcl的都是熟悉的電視機品牌。Wish也在更新,要是劈開利益,單看學習還是很值得去探索一下的,弄一個腳本論壇,腳本比拼。這種學術交流也能提高自己的思維和發現其他語言的思路。但是在應用上還是要跟潮流,畢竟python的流行也不是憑空產生的。語言都有自己的優點。

要是覺得自己有時間還是可以接觸一下每種語言,比較一下語言的特點。

在博客上的大佬們都是掌握多種語言的,c,c#,c++,java,python,html,js……或者不全會至少了解。

正所謂:金無足赤,人無完人。學多者多學,不學者無術。

Eg: set learning_is_happy “學習是件快樂的事”

Button .button –text “$learning_is_happy”-command [list learn .button]

Proc learn .button {

Global learning_is_happy

Puts $learning_is_happy

}

Grid .button

Console show

##按鈕顯示###(復雜寫法可以演變)

參考文獻:

[1]TCL編程初步.pdf.

[2]Tcl/tk入門經典.

主站蜘蛛池模板: 99爱视频精品免视看| 2022国产无码在线| 国产成人高清精品免费软件| 久久国产精品电影| 手机在线国产精品| 欧美另类第一页| 亚洲国产成人超福利久久精品| 亚洲成人77777| 欧美日韩v| 久久精品无码专区免费| 91精品亚洲| 成年午夜精品久久精品| 亚洲无码在线午夜电影| 亚洲视频二| 亚洲日韩AV无码一区二区三区人| 亚洲热线99精品视频| 国产精品3p视频| 日本AⅤ精品一区二区三区日| 精品视频福利| 一级毛片不卡片免费观看| a级毛片免费网站| 青青青草国产| 干中文字幕| 伊人久久大线影院首页| 亚洲av无码久久无遮挡| 亚洲最黄视频| 欧美视频在线第一页| 国产在线八区| 国产成人综合久久精品尤物| 久久狠狠色噜噜狠狠狠狠97视色 | 青青久视频| 欧美日本在线观看| 色欲色欲久久综合网| 久久人人爽人人爽人人片aV东京热| 被公侵犯人妻少妇一区二区三区| 亚洲综合二区| 日本久久久久久免费网络| 91小视频在线观看| 国产综合亚洲欧洲区精品无码| 日本免费福利视频| AV天堂资源福利在线观看| 一区二区日韩国产精久久| 青青青视频免费一区二区| 欧美丝袜高跟鞋一区二区| 国产欧美日韩另类| 亚洲中文字幕精品| 国产剧情国内精品原创| 国产1区2区在线观看| 99激情网| 污网站在线观看视频| 综合久久五月天| 天堂在线www网亚洲| 亚洲嫩模喷白浆| 精品国产网站| 亚洲日韩AV无码一区二区三区人 | 国产成人综合日韩精品无码首页| 免费人成视网站在线不卡| 精品国产一区91在线| 黄色成年视频| 久久99热66这里只有精品一| 成人福利在线看| 亚洲精品视频免费看| 国产成人三级| 91久久夜色精品国产网站| 国产v欧美v日韩v综合精品| 亚洲天堂日韩在线| 久久综合伊人 六十路| 99视频只有精品| 亚洲第一成年网| 亚洲精品无码日韩国产不卡| 亚洲人成网站色7799在线播放| 国产成人啪视频一区二区三区| 中文毛片无遮挡播放免费| 亚洲熟女中文字幕男人总站| 综1合AV在线播放| 中文字幕乱码二三区免费| 日韩性网站| 国产精品一区在线观看你懂的| 国产成人精品日本亚洲| 亚洲AV无码乱码在线观看裸奔| 国产高清自拍视频| 91亚洲视频下载|