Comments (8)
Original comment by [email protected]
on 21 Aug 2010 at 5:52
- Added labels: Priority-High
- Removed labels: Priority-Medium
from unitsofmeasure.
This is mirrored by UCUM Trac here:
http://www.unitsofmeasure.org/ticket/53
As I used it recently, a good example for an "API" package is Concordion:
http://www.jarvana.com/jarvana/view/org/concordion/concordion/1.3.1/concordion-1
.3.1-javadoc.jar!/org/concordion/api/package-summary.html
Original comment by [email protected]
on 21 Aug 2010 at 6:39
- Added labels: Priority-Medium
from unitsofmeasure.
I would prefer to avoid the "api" sub-package since API is the whole purpose of
"org.unitsofmeasure".
Is the following acceptable?
1) Provide only two packages: "org.unitsofmeasure.unit" and
"org.unitsofmeasure.quantity". All other packages (including
"org.unitsofmeasure") will disaspear after the points below.
2) Move the Quantity interface to "org.unitsofmeasure.quantity".
3) Move all the remaining of "org.unitsofmeasure" to "org.unitsofmeasure.unit".
4) Move all of "org.unitsofmeasure.util" to "org.unitsofmeasure.unit".
Original comment by [email protected]
on 22 Aug 2010 at 8:41
from unitsofmeasure.
Regardless of above refactoring (which we're still free to undertake) UCUM
feels uncomfortable with having them in the top level package, too.
I replied to Gunther, hoping to clarify, it's not an "Implementation" but the
"Spec" this is about (his suggestion calling the package "jscience" was
well-meant, but unacceptable, as it would destroy all standardization efforts
since 2005 and would just put it back to org.jscience)
Nevertheless, we probably have to face introducing a sub-level like "api",
"spec" or whatever makes sense? The shorter the better. Since JScience is only
one of 3+ implementations (not the RI unless we go JSR again some day) the name
should be neutral and not be mixed with an implementation.
Original comment by [email protected]
on 23 Aug 2010 at 1:04
from unitsofmeasure.
I'm with Martin: I am not keen on having 'api/spec' as a package name. The
whole module/bundle is an API bundle (no implementation); so there is no
"non-API" package to differentiate it from.
I can see the domain owner's point though in wanting to reserve the top level
domain and give us a single root package.
But I can't think of anything better than 'api', so under the circumstances
this may be the best option? I certainly prefer it to 'spec'.
If we do introduce this 'api' package, my preference would be to leave the
subpackage content exactly like it is now (e.g. org.unitsofmeasure.api.Unit,
org.unitsofmeasure.api.quantity.Length etc.).
Original comment by christopher.senior
on 25 Aug 2010 at 9:57
from unitsofmeasure.
Thanks for the update. Gunther hasn't come back to us on that, so we could if
we all agree, the "unit" + "quantity" structure is also best, start doing that.
One caveat regarding Martin's earlier suggestions is, that OSGi (pretty
mandatory, not only Eclipse or UOMo uses it now, both Apache and Oracle are
also very into it) naming won't allow version numbers under 3 digits. So for a
next release it should be "0.5.3".
Any "SNAPSHOT", "DEV" or similar "DAILY" / "NIGHTLY" build must therefore be
put after 3 digits. We can't have "0.5.SNAPSHOT". And even anticipating 0.6
would require a "0.6.0.SNAPSHOT" format.
Just wrapping up the domain question, Gunther and UCUM's point is similar to
let's say us plunging "org.eclipse.unit" and "org.eclipse.quantity" into the
Eclipse ecosystem. Eclipse would never allow that, and even in javax.* there
are very few JSRs with more than one "top-level" javax.* package name either.
CDI seems among the few. Some who declare annotations do this in a pre-defined
package, all others usually have one, also under javax.
Original comment by [email protected]
on 27 Aug 2010 at 10:28
from unitsofmeasure.
Original comment by [email protected]
on 12 Sep 2010 at 12:03
- Added labels: Type-Enhancement
from unitsofmeasure.
Original comment by [email protected]
on 12 Sep 2010 at 12:03
- Changed state: Fixed
from unitsofmeasure.
Related Issues (20)
- Further document Implementations in Maven HOT 2
- Graduate 0.6 Release HOT 3
- Explore support for JSR-308 HOT 4
- Add methods to Quantity HOT 2
- Improve Documentation HOT 1
- Link API javadocs from the homepage HOT 4
- Move our code repo to Git from SVN HOT 2
- Add method getSystemsOfUnits to SystemOfUnitsService HOT 3
- Remove UnsupportedException from asType(Class) javadoc HOT 1
- Unit should declare a toString() method HOT 1
- Add missing standard constructors in unit exceptions HOT 1
- Consider renaming RadioactiveActivity as RadioActivity HOT 3
- Should Unit.alternate return type be Unit<Q>? HOT 1
- UnitFormat.parse(...) should throws ParseException HOT 1
- Velocity interface shall be renamed as Speed HOT 1
- Unit.add method should be renamed "shift" HOT 1
- Attach source jars to build HOT 1
- UCUM links in JavaDoc are outdated HOT 1
- Correct example code sections in JavaDoc HOT 2
- IncommensurableException should be a checked exception HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from unitsofmeasure.