2011-11-26 76 views
2

我开始在Java中编写一个源代码编辑器作为个人项目/爱好。之前我带领自己失望任何可怕的路径,我想问几个问题:在Java中设计源代码编辑器,设计问题:

  • 是JTextPane中适当的组件使用要编辑的文本?就我所看到的例子而言,它看起来可能会变得非常麻烦,甚至可能在SLOW/memory方面效率很差,无法在大型文件中对文本进行样式设置,因为字符串数组在样式中使用,可能会非常快速地变得非常大。 (注:我需要插入组件,如图像的能力,除了在我的编辑文本我只看到的JTextPane这样做的能力)

    • 会内部标记了XML文本/ HTML并使用像JPanel这样简单的东西来使它成为一个更具计算能力/内存效率的,尽管不那么简单的路由?
  • 将文件的源文件加载到程序中时,更好的设计选择是加载整个文件,还是仅加载正在查看的内容以及一个小到中等大小的缓冲区?

  • 任何其他建议,因为我踏上了一个业余爱好的漫长旅程将不胜感激!

+1

听起来像一个有趣的项目。如果我是你,我会看看一些开源编辑。应该有一些在那里..例如http://code.google.com/p/neoeedit/ – armandino

+1

您可以使用Eclipse RCP作为基础框架,并解决了许多此类问题。这里有一个例子:http://www.eclipse.org/eclipse/platform-text/development/rcp/examples/index.html – angelcervera

回答

1

问题1:你试过了吗?首先,它肯定足够了,而且你会遇到其他问题。只是尽量不要专门设计它。即不要将自己编程到一个角落,以便您可以稍后切换。第二季度:我对此表示怀疑。

问题3:将整个文件加载到内存中 - 手动关闭。你的电脑有很多RAM,所以使用它。

Q4:尝试几种不同的快速原型。如果你没有投入太多资金,并且在你做这些事情时学到很多东西,那么几次失败的尝试就没有任何问题。

+0

Q1/Q2):我显然没有或我想我会知道答案现在! :P。我觉得这将是我将要实施的最初功能中最大的挑战,所以我更多地问自己是否要将自己编程到一个角落。具有该组件和/或样式方法经验的人的回答在这里会很有用。 Q3)我想;如果我使用超过4个演出(不包括系统保留等)的RAM,只是打开源代码,我可能会有更大的问题需要担心,比如代码重构! Q4)任何程序的精彩建议! 感谢您的输入! –