Repository logo
  • English
  • 中文
Log In
Have you forgotten your password?
  1. Home
  2. College of Electrical Engineering and Computer Science / 電機資訊學院
  3. Computer Science and Information Engineering / 資訊工程學系
  4. A Light-weighted Approach for Java Language Plug-in
 
  • Details

A Light-weighted Approach for Java Language Plug-in

Date Issued
2007
Date
2007
Author(s)
Chang, Jia-Fu
DOI
en-US
URI
http://ntur.lib.ntu.edu.tw//handle/246246/53957
Abstract
 To make Java language powerful, we add new features into Java language. Because Java is open source, developers who are familiar with Java technique can modify the compiler, grammar, ClassFileFormat or virtual machine depending on require.  There are two problems existing if we modify the core technique of Java. First, it has high thresholds, because it is hard to translate an idea into a language feature for general programmers. Second, it loses the spirit of “write once, run anywhere”.  In order to avoid this disappearance, this discourse offers a light-weighted strategy which has lower threshold. And we implement an approach according with the light-weighted design. What is called a light-weighted strategy means that we design a plug-in structure but not change the core technique of Java, such as Javac and VM. Plug-in structure is that the position where new features exist is independent of standard Java structure. It is an optional mechanism depending on user’s requirement  The way we choose is to add new features on Javac Traditionally we modify directly Javac to get new Javac with new features. Now we design a plug-in outside Javac, but we can regard them as new Javac in the meaning.  Light-weighted structure needs the implementation to prove, and one of methods is to modify bytecode. Plug-in can be viewed as another compiler. In other words, plug-in is also a part of Javac in the meaning. We take advantage of ClassReader and ClassWriter classes in Javac to access bytecode, and modify bytecode by rules on annotations.  An annotation is a kind of new feature in Java; it is a way of adding metadata to Java source code that can also be available to the programmer at run-time. Many times it is used as an alternative to XML technology.  We offer an implementation which accords with light-weighted structure. First, we read bytecode into internal representation using ClassReader. Then, we modify the internal representation by rules on annotations, because annotations can keep user’s information in bytecode.    Finally, we transform internal representation into bytecode using ClassWriter.  We regard annotations as syntaxes of new features, and final bytecode has new features indeed. So, we can claim that Java language has new features by plug-in.  Finally, we implement properties feature of C# to Java language using the light-weighted structure we offered.
Subjects
爪哇
語言新功能
外掛
注釋
二進位表示法
注釋處理工具
爪哇編譯器
Java
new feature
plug-in
annotation
bytecode
apt
Javac
Type
thesis
File(s)
Loading...
Thumbnail Image
Name

ntu-96-R94922064-1.pdf

Size

23.31 KB

Format

Adobe PDF

Checksum

(MD5):1a2d74dfc9f7626646590a16fbdcf827

臺大位居世界頂尖大學之列,為永久珍藏及向國際展現本校豐碩的研究成果及學術能量,圖書館整合機構典藏(NTUR)與學術庫(AH)不同功能平台,成為臺大學術典藏NTU scholars。期能整合研究能量、促進交流合作、保存學術產出、推廣研究成果。

To permanently archive and promote researcher profiles and scholarly works, Library integrates the services of “NTU Repository” with “Academic Hub” to form NTU Scholars.

總館學科館員 (Main Library)
醫學圖書館學科館員 (Medical Library)
社會科學院辜振甫紀念圖書館學科館員 (Social Sciences Library)

開放取用是從使用者角度提升資訊取用性的社會運動,應用在學術研究上是透過將研究著作公開供使用者自由取閱,以促進學術傳播及因應期刊訂購費用逐年攀升。同時可加速研究發展、提升研究影響力,NTU Scholars即為本校的開放取用典藏(OA Archive)平台。(點選深入了解OA)

  • 請確認所上傳的全文是原創的內容,若該文件包含部分內容的版權非匯入者所有,或由第三方贊助與合作完成,請確認該版權所有者及第三方同意提供此授權。
    Please represent that the submission is your original work, and that you have the right to grant the rights to upload.
  • 若欲上傳已出版的全文電子檔,可使用Open policy finder網站查詢,以確認出版單位之版權政策。
    Please use Open policy finder to find a summary of permissions that are normally given as part of each publisher's copyright transfer agreement.
  • 網站簡介 (Quickstart Guide)
  • 使用手冊 (Instruction Manual)
  • 線上預約服務 (Booking Service)
  • 方案一:臺灣大學計算機中心帳號登入
    (With C&INC Email Account)
  • 方案二:ORCID帳號登入 (With ORCID)
  • 方案一:定期更新ORCID者,以ID匯入 (Search for identifier (ORCID))
  • 方案二:自行建檔 (Default mode Submission)
  • 方案三:學科館員協助匯入 (Email worklist to subject librarians)

Built with DSpace-CRIS software - Extension maintained and optimized by 4Science