java - 用 Java 设计源代码编辑器,设计问题 :

标签 java swing jtextpane

作为个人项目/爱好,我开始用 Java 编写源代码编辑器。在我把自己引向任何可怕的道路之前,我想问几个问题:

  • JTextPane 是用于编辑文本的适当组件吗?就我所看到的示例而言,在大文件中设置文本样式似乎会变得非常麻烦,甚至可能非常缓慢/内存效率低下,因为在样式中使用字符串数组,它可能会很快变得非常大。 (注意:除了在我的编辑器中插入文本之外,我还需要能够插入组件,例如图像。我只在 JTextPane 中看到过这样做的能力。)

    • 在内部使用 XML/HTML 标记文本并使用像 JPanel 这样简单的东西来呈现它是否是一种计算/内存效率更高但不那么简单的方法?
  • 将文件源加载到程序中时,更好的设计选择是加载整个文件,还是只加载正在查看的内容,外加一个小到中等大小的缓冲区?

  • 在我踏上漫长的业余爱好之旅时,如果有任何其他建议,我将不胜感激!

最佳答案

Q1:你试过吗?这当然足以开始,并且您会在此过程中遇到其他问题。尽量不要专门围绕它进行设计。也就是说,不要将自己编程到一个角落,这样您以后可以根据需要切换。

Q2:我怀疑。

问题 3:将整个文件加载到内存中 - 放下手。您的计算机有很多 RAM,所以请使用它。

Q4:尝试几种不同的快速原型(prototype)。几次失败的尝试并没有错,只要您不对它们投入太多,并且在尝试时会学到很多东西。

关于java - 用 Java 设计源代码编辑器,设计问题 :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8276839/

相关文章:

java - JTextPane 中的 HTML 表格显示奇怪的 "form"框

java - BlockingQueue 的 drainTo() 方法的线程安全

java - 共享首选项修改mapView的 View

java - MarqueePanel 中的 JEditorPane/JTextPane

java - 代码拒绝在 JTextArea 中显示文本

java - 从 JFileChooser 获取 file.properties 并在 ResourceBundle 上使用它

java - 无法将项目方面动态 Web 模块的版本更改为 2.4

java - 查找我定义的类的列表中是否存在具有给定变量值的元素

java - 哪里可以下载NetBeans自带的 "appframework.jar"的源码?

java - 在VLCJ @ Java中添加字幕和基本操作面板