Jump to content

Banner.jpg.b83b14cd4142fe10848741bb2a14c66b.jpg

I hate JAVA!


hobsey

Recommended Posts

  • Replies 41
  • Created
  • Last Reply

C/ C++ with a portable library for GUI building is what I do (FLTK is most used by me, many students use wxWidgets).

I did not like FORTRAN 77 at all, although I programmed quite a bit in it (and its VAX/VMS + Cray flavours). I also dabbled in FORTRAN 90, but got fed up with that too. For those who like a more off-the-wall solutions, please do look at languages like Intercal, Befunge-93 (examples here:http://esolangs.org/wiki/Befunge#Sieve_of_Eratosthenes), or Minimal-2D. A more comprehensive list of methods of mental self-abuse can be found here:

http://esolangs.org/wiki/Main_Page

Link to comment
Share on other sites

C/ C++ with a portable library for GUI building is what I do (FLTK is most used by me, many students use wxWidgets).

My application (PIPP) is mainly C/C++ with a thin C# GUI.  It is only the C# part that restricts it to Windows (ignoring Wine), so I am working on replacing the C# GUI with something that will run on Windows, Linux and OS X.

FLTK looks simple and lightweight, but the results (that I have Googled) do not look very 'pretty'.

Qt looks much more complicated and heavyweight.  However, the results look more 'pleasing' and it has good support for internationalisation.

HTML5 and JavaScript sounds more like a recipe for a web page than a computer program, though maybe I am stuck in the dark ages!

Cheers,

Chris

Link to comment
Share on other sites

My application (PIPP) is mainly C/C++ with a thin C# GUI.  It is only the C# part that restricts it to Windows (ignoring Wine), so I am working on replacing the C# GUI with something that will run on Windows, Linux and OS X.

FLTK looks simple and lightweight, but the results (that I have Googled) do not look very 'pretty'.

Qt looks much more complicated and heavyweight.  However, the results look more 'pleasing' and it has good support for internationalisation.

HTML5 and JavaScript sounds more like a recipe for a web page than a computer program, though maybe I am stuck in the dark ages!

Cheers,

Chris

I use FLTK mainly for the lightweight character. Works cleanly on Linux, OS-X and Windows. QT looks more professional, I agree, but I shied away from its complexity. Any heavy lifting as in image processing stuff should not be done with Javascript (Java is OK(ish)) or HTML5.

Link to comment
Share on other sites

Qt looks much more complicated and heavyweight.  However, the results look more 'pleasing' and it has good support for internationalisation.

I can't deny that Qt appears quite heavyweight, but actually I've found it quite straightforward to use and (mostly) well thought-out.  It's not without its own little quirks and foibles, but generally I've been quite impressed.  I mostly picked it up as I went along and have found very little that I wanted to do that wasn't catered for (I wanted a widget to appear in two different windows at once which isn't possible, but not hard to work around, and I wanted an item to appear in the drop-down section of a combo box but sometimes not be selectable which I've not found an elegant solution for yet).  The documentation is also pretty good.  It's very much a personal thing I admit, but I've also found to my pleasure that the toolkit wasn't trying to force me to write code in a way that didn't suit me.

A Qt feature that I've not really looked into because I had enough to learn at the time and didn't really know where I was going, but might suit your needs if you were looking to go multi-platform with PIPP because you already have a fairly stable UI is that you can design the layout in the Qt design tool and have it spew out an XML description for the entire UI widget set.  The Qt application can then load this and create the associated data structures with minimal programming work on your part.  That probably is the "right" way to do it and I'm doing it the "wrong" and hard way, but I shall come back to that at some point.

Where I have had problems it's really been down to me if I'm honest.  With oacapture I've been a little lazy about wrapping mutexes around access to variables that are shared by multiple threads where I felt it wouldn't be an issue anyhow and that has come back to bite me once or twice.  I guess that wouldn't be likely to happen so much in a program such as PIPP where the execution is generally more linear in nature anyhow.

I think I've become quite a fan :)

James

Link to comment
Share on other sites

The HTML5/Javascript comment was meant be be tongue-in-cheek before we all get carried away hating on it too much.  It's a very useful tool for client-side web stuff and scripting but I wouldn't want to build an enterprise application using it.

On the other hand I'd guess at least 50% of serious security vulnerabilities are down to people who think they know what they're doing in some variant of C or other because it fails to shield them (and their customers) from their own hubris. Of the rest, a fair chunk can be put at the foot of Java and the laughable way that it failed (and still fails) to address known vulnerabilities in a timely manner, and nearly everything else is down to letting 12 year-olds run global-scale services (e.g. if the latest Bitcoin fiascos don't turn out to be old-fashioned fraud, the 'security flaws' will doubtless be things that any experienced design and development team would have considered).

Link to comment
Share on other sites

Thanks for your responses and sorry from dragging this topic OT!  I think that for my application Qt is the best choice and it has been very useful to me to get the opinions from some who actually know what they are talking about though.

The potential security vulnerabilities with a one-man C++ project are something that do concern me, especially as writing software applications is not my day job.  I am an ASIC designer by trade which does inevitably involve writing quite a lot of C++ for test benches and the writing of some embedded software, but that is somewhat removed from being a 'real' software engineer!

Once I have finished the process of removing the C# GUI code and a whole load of refactoring that I want to do, then I plan to make the whole project open source.  This will hopefully result in some experienced eyes looking over the code and spotting any issues that I have missed.

Cheers,

Chris

Link to comment
Share on other sites

Thanks for your responses and sorry from dragging this topic OT!  I think that for my application Qt is the best choice and it has been very useful to me to get the opinions from some who actually know what they are talking about though.

By all means ask if you need help getting your head around Qt when you get that far, Chris.  I'm more than happy to share the benefit of my inexperience :)

James

Link to comment
Share on other sites

By all means ask if you need help getting your head around Qt when you get that far, Chris.  I'm more than happy to share the benefit of my inexperience :)

James

Thanks James, that is very much appreciated.  I'll probably also want to pick your brains about what is required to produce a release for the various Linux variants.

Out of interest, which version of QT are you working with?

Chris

Link to comment
Share on other sites

I'm using Qt 4.8 at the moment as it seems to be the default for many current distributions.  I'm aware that v5 is out, but even where it is available it tends not to be what's installed by default.

I've build RPM packages for Redhat/Fedora/CentOS before now, but not .deb packages for Debian/Ubuntu/Mint, so I have a little learning to be doing there myself.

James

Link to comment
Share on other sites

  • 2 weeks later...

Forth: Foot yourself in the shoot.     Is also a nice one

no, no, no... in Forth, the bullet leaps out of your foot and lodges itself in the gun barrel  :grin:

Modula2 (even tho it was bases off pascal) was a good language IMO

Link to comment
Share on other sites

WOOT!!! anyone else notice all the lights go out at 2:05??? GIMME THAT UNDO JAVA BUTTON NOW!!!!!

oh, and just to be an utter pedantic git... at 2:30, that computer is a dragon32 (i learned 6809 assembler and forth on one) :D the screen display doesn't match what the computer could produce, only having a screen resolution of 256x192 unless using an expansion board (which remapped ascii characters to graphics to show more than the standard 32x16 text display but still used the same resolution), which i forget the name of, but the dragon32 expansion port was empty in the video.

Link to comment
Share on other sites

I did some 6809 assembler in the 80s. I had a microbox II sbc which ran the Flex disk o/s. It ran at 750MHz and had 2 720k floppies. I even managed to get a language called PL/9 to run on it.

post-28249-0-03062400-1395774190.jpg

When i did my Applied Physics degree in 1981-4 we were made to learn Algol68. I remember it was like pascal. Today I tend to use Java for general programming.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. By using this site, you agree to our Terms of Use.