Freelancer: standahj
Share:
Report Entry

Java, but not only...

I'd suggest that you consider using a JVM as a technology of choice, because JVM can run any language that compiles to a byte code, not only Java: http://en.wikipedia.org/wiki/List_of_JVM_languages For you to support the application there may be other language that would give you the same result and with which you will be more comfortable. All these other languages support calling Java for the functions/tools/packages that are not available in the given language. Let's assume Java for further discussion. Language considerations: VB & Java are both are procedural languages (you got functions, APIs etc) but the difference is in implementation and "philosophy", thus you are facing complete re-write/re-design). The challenge is if your application uses some Windows native libraries (e.g. for the "flexigrid/spreadsheet") which give you some functionality for free, which you don't have in Java (nor on MAC OS) and that will need to be now implemented even when you run on Windows.

Contest Entry #9 for                                                 Advice on Language

Public Clarification Board

  • standahj
    standahj
    • 12 years ago

    Your app will run everywhere where there is a native JVM implementation (exception: if you require OS specifics in your logic, then the correct function of app will be limited only for those platforms for which the specific logic is implemented)
    Users will require prior Java SDK install to run your app, everything else you can bundle yourself, e.g. if you need a query language, you may consider Apache Derby database, which is a lightweight relational database written in Java (thus almost any language that run on JVM can use it), you add it to a package.
    However if the requirement is to update the "database files" as part of regular data update, then I need to know more how this database files are used to make a recommendation.

    The development effort in re-write/re-design will be no smaller then the effort you put to create the application initially, plus effort on the top to implement Windows native functionality (if any in use) that is not available to re-use in Java.

    • 12 years ago
    1. DaveOB2
      Contest Holder
      • 12 years ago

      Hi

      Thank You for your valuable input and advice.

      I am looking at a complete redesign of the way the software works, so there will be no Windows unique parts to the application.

      It has been suggested that I use the JDBC database that is available through Netbeans ( I assume it is not exclusive to netbeans, but that is where I was shown it ).

      • 12 years ago
    2. standahj
      standahj
      • 12 years ago

      Hi Dave, you may have been most likely shown this:
      https://netbeans.org/kb/docs/ide/java-db.html
      which is the version of Apache Derby database under the brand name "JavaDB" that Oracle supports & bundles with Java7 SDK (http://www.oracle.com/technetwork/java/javadb/overview/javadb-156712.html).
      Thus indeed you are not limited to Netbeans only to use it. I believe that for Java6 and earlier it has to be supplied with your application (in a form of a library jar file(s)).
      It runs on Java v1.4 and later, and you can safely assume it is compatible with all today's platforms of your users.
      Small note: JavaDB is under APLv2 (http://www.apache.org/licenses/LICENSE-2.0), so it is free to use in commercial programs w/o limitations or obligations, if I understand it well, but pls double-check it to be sure.
      Stan.

      • 12 years ago
  • standahj
    standahj
    • 12 years ago

    Also you may need to prepare for possibility that the new application may not have in it's first upgraded version all its current features, thus you need to specify what is must-have and what is nice-to-have.
    I do coding, however I'd need to know more of the scope (how many screens (individual windows), how many graphs and what interactivity, how much internal logic (i.e "business logic") & calculation is needed to obtain data for charts,
    is there any OS specifics that you require (e.g. if you scan Windows registry to get some system information, this has to be re-designed), and what is your expectation of the future support for the app/code ownership handover/documentation/training, or anything important, before putting up the bid, because I cannot do the estimate as yet.

    I'm in the EMEA timezone.

    • 12 years ago