2009年8月6日星期四

类功能的分配

开始写了个TclExecutor类。这个类可以执行tcl语句、tcl 文件。因为tcl interpreter是在这个类中创建的,interpreter是用一个线程在后台驱动的,所以我把TclExecutor当作资源类。是资源的东西,当然是要被管理的,否则就有资源泄漏的危险。所以,我就加入了结束tcl executor生命的方法disposeI(), disposeAll()。
因为要管理这些资源,又让TclExecutor的构造函数接受一个字符串当作executor的名字。以后就可以用名字来定位需要的executor。
为了定位,就需要一个管理类来管理这些executors。可以把这些管理executor的方法通通写到TclExecutor 中,也可以单独写一个manager类。

当代码紧凑不是优点而是缺点时,就已经没有理由不把这些功能分别安排到不同的类中了。