阿摩線上測驗 登入

申論題資訊

試卷:100年 - 100 關務特種考試_四等_資訊處理:程式語言概要#27097
科目:程式語言
年份:100年
排序:0

題組內容

二、程式語言通常要求等號(assignment, =或:=)左右兩邊需要有相同的資料型態,檢查 資料型態是否相同的方法可分為靜態(static)和動態(dynamic)兩種方式,針對 以下敘述,判斷那些是對的?那些是錯的?並簡單說明其理由。(只有答案者不計 分)(20 分)

申論題內容

⑴動態核對資料型態會使我們撰寫的程式執行起來更有效率。

詳解 (共 2 筆)

詳解 提供者:114年高考上榜

這個說法是錯誤的。

 
動態核對資料型別(Dynamic type checking)是指在執行時檢查變數的資料型別,以確定操作是否有效。相反,靜態資料型別(Static type)是指在編譯時檢查變數的資料型別,以確保在運行時不會發生錯誤。
 
儘管動態核對資料型別提供了一定程度的靈活性,但它通常需要在運行時進行額外的檢查,這可能會導致程式執行速度變慢。此外,因為在運行時才進行檢查,因此錯誤可能會延遲到執行期間才被發現,這使得錯誤更難以調試和修復。
 
相比之下,靜態資料型別在編譯時就能發現大部分資料型別不一致的問題,從而提高了程式碼的可靠性和效率。
詳解 提供者:hchungw
⑴ 動態核對資料型態會使我們撰寫的程式執行起來更有效率。
錯誤
理由:動態核對資料型態(dynamic type checking)是在程式執行時期進行的,這會增加運行時的開銷,因為每次賦值操作都需要檢查資料型態是否匹配。相比之下,靜態核對資料型態(static type checking)是在編譯時期進行的,這意味著所有的型態檢查在編譯時已經完成,避免了執行時期的檢查開銷,通常會使程式執行得更高效。
⑵ 靜態核對資料型態在程式執行之前完成。
正確
理由:靜態型態檢查是在編譯時期進行的,這意味著在程式執行之前,編譯器會檢查所有變數的型態是否匹配,確保程式的型態安全性。這樣可以在程式執行之前捕獲型態錯誤,避免執行時期的型態錯誤。
⑶ 靜態核對資料型態的語言比動態核對資料型態的語言更易於偵錯。
正確
理由:靜態型態檢查可以在編譯時期捕捉到型態錯誤,這使得開發者可以在程式執行之前發現並修正這些錯誤。這樣可以減少執行時期的錯誤,通常更易於偵錯。動態型態檢查是在程式執行時期進行的,因此型態錯誤可能會在程式執行過程中才顯現出來,這可能使得偵錯更加困難。
⑷ 動態核對資料型態可避免程式在執行時發生型態錯誤。
錯誤
理由:動態型態檢查並不能避免型態錯誤,它只是將型態檢查延遲到執行時期進行。當發生型態錯誤時,程式會在執行過程中拋出錯誤或異常。動態型態檢查可以在程式執行過程中捕獲這些錯誤,但並不能預防它們的發生。
⑸ 動態核對資料型態的程式語言較能靈活地處理不同型態的資料。
正確
理由:動態型態檢查的程式語言通常允許更靈活的型態操作,例如在 Python 或 JavaScript 中,變數的型態可以在程式執行過程中改變。這種靈活性使得開發者可以更加靈活地處理不同型態的資料,適應性更強。然而,這種靈活性也可能增加程式錯誤的風險,因為型態錯誤在編譯時期不會被發現。
總結
⑴ 錯誤 - 動態核對資料型態增加了執行時的開銷。
⑵ 正確 - 靜態核對資料型態在程式執行之前完成。
⑶ 正確 - 靜態核對資料型態使得程式更易於偵錯。
⑷ 錯誤 - 動態核對資料型態不能避免型態錯誤,只是延遲檢查。
⑸ 正確 - 動態核對資料型態的程式語言通常更靈活地處理不同型態的資料。