Sealed classes - would you want them in D? (v2)

Scott Meyers sc at sc.com
Wed May 23 02:52:55 UTC 2018


On Wednesday, 23 May 2018 at 02:23:31 UTC, Bjarne Stroustrup 
wrote:
>
> This is NOT why I created C++ - just so you programmers could 
> violate an objects autonomy!
>

So why did you create C++?

On the serious side though, unencapsulated software is 
inflexible, and as a result, not very robust.

The reason the class is more encapsulated than the struct is that 
more code might be broken if the (public) data members in the 
struct change than if the (private) data members of the class 
change.

There is a direct relationship between encapsulation (how much 
code might be broken if something changes) and practical 
flexibility (the likelihood that we'll make a particular change).

Now many of you may have heard my talks about 'Encapsulation and 
Non-Member Functions'. Let me remind you all though, that I was 
referring to non-member non-friend functions, not non-member 
functions that can penetrate your objects private parts.

Penetration results in less encapsualtion, not more.

So I support your Bjarne. Something need to be corrected in D.




More information about the Digitalmars-d mailing list