incubator-jspwiki-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Janne Jalkanen (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JSPWIKI-38) Rename packages to "org.apache.jspwiki"
Date Sun, 21 Dec 2008 17:29:44 GMT

    [ https://issues.apache.org/jira/browse/JSPWIKI-38?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658402#action_12658402
] 

Janne Jalkanen commented on JSPWIKI-38:
---------------------------------------

I disagree. I personally hate the ".spi" -paradigm, since it results in a situation where
pretty much everything is a mess and could or could not be stable.  It also makes it very,
very complicated to figure out the API.  And you never quite know exactly which APIs you are
supposed to trust on, since we've got also a bunch of interfaces which might or might not
be stable.  We do need interfaces for our own abstractions without revealing them to the developer
too, and if we say that interfaces are stable, then well, then we'll end up doing a lot of
casting.

Putting everything in a single package which we agree to be stable makes it clear for everyone
what we can and cannot do with it.  It is not necessarily clear to the developer which JAR
file his class comes from, so he might be surprised to find out that half of the interfaces
he is coding on just are not reliable.  We can, of course, put them in a separate source directory
as well to ease management, but I would still keep them in the dedicated package.  In addition,
the dedicated package allows separate version numbering tracking for API and the core code.

I also dislike the fact that we've got stuff in the "root" directory (which quite a few people
have also pointed out on the mailing lists) - it's really just a collection of miscallaneous
classes about which we don't know where to put them.  I would greatly prefer if they were
moved into a ".core" package to signify what they really mean.  This is quite commonly done
in large projects.

It is most definitely not an abstraction; they're the same interface classes, but in a different
package.  Abstraction implies layering, which is not true.

There is nothing very complicated in renaming the packages, so making it easier is not a very
strong argument.

> Rename packages to "org.apache.jspwiki"
> ---------------------------------------
>
>                 Key: JSPWIKI-38
>                 URL: https://issues.apache.org/jira/browse/JSPWIKI-38
>             Project: JSPWiki
>          Issue Type: Task
>            Reporter: Janne Jalkanen
>            Assignee: Janne Jalkanen
>             Fix For: 3.0
>
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message