IT男的基礎之路

靜態(tài)語言和動態(tài)語言

基本概念

靜態(tài)語言(強類型語言)

靜態(tài)語言是在編譯時變量的數(shù)據(jù)類型即可確定的語言,多數(shù)靜態(tài)類型語言要求在使用變量之前必須聲明數(shù)據(jù)類型。
例如:C++、Java、Delphi、C#等。

動態(tài)語言(弱類型語言)

動態(tài)語言是在運行時確定數(shù)據(jù)類型的語言。變量使用之前不需要類型聲明,通常變量的類型是被賦值的那個值的類型。
例如PHP/ASP/Ruby/Python/Perl/ABAP/SQL/JavaScript/Unix Shell等等。

強類型定義語言

強制數(shù)據(jù)類型定義的語言。也就是說,一旦一個變量被指定了某個數(shù)據(jù)類型,如果不經(jīng)過強制轉(zhuǎn)換,那么它就永遠是這個數(shù)據(jù)類型了。舉個例子:如果你定義了一個整型變量a,那么程序根本不可能將a當作字符串類型處理。強類型定義語言是類型安全的語言。

弱類型定義語言

數(shù)據(jù)類型可以被忽略的語言。它與強類型定義語言相反, 一個變量可以賦不同數(shù)據(jù)類型的值。強類型定義語言在速度上可能略遜色于弱類型定義語言,但是強類型定義語言帶來的嚴謹性能夠有效的避免許多錯誤。

兩者區(qū)別

特性

強類型語言是一旦變量的類型被確定,就不能轉(zhuǎn)化的語言。
弱類型語言則反之,一個變量的類型是由其應用上下文確定的。

靜態(tài)語言的優(yōu)勢

1、由于類型的強制聲明,使得IDE有很強的代碼感知能力,故,在實現(xiàn)復雜的業(yè)務邏輯、開發(fā)大型商業(yè)系統(tǒng)、以及那些生命周期很長的應用中,依托IDE對系統(tǒng)的開發(fā)很有保障;
2、由于靜態(tài)語言相對比較封閉,使得第三方開發(fā)包對代碼的侵害性可以降到最低;

動態(tài)語言的優(yōu)勢

1、思維不受束縛,可以任意發(fā)揮,把更多的精力放在產(chǎn)品本身上;
2、集中思考業(yè)務邏輯實現(xiàn),思考過程即實現(xiàn)過程;

計算機網(wǎng)絡

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容