diff --git a/中文/项目文档/IDEology文档/IDEology开发者文档.md b/中文/项目文档/IDEology文档/IDEology开发者文档.md index 2f15d98..756c04d 100644 --- a/中文/项目文档/IDEology文档/IDEology开发者文档.md +++ b/中文/项目文档/IDEology文档/IDEology开发者文档.md @@ -18,5 +18,6 @@ - [IDEology设计文档](IDEology设计文档.md) -![IDEology.svg](img/IDEology架构图.svg) +- IDEology架构图 +![IDEology架构图](img/IDEology架构图.svg) diff --git a/中文/项目文档/IDEology文档/IDEology设计文档.md b/中文/项目文档/IDEology文档/IDEology设计文档.md index 740abae..9abc84c 100644 --- a/中文/项目文档/IDEology文档/IDEology设计文档.md +++ b/中文/项目文档/IDEology文档/IDEology设计文档.md @@ -13,7 +13,7 @@ IDEology 采用JavaFX等现代技术,确保项目能够长期维护和持续 ### 国际研究现状 -国际上有许多集成开发环境(IDE),如Visual Studio、IntelliJ IDEA、Visual Studio Code、Eclipse、PyCharm、NetBeans 等。这些软件可以满足不同领域和项目的需求。 +国际上有许多集成开发环境(IDE),如 Visual Studio、IntelliJ IDEA、Visual Studio Code、Eclipse、PyCharm、NetBeans 等。这些软件可以满足不同领域和项目的需求。 ### 传统项目的不足 @@ -21,8 +21,7 @@ IDEology 采用JavaFX等现代技术,确保项目能够长期维护和持续 ### 本项目的研究内容和目标 - -本项目将使用微内核架构来开发一个全新的IDE,解决传统项目的不足,并且对JavaFX的开发提供额外的支持。 +本项目将使用微内核架构来开发一个全新的 IDE,解决传统项目的不足,并且对JavaFX的开发提供额外的支持。 ## 项目计划 @@ -32,21 +31,20 @@ IDEology 采用JavaFX等现代技术,确保项目能够长期维护和持续 ### v0.0.2 移植老项目 [JNotepad](https://gitee.com/jcnc-org/JNotepad) 的大部分功能,使用模块化重构项目。 -## 需求分析 +## 架构设计 +IDEology 采用微内核架构,主要分为用户模块、核心模块、IMC和微内核。 -IDEology 是一款综合性集成开发环境,用户层核心功能包括用户界面定制、文件管理、代码编辑、项目管理、调试、版本控制、构建和部署。 +![IDEology 架构图](img/IDEology架构图.svg) -IDEology 需要采用微内核架构,支持插件系统和多语言编程,注重性能和稳定性,同时提供自定义和扩展性。 +### 用户模块 +主要包含一些非必要的模块,包括 IDE 模块(IDE模块里面也包含很多模块,如代码编辑器模块等),内存管理模块,文件管理模块,网络模块,资源文件模块,插件模块,内存管理模块等。 -IDEology 需要提供文档和支持、跨平台运行,以及安全性保障,包括性能分析和监控工具。 +这个设计旨在实现IDE功能、有效管理内存资源、处理文件和网络通信、管理资源文件以及支持插件扩展。 -IDEology 旨在满足开发者在开发环境中的各种需求。 - - -### 用户模块分析 +这些模块是上层用户模块不是底层核心模块所以一个 IDEology 程序可以不包含这些模块而运行。 #### IDE模块 -IDE模块模块负责提供应用程序的IDE功能实现。 +负责提供应用程序的IDE功能实现。 - 用户界面:提供可定制的用户界面,包括主题、窗口布局和快捷键设置等。 @@ -72,7 +70,7 @@ IDE模块模块负责提供应用程序的IDE功能实现。 - 构建和部署:集成构建工具,方便用户构建和部署应用程序。 #### 内存管理模块 -内存管理模块负责管理应用程序的内存资源。 +负责管理应用程序的内存资源。 - 内存分配和释放: 管理应用程序的内存分配和释放,确保有效利用内存资源,避免内存泄漏和溢出。 @@ -83,7 +81,7 @@ IDE模块模块负责提供应用程序的IDE功能实现。 - 内存监控: 提供内存监控工具,以帮助开发者识别和解决内存相关问题。 #### 文件管理模块 -文件管理模块负责管理项目中的文件和文件夹。它需要考虑以下问题: +负责管理项目中的文件和文件夹。 - 文件浏览: 提供文件浏览器,允许用户轻松访问和浏览项目文件。 @@ -94,7 +92,7 @@ IDE模块模块负责提供应用程序的IDE功能实现。 - 版本控制整合: 集成版本控制系统,以便开发者可以轻松管理和跟踪文件版本。 #### 网络管理模块 -网络管理模块负责处理与网络通信相关的功能。 +负责处理与网络通信相关的功能。 - 网络连接: 提供网络连接管理,包括建立、维护和断开网络连接。 @@ -105,7 +103,7 @@ IDE模块模块负责提供应用程序的IDE功能实现。 - 网络安全: 考虑网络安全问题,如加密通信、身份验证和防止网络攻击。 #### 资源文件管理模块 -资源文件管理模块负责管理应用程序的资源文件,如图像、音频、文本文件等。 +负责管理应用程序的资源文件,如图像、音频、文本文件等。 - 资源加载: 提供资源加载和管理功能,以确保应用程序能够访问所需的资源。 @@ -117,12 +115,12 @@ IDE模块模块负责提供应用程序的IDE功能实现。 #### 插件模块 -插件模块负责管理应用程序的插件功能,如提供API、插件市场等。 +负责管理应用程序的插件功能,如提供API、插件市场等。 -- 插件API:提供丰富的插件API,使插件开发者可以轻松地与IDE的核心功能进行交互。这包括对编辑器、项目管理、调试器、文件管理等的访问。 +- 插件 API:提供丰富的插件 API,使插件开发者可以轻松地与IDE的核心功能进行交互。这包括对编辑器、项目管理、调试器、文件管理等的访问。 -- 插件生态系统:允许第三方开发者创建和发布插件,为IDE增加功能。 +- 插件生态系统:允许第三方开发者创建和发布插件,为 IDE 增加功能。 - 插件安全性:确保插件不会危害IDE的稳定性和安全性。 @@ -131,10 +129,12 @@ IDE模块模块负责提供应用程序的IDE功能实现。 - 插件市场:提供一个插件市场,使用户可以轻松查找、安装和更新插件。提供用户评价和反馈的功能。 -### 核心模块分析 +### 核心模块 +主要包含一些必要的模块,例如通用组件模块(包含UI组件模块和发工具模块), + #### 通用组件模块 -包括UI组件模块(如JavaFX),开发工具模块等重要功能模块。 +包括UI组件模块(如 JavaFX),开发工具模块等重要功能模块。 - UI组件模块:提供了与用户界面相关的功能,例如窗口、按钮、文本框等,封装了一些组件 @@ -142,16 +142,19 @@ IDE模块模块负责提供应用程序的IDE功能实现。 - 开发工具模块:提供开发时常用的工具。 -### IMC分析 -IMC (Inter Module Communication):是标准化的接口和通信协议,模块可以通过IMC调用来进行信息传递和功能调用(消息队列、共享对象、信号量)。 +### IMC +IMC (Inter Module Communication)提供标准接口和通信协议,用于模块之间的信息传递和功能调用, -### 微内核分析 +- IMC模块:是标准化的接口和通信协议,模块可以通过IMC调用来进行信息传递和功能调用(消息队列、共享对象、信号量)。 + +### 微内核 +微内核负责模块管理等功能。 - 模块管理:能够发现、加载、安装、卸载、更新和管理模块。 ### 项目设计优势 #### 技术可行性 -- JavaFX 提供了现代、交互式和富客户端用户界面的功能,包括多媒体支持和丰富的用户界面组件。它非常适合构建一个功能丰富的IDE。 +- JavaFX 提供了现代、交互式和富客户端用户界面的功能,包括多媒体支持和丰富的用户界面组件。它非常适合构建一个功能丰富的 IDE。 #### 文档和支持 - 提供详细的文档和在线帮助资源。 @@ -169,7 +172,7 @@ IMC (Inter Module Communication):是标准化的接口和通信协议,模块 #### 未来可维护性 -- JavaFX 仍然得到支持和更新,满足IDE 项目的长期可维护性要求。 +- JavaFX 仍然得到支持和更新,满足 IDE 项目的长期可维护性要求。 #### 性能和稳定性 @@ -177,7 +180,7 @@ IMC (Inter Module Communication):是标准化的接口和通信协议,模块 #### 跨平台支持 -- JavaFX 提供了跨平台支持,可以在多个操作系统上运行,包括Windows、macOS、Linux和嵌入式系统。这与IDE 的跨平台目标一致。 +- JavaFX 提供了跨平台支持,可以在多个操作系统上运行,包括 Windows、macOS、Linux 和嵌入式系统。这与IDE 的跨平台目标一致。 #### 微内核架构设计 @@ -209,7 +212,7 @@ IMC (Inter Module Communication):是标准化的接口和通信协议,模块 ### 软件设计 -[点击查看](软件设计.md) + ### 软件测试