icommand 0.7 changes accessibility of some classes

This is where you talk about the NXJ software itself, installation issues, and programming talk.

Moderators: 99jonathan, roger, imaqine

icommand 0.7 changes accessibility of some classes

Postby kirkpthompson » Sat Jan 19, 2008 7:03 pm

The new icommand 0.7 changes accessibility of some classes, interfaces and exceptions in icommand.nxt.comm that I use and thus breaks the rule of backwards compatibility (and my stuff). Is this an oversight or a real design change?

Classes in icommand.nxt.comm that have been declared private but were public before:
NXTCommBlueCove
NXTCommBluez
NXTCommFactory
NXTCommRXTX
NXTCommSun
NXTInfo

I know these have [similar] counterparts in the lejos.pc.comm package but there is no provided Javadoc and the functionality is a tad different (ie: NXTCommFactory).

I am going to [try to] build the Javadoc from the SVN repos (SVN\trunk\pccomms\lejos\pc\comm) to see if I can refactor my codebase to use those classes but other folks might/will have some problems with the API changes.

-K
User avatar
kirkpthompson
leJOS Team Member
 
Posts: 304
Joined: Wed Dec 05, 2007 1:27 am
Location: New Mexico, USA

Postby kirkpthompson » Wed Jan 30, 2008 4:52 pm

[posting a reply to boost to the top...]

Is this an oversight or a real design change?

Thnx.

-K
User avatar
kirkpthompson
leJOS Team Member
 
Posts: 304
Joined: Wed Dec 05, 2007 1:27 am
Location: New Mexico, USA

Postby bbagnall » Fri Feb 01, 2008 4:09 am

Hi Kirk. We quite frequently break backward compatibility with the API in both leJOS NXJ and iCommand. It's our philosophy that if a change makes the API better than we just go for it, even if we all have to update the existing code we have made.

Most robot programs are pretty tiny and don't require too many changes so we feel it is worth it to make a better product.

I just posted the new API docs for iCommand 0.7 on the leJOS site today so you can take a look at the changes there, or just use the included ones with the iCommand download.
User avatar
bbagnall
Site Admin
 
Posts: 392
Joined: Fri Aug 04, 2006 4:03 pm

Postby kirkpthompson » Fri Feb 01, 2008 5:26 am

Ok. Thnx for the clarification.

Since my last post on the subject, I have javadoc'ed and figured out how to use the lejos.pc.comm package classes.

New Question: Are the stream classes (in NXTCommBluecove) basically the same as what was in icommand.nxt.comm? Is this part of gloomyandy's changes?

I haven't gone through all my tests with my refactored code.

Best Regards,
-K
User avatar
kirkpthompson
leJOS Team Member
 
Posts: 304
Joined: Wed Dec 05, 2007 1:27 am
Location: New Mexico, USA

Postby bbagnall » Fri Feb 01, 2008 6:37 pm

kirkpthompson wrote:New Question: Are the stream classes (in NXTCommBluecove) basically the same as what was in icommand.nxt.comm? Is this part of gloomyandy's changes?

Yes, the architecture is quote similar. You'll find some of the same class names and many of the same method signatures. They started off using the same code but have diverged a bit.
User avatar
bbagnall
Site Admin
 
Posts: 392
Joined: Fri Aug 04, 2006 4:03 pm


Return to NXJ Software

Who is online

Users browsing this forum: No registered users and 6 guests

more stuff