English  |  正體中文  |  简体中文  |  全文筆數/總筆數 : 80990/80990 (100%)
造訪人次 : 41636090      線上人數 : 1099
RC Version 7.0 © Powered By DSPACE, MIT. Enhanced by NTU Library IR team.
搜尋範圍 查詢小技巧:
  • 您可在西文檢索詞彙前後加上"雙引號",以獲取較精準的檢索結果
  • 若欲以作者姓名搜尋,建議至進階搜尋限定作者欄位,可獲得較完整資料
  • 進階搜尋


    請使用永久網址來引用或連結此文件: http://ir.lib.ncu.edu.tw/handle/987654321/93351


    題名: 基於 Python 型別提示檢查不可變性;Checking Immutability using Python Type Hints
    作者: 林右展;Lin, You-Zhan
    貢獻者: 資訊工程學系
    關鍵詞: 不可變性;型別提示;靜態分析;Python;Immutability;Type Hints;Static Analysis;Python
    日期: 2023-07-28
    上傳時間: 2024-09-19 16:55:20 (UTC+8)
    出版者: 國立中央大學
    摘要: 程式語言在不可變性的支援對程式開發流程相當有幫助,特別是對指令式的物件導向程式語言來說。
    透過不可變性限制物件的狀態,不僅能更容易理解程式的執行流程,若使用適當,更能減少程式開發過程中尋找與去除程式錯誤的時間。
    對於不可變性支援程度較低的程式語言,過去有許多研究在該語言的型別或注釋系統上加入新的型別或注釋,藉此標記變數、函式、類別等結構的不可變性。
    Python 雖已支援部分不可變類別的建立方式與不可變型別提示的使用,但仍存在一些使用上的不容易。

    因此本研究在 Python 中加入一個新的型別提示 Frozen。
    透過將 Frozen 標記在變數、參數、屬性等名稱上,便可以使用靜態檢查工具來檢測這些變數是否被用於修改其對應的物件。
    這樣做可以提升程式的正確性、加速錯誤的排除,從而使程式開發流程更加順暢。;Language supports for immutability in programming languages can benefit the software development process,
    especially in imperative object-oriented programming languages.
    By enforcing immutability and restricting the modification of objects′ states,
    it becomes easier to understand the program′s execution flow.
    When used appropriately, immutability can also reduce the time spent on finding and fixing program errors.
    For programming languages with limited support for immutability,
    there has been research in the past on introducing new types or annotations within the language′s type or annotation system.
    These additions aim to mark the immutability of variables, functions, classes, and other structures.
    Although Python already supports the creation of immutable classes and the type hints of partial immutable types,
    there are still some challenges in practice that make it less straightforward.

    Therefore, this research introduces a new type hint in Python called "Frozen."
    By applying the "Frozen" to variables, parameters, attributes, and other identifiers, static analysis tools can be used to detect
    if these variables are used to modify their corresponding objects.
    This approach makes the software development process smoother.
    顯示於類別:[資訊工程研究所] 博碩士論文

    文件中的檔案:

    檔案 描述 大小格式瀏覽次數
    index.html0KbHTML11檢視/開啟


    在NCUIR中所有的資料項目都受到原著作權保護.

    社群 sharing

    ::: Copyright National Central University. | 國立中央大學圖書館版權所有 | 收藏本站 | 設為首頁 | 最佳瀏覽畫面: 1024*768 | 建站日期:8-24-2009 :::
    DSpace Software Copyright © 2002-2004  MIT &  Hewlett-Packard  /   Enhanced by   NTU Library IR team Copyright ©   - 隱私權政策聲明