DC 欄位 |
值 |
語言 |
DC.contributor | 資訊工程學系 | zh_TW |
DC.creator | 林欣蓓 | zh_TW |
DC.creator | Xin-Bei Lin | en_US |
dc.date.accessioned | 2024-7-27T07:39:07Z | |
dc.date.available | 2024-7-27T07:39:07Z | |
dc.date.issued | 2024 | |
dc.identifier.uri | http://ir.lib.ncu.edu.tw:444/thesis/view_etd.asp?URN=111522080 | |
dc.contributor.department | 資訊工程學系 | zh_TW |
DC.description | 國立中央大學 | zh_TW |
DC.description | National Central University | en_US |
dc.description.abstract | 在當前軟體開發的環境中,對於擴充現有應用程式功能的需求日益增加。傳統的擴充方法,如應用程式介面(API)、擴充套件(Extension)及外掛程式(Plugin),雖然在某些情況下有效,但往往受限於原始開發商的技術支援,這一限制對於非開源軟體或資源有限的開發團隊尤其明顯。
針對此問題,我們提出了「Parasite Programming」技術,並為其開發「Parasite SDK」。此 SDK 採用了一種創新方法,無需修改原始碼或依賴傳統擴充方式,而是通過在目標應用程式的圖形使用者介面(GUI)上覆蓋透明視窗,實時追蹤並利用 UI 資訊進行功能擴充。然而,這一技術在開發過程中遇到了語言間的互操作性挑戰,原因在於其依賴於 Microsoft UI Automation(UIA)技術,該技術主要支援 C/C++ 及 C# 語言。
為了克服這一挑戰,本論文提出了一套跨語言支持的後端解決方案。此方案透過前後端分離的架構設計和利用 WebSocket 協定實現前後端間的高效通訊。目前已支援 TypeScript,未來計畫支援 JavaScript、Python 等廣泛使用的程式語言。這一解決方案不僅提升了開發效率,也顯著擴大了「Parasite SDK」的應用範圍,使其在多語言開發環境中顯示出更大的靈活性和強大的功能。 | zh_TW |
dc.description.abstract | In the current software development landscape, there is an increasing demand for enhancing the functionality of existing applications. Traditional extension methods, such as Application Programming Interfaces (APIs), extensions, and plugins, are effective in certain scenarios but are often limited by the technical support of the original developers. This limitation is particularly acute for non-open-source software or teams with limited resources.
To address this issue, we introduce ``Parasite Programming′′ and develop the ``Parasite SDK.′′ This SDK employs an innovative approach that does not require modifying the original code or relying on traditional expansion methods. Instead, it overlays transparent windows on the target application′s Graphical User Interface (GUI), enabling real-time tracking and utilization of UI information for feature extension. However, this technique has encountered challenges in language interoperability during its development, primarily due to its reliance on Microsoft UI Automation (UIA) technology, which predominantly supports C/C++ and C# languages.
To address this challenge, this thesis proposes a backend solution supporting multiple languages. This solution utilizes a decoupled front-end and back-end architectural design and employs the WebSocket protocol for efficient communication between them. It currently supports TypeScript, with plans to extend support to widely-used programming languages such as JavaScript and Python in the future. This solution not only enhances development efficiency but also significantly broadens the application scope of the ``Parasite SDK,′′ demonstrating greater flexibility and powerful capabilities in a multilingual development environment. | en_US |
DC.subject | 軟體擴充 | zh_TW |
DC.subject | 跨語言互操作性 | zh_TW |
DC.subject | Software Extension | en_US |
DC.subject | Cross-Language Interoperability | en_US |
DC.title | 實現 Parasite SDK 中跨語言支持的後端解決方案 | zh_TW |
dc.language.iso | zh-TW | zh-TW |
DC.type | 博碩士論文 | zh_TW |
DC.type | thesis | en_US |
DC.publisher | National Central University | en_US |