更新文档

This commit is contained in:
许轲 2023-10-15 10:49:38 +08:00
parent 5f482fb701
commit db32ab9c50
2 changed files with 33 additions and 29 deletions

View File

@ -18,5 +18,6 @@
- [IDEology设计文档](IDEology设计文档.md)
![IDEology.svg](img/IDEology架构图.svg)
- IDEology架构图
![IDEology架构图](img/IDEology架构图.svg)

View File

@ -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)
### 软件测试