Why is public inheritance advocated when reducing the publicly visible API seems preferable from a maintainability perspective?

StackOverflow https://stackoverflow.com/questions/8952182

質問

I am using bada and refer to the tutorial here, which begins:

    class MainForm:
       public Osp::Ui::Controls::Form,
       public Osp::Ui::IActionEventListener,
       public Osp::Ui::ITouchEventListener
    {

I am running code where I recently removed the public specifier to cut down on my public API. You'll see that the functions implementing those interfaces where all also declared publicly, for which I saw no need and made private. I would do this without hesitation when implementing my own interfaces when those interfaces may provide more access than I would wish regular clients of my concrete class to receive.

What is the reason for making them public, what am I missing?

I guess it is advocated to aid extensibility, but for a dev making apps not libraries I would challenge this wisdom.

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top