【发布时间】:2013-09-07 10:34:51
【问题描述】:
我正在实现一个 Java 应用程序,我想知道良好的安全性(信息隐藏)和软件可读性之间的平衡点。 例如,我定义了一个公共构造函数的许多方法,它内部只有一个对象实例的方法
public class myFrame extends JFrame
{
/**
*Constructor
*/
public myFrame()
{
initialize();
}
private void initialize ()
{
//something that instance a myFrame object
}
这样,调用 myFrame 构造函数的外部类无法知道 HOW myFrame 实例它的对象,而只接收想要的对象。 这个想法可以应用于任何 myFrame 方法,但我发现它不会很好地提高软件的可读性,有让它变得乏味的风险。
那么,在您看来,哪个是好方法?将信息隐藏应用于任何方法或仅用于重要的方法?你会怎么做?
谢谢你,知道你的开发经验会启发我的想法!
【问题讨论】:
-
信息隐藏不是出于安全考虑。永远不会。除此之外,我没有看到任何隐藏在您的 sn-p 中的信息。
-
(i) 你不能在一个名为
myFrame的类中拥有一个名为TabellaOrario的构造函数 (ii) 想要查看对象是如何构造的人可以轻松找到你的initialize方法以及如何实施。 -
感谢您的 cmets。您将如何使您的软件更安全?
-
@Bernheart 以何种方式更安全?您到底想对用户/潜在攻击者隐藏什么?
-
是的。我认为您在实施时使用信息隐藏。以哪种方式?