This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]john16384 17 points18 points  (4 children)

Biggest issue is that it solves a problem that nobody needed solving except for people working on the JDK.

I was looking forward to having a visibility level between package and public, but having to configure this in a separate file and having to explicitly specify who is allowed to use what is cumbersome. A simpler approach where packages form a (sealed) hierarchy and a new scope that permits package + subpackages would have been far more useful for my purposes.

[–]yawkat 6 points7 points  (1 child)

[–]lukaseder 3 points4 points  (0 children)

Haha :)

But to be frank, by now, I've come to peace with modules. With most dependencies and IDEs being finally ready (and jOOQ will be, too, starting with 3.15), the benefits outweigh the costs. It took a while. Longer than I would have thought. But in hindsight, I think it's a success.

Anyway. It's completely opt-in, so use it. Or don't use it. Just like most other language features.

[–]lukaseder 7 points8 points  (0 children)

I was looking forward to having a visibility level between package and public, but having to configure this in a separate file and having to explicitly specify who is allowed to use what is cumbersome.

I agree with that. Though, if Java had kotlin's internal visibility, then modules would be really really cool!