首頁 >後端開發 >PHP問題 >php是靜態語言嗎

php是靜態語言嗎

(*-*)浩
(*-*)浩原創
2019-09-18 10:42:335307瀏覽

php是靜態語言嗎

動態語言

動態類型語言的優點:(推薦學習:PHP程式設計從入門到精通

是寫的程式碼數量更少,看起來也更簡潔,程式設計師可以把精力更放在業務邏輯上面。雖然不區分類型在某些情況下會讓程式變得難以理解,但整體而言,程式碼量越少,越專注於邏輯表達,對閱讀程式是越有幫助的。

動態類型語言的缺點:

是無法保證變數的類型,從而在程式的運行期間有可能發生跟類型相關的錯誤。

動態類型語言對變數類型的寬容為實際編碼帶來了很大的靈活性。由於無需進行類型檢測,我們可以嘗試呼叫任何物件的任意方法,而無需去考慮它原本是否被設計為擁有該方法。

是一類在運行時可以改變其結構的語言:例如新的函數、物件、甚至程式碼可以引進,現有的函數可以被刪除或是其他結構上的變化。通俗點說就是在運行時程式碼可以根據某些條件改變自身結構。

主要動態語言:Object-C、C#、JavaScript、PHP、Python、Erlang。

靜態語言

靜態型別語言的優點:

首先是在編譯時就能發現型別不匹配的錯誤,編輯器可以幫助我們提前避免程式在運行期間有可能發生的一些錯誤。其次,如果在程式中明確地規定了資料類型,編譯器還可以針對這些資訊對程式進行一些最佳化工作,提高程式執行速度。

靜態類型語言的缺點:

首先是迫使程式設計師依照強契約來寫程序,為每個變數規定資料類型,歸根究底只是輔助我們寫可靠性高程式的一種手段,而不是編寫程式的目的,畢竟大部分人編寫程式的目的是為了完成需求交付生產。其次,類型的聲明也會增加更多的程式碼,在程式編寫過程中,這些細節會讓程式設計師的精力從思考業務邏輯上分散開來。

與動態語言相對應的,執行時期結構不可變的語言就是靜態語言。如Java、C、C 。

有三個名詞容易混淆:

Dynamic Programming Language (動態語言或動態程式語言)

Dynamically Typed Language (動態類型語言)

Statically Typed Language (靜態類型語言)

#動態型別語言與靜態型別語言

動態型別語言

動態型別語言和動態語言是完全不同的兩個概念。

動態類型語言:是指在運行期間才去做資料類型檢查的語言,說的是資料類型,

動態語言:說的是運行是改變結構,說的是程式碼結構。

動態類型語言的資料型別不是在編譯階段決定的,而是把型別綁定延後到了執行階段。

主要語言:Python、Ruby、Erlang、JavaScript、swift、PHP、Perl。

靜態類型語言

靜態語言的資料類型是在編譯期間(或執行之前)確定的,編寫程式碼的時候要明確確定變數的資料類型。

主要語言:C、C 、C#、Java、Object-C

以上是php是靜態語言嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn