• Welcome to the new COTI server. We've moved the Citizens to a new server. Please let us know in the COTI Website issue forum if you find any problems.
  • We, the systems administration staff, apologize for this unexpected outage of the boards. We have resolved the root cause of the problem and there should be no further disruptions.

Le Shipyard est mort

robject

SOC-14 10K
Admin Award
Marquis
So maybe it finally happened. I can no longer export a release build from FlashBuilder4.5. There is some web discussion of this related to version 4.7, and there's always Apache Flex and compiler support in IntelliJ; however for the time being, it looks like I cannot export an application from FlashBuilder.

Which means, I cannot export updates of my T5 Shipyard. At least without some digging and experimentation.

This is a bummer.

But, I suppose it's potentially an opportunity. I've thought about porting it to Java. Maybe now is the time.

And, I think the bugs are mostly worked out, and the 2016 build is stable. Plus, I had the foresight to put most of the data into configuration files to future-proof the app at least from data changes.
 
Last edited:
The nice thing about a good rewrite (theoretically) is that better design makes the code easier to understand, easier to manage. And I am all about ease of management. I have to code for low maintenance.

***

So I'm thinking about a rewrite, in Java. And in the ways of all things these days, I'm thinking about using a REST interface to decouple the view/controller from the model. That allows the backend to be Java, while clients can be in whatever.

I'm also thinking about all the lessons I learned in ship design "mechanics", and how a ship design system should work. How carefully I need to design my object relationships. How to do it better, in short.

The places where design seemed to fall down in the current version is in calculations: how elements were found, how my loops over the designs tended to have a lot of cruft in them where there should have been Command objects, or Visitor patterns, and so on. There are also a lot of relationships between objects which should have been formalized (i.e. via classes), but instead I simply tied them together with code. It made those few loops quite messy.

This is most clear with derived values. While cost and volume are straightforward, there are other metrics that are calculated in their own ways, but instead of generalizing with a nice clean pattern, instead I just plowed ahead with loops. For example, crew calculation, bridge crew estimation, and Demand and Comfort calculations. Things like that. They're actually Visitor patterns, aren't they?
 
I may have spoken too soon.

I may have spoken too soon.

My OLD Mac Mini, running an older OSX and an older Java, still compiles my Shipyard code.

So, theoretically at least, I can still develop my Shipyard app, or at least fix problems.
 
Yay!

I may have spoken too soon.

My OLD Mac Mini, running an older OSX and an older Java, still compiles my Shipyard code.

So, theoretically at least, I can still develop my Shipyard app, or at least fix problems.
This is awesome news! Go with your bad resurrecting self. :D


I love that program and now it's built two T5 published ship, keep it going we Naval Architects need it.
 
Back
Top