博碩士論文 110522089 完整後設資料紀錄

DC 欄位 語言
DC.contributor資訊工程學系zh_TW
DC.creator郭威zh_TW
DC.creatorWei Kuoen_US
dc.date.accessioned2023-7-20T07:39:07Z
dc.date.available2023-7-20T07:39:07Z
dc.date.issued2023
dc.identifier.urihttp://ir.lib.ncu.edu.tw:88/thesis/view_etd.asp?URN=110522089
dc.contributor.department資訊工程學系zh_TW
DC.description國立中央大學zh_TW
DC.descriptionNational Central Universityen_US
dc.description.abstract在物件導向語言的設計模式中,封裝性佔了不少重要的部分,但於 Java 語言中使用封裝性時,卻可能會發生表示暴露 (Representation Exposure) 問題,而該問題歸咎於 Java 語言本身沒有足夠提供所有權 (Ownership) 及不變性 (Immutability) 的特性,使得外部的參考可以非預期地修改物件內部資料,進而導致封裝性遭破壞。 因此本研究將提供一個擴充於 Java 上的所有權系統— SlimeJava,基於抽象語法樹建立的所有權系統,來實現深度複製及彈性別名,並透過標註 (Annotation) 來進行源對源 (Source-to-source) 轉換,協助程式設計者避免表示暴露問題發生。在提案與實作中,我們討論了該如何透過使用標註,實現所有權系統並為何能夠避免表示暴露問題發生,並在最後透過評估證明其可行性。zh_TW
dc.description.abstractIn the design patterns of object-oriented languages, encapsulation plays a significant role. However, when using encapsulation in the Java language, a problem known as "Representation Exposure" may arise. This problem can be attributed to Java′s lack of sufficient features for ownership and immutability, which allows external references to unexpectedly modify internal object data and thereby compromising encapsulation. To address this issue, this research proposes an extension for Java called "SlimeJava", which introduces an ownership system based on abstract syntax trees. SlimeJava implements deep copy and flexible alias, which utilizing annotations for source-to-source transformations to assist programmers in avoiding representation exposure. In the proposal and implementation, we discuss how to realize the ownership system through annotations and why it helps prevent representation exposure. Finally, the feasibility of the approach is demonstrated through evaluation.en_US
DC.subjectJavazh_TW
DC.subject表示暴露zh_TW
DC.subject不變性zh_TW
DC.subject所有權zh_TW
DC.subject封裝性zh_TW
DC.subject設計模式zh_TW
DC.subjectJavaen_US
DC.subjectRepresentation Exposureen_US
DC.subjectImmutabilityen_US
DC.subjectOwnershipen_US
DC.subjectEncapsulationen_US
DC.subjectDesign Patternen_US
DC.title基於抽象語法樹的深度複製及彈性別名之所有權系統解決 Java 表示暴露問題zh_TW
dc.language.isozh-TWzh-TW
DC.titleAST-Based Deep Copy and Flexible Alias Ownership System Resolves Java Representation Exposure Problemen_US
DC.type博碩士論文zh_TW
DC.typethesisen_US
DC.publisherNational Central Universityen_US

若有論文相關問題,請聯絡國立中央大學圖書館推廣服務組 TEL:(03)422-7151轉57407,或E-mail聯絡  - 隱私權政策聲明