好的,因此希望对程序员来说这是一个主观的问题,但这是可行的。我一直在不断拓宽我的语言和软件工程实践的知识……而且我遇到了一些对我毫无意义的事情。
在C ++中,类声明将private:
方法和参数包含在头文件中,从理论上讲,如果将它们设为lib,则传递给用户以包括这些内容。
在Objective-C中,@interface
几乎做同样的事情,迫使您列出私有成员(至少有一种方法可以在实现文件中获取私有方法)。
据我所知,Java和C#允许您提供一个接口/协议,该接口/协议可以声明所有可公开访问的属性/方法,并使编码人员能够在实现文件中隐藏所有实现细节。
为什么?封装是OOP的主要原理之一,为什么C ++和Obj-C缺少此基本功能?对于Obj-C或C ++,是否存在某种隐藏所有实现的最佳实践解决方法?
谢谢,