Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Are Java-based Products really trustworthy?

Are Java-based Products really trustworthy?

Scheduled Pinned Locked Moved The Lounge
javacomperformancequestion
33 Posts 21 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D dmitri_sps

    Vasudevan Deepak Kumar wrote:

    all available memory has been gobbled up

    Probably, it was the opposite :sigh: - not all memory was available to it. There is a fundamental difference between Windows and CLR apps and Java - Java JRE runs with a limited heap size. Currently, it "...defaults to smaller of 1/4th of the physical memory or 1GB. Before J2SE 5.0, the default maximum heap size was 64MB..." (quote from Sun documentation[^]). What happens when the app works with large data (in your case, long message lists, probably), is that the smaller available heap memory, the more time is spent on memory defragmentation, de-allocation, etc. Exponentially more time, the closer the heap comes to its limit. This is the effect you can get with non-Java apps, when your PC runs out of virtual memory - machine slows to being almost dead. With Java app though, it stays within its memory limits, but eats all CPU. So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause), and worse - since in real world it is very hard to write an app that scales on data size (in any language - .NET just has more memory at its disposal). Maybe that is why Java is more popular as server-side framework: it's all pooled and buffered... :) If you have problems with some Java app you use, try increasing the heap size. If there is a command that starts your app, add the -Xmx option; if you just double-click some app.jar file, create a shortcut with the explicit command line, for example:

    javaw -Xmx1024m -jar app.jar

    R Offline
    R Offline
    Russell Jones
    wrote on last edited by
    #14

    dmitri_sps wrote:

    So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause)

    While checked exceptions are a great idea in theory, and used well they should make programs more robust, too many people either end up wrapping a whole method in a try-catch to swallow Exception or declare their method like this public void myMethod() throws Exception { //Code that will throw a variety of checked exceptions } Other than that I agree that Java is a great language. I played with it on and off since the IE4 days and since moving my home machines to Ubuntu It's become my language of choice for my personal projects. Russell

    D 1 Reply Last reply
    0
    • V Vasudevan Deepak Kumar

      Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness, we normally look down on grey-technologies like Java. Today, one of the famous instant messengers from IBM pissed me off like anything. It miserably froze my PC like anything and I had no other go other than to hard boot the PC since even the three fingered salute to Windows was beyond the normal recognition. To that extent, all available memory has been gobbled up this hungry brute. :wtf: I really wonder if these folks really test their products before releasing them to market. Can't they gracefully communicate the message to the user? :mad: :mad:

      Vasudevan Deepak Kumar Personal Homepage
      Tech Gossips
      All the world's a stage, And all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts... --William Shakespeare

      J Offline
      J Offline
      jsc42
      wrote on last edited by
      #15

      Vasudevan Deepak Kumar wrote:

      Today, one of the famous instant messengers from IBM ****** me off like anything

      If it is the one [clue try running it at the Same Time as anything else]that I have to use (company policy), avoid version 7.5.1. On my PC (your mileage may vary) it keeps crashing with Java null pointer exceptions. I have tried loading various JREs but it seems to use its own one. Versions 7.5 and 3.1 are OK. Interestingly, 7.5.1 is the first version that used Eclipse as its development tool (so you get tons of empty folders created when you install it).

      1 Reply Last reply
      0
      • R Russell Jones

        dmitri_sps wrote:

        So, on the topic of being "trustworthy", Java is both better than other languages (not sure any of them supports throws clause)

        While checked exceptions are a great idea in theory, and used well they should make programs more robust, too many people either end up wrapping a whole method in a try-catch to swallow Exception or declare their method like this public void myMethod() throws Exception { //Code that will throw a variety of checked exceptions } Other than that I agree that Java is a great language. I played with it on and off since the IE4 days and since moving my home machines to Ubuntu It's become my language of choice for my personal projects. Russell

        D Offline
        D Offline
        dmitri_sps
        wrote on last edited by
        #16

        I agree: no feature makes code good by itself. You fight memory leaks in Java and .NET alike, thread synchronization, etc. I should have added that using construct in C# is something far better than Java's alternative of using finally blocks - but, who knows, as you said "too many people" might just ignore both of these options But still, an average Java desktop application would fiind it hard to cope with large data... :|

        D 1 Reply Last reply
        0
        • E ed welch

          eclipse

          T Offline
          T Offline
          toxcct
          wrote on last edited by
          #17

          I second this strongly. In fact, I was about to Post that, and then saw your answer !

          [VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]

          1 Reply Last reply
          0
          • V Vasudevan Deepak Kumar

            Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness, we normally look down on grey-technologies like Java. Today, one of the famous instant messengers from IBM pissed me off like anything. It miserably froze my PC like anything and I had no other go other than to hard boot the PC since even the three fingered salute to Windows was beyond the normal recognition. To that extent, all available memory has been gobbled up this hungry brute. :wtf: I really wonder if these folks really test their products before releasing them to market. Can't they gracefully communicate the message to the user? :mad: :mad:

            Vasudevan Deepak Kumar Personal Homepage
            Tech Gossips
            All the world's a stage, And all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts... --William Shakespeare

            M Offline
            M Offline
            Madhu Cheriyedath
            wrote on last edited by
            #18

            Vasudevan Deepak Kumar wrote:

            Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness,

            I am not 100% agree with you on this statement. I have seen Eclipse offering nice (and better) GUI features (and fast too) even before Visual Studio 2005 was doing the same things. In terms of user-friendliness some of the Apple developed software is far superior than Microsoft's (my personal opinion).

            Vasudevan Deepak Kumar wrote:

            we normally look down on grey-technologies like Java.

            Could you please tell me what you meant by 'grey-technologies'? No matter whatever tools/technologies you use, a badly developed application/tool is bad. Nothing more nothing less. I am not supporting Java or Microsoft. As someone else pointed out (about VB programmers), if a person uses only one language for everything, you can see these problems. I think for a company like IBM, it may be cost effective to develop in one language (Java) rather than developing in native languages like C/C++.But if another company chooses .NET for similar reason, they may also end with same kind of issues -Madhu

            1 Reply Last reply
            0
            • E ed welch

              eclipse

              P Offline
              P Offline
              pboucher
              wrote on last edited by
              #19

              I would add that good products made for Eclipse are excellent. Aptana is one of them. Unless I am mistaken, I is written entirely in Java. Pierre Boucher 'Bien souvent on se rend coupable en négligeant d'agir, et non pas seulement en agissant.' - Marc Aurèle, empereur et philosophe romain.

              1 Reply Last reply
              0
              • J John M Drescher

                How about openoffice? [EDIT]I see that only parts of it are java based. http://wiki.services.openoffice.org/wiki/Java_and_OpenOffice.org#OpenOffice.org_Base[^] [/EDIT]

                John

                N Offline
                N Offline
                Nemanja Trifunovic
                wrote on last edited by
                #20

                John M. Drescher wrote:

                How about openoffice?

                C++ :)

                Programming Blog utf8-cpp

                J 1 Reply Last reply
                0
                • E ed welch

                  eclipse

                  N Offline
                  N Offline
                  Nemanja Trifunovic
                  wrote on last edited by
                  #21

                  ed welch wrote:

                  eclipse

                  Slow and a memory hog.

                  Programming Blog utf8-cpp

                  N 1 Reply Last reply
                  0
                  • N Nemanja Trifunovic

                    John M. Drescher wrote:

                    How about openoffice?

                    C++ :)

                    Programming Blog utf8-cpp

                    J Offline
                    J Offline
                    John M Drescher
                    wrote on last edited by
                    #22

                    I thought about that because when I build it on gentoo linux, I know a good bit of time is spent compiling the java part. I have never looked at the source though. Perhaps the reason why it looks this way is that I use distributed building with gcc and I doubt the java compile is doing that.

                    John

                    1 Reply Last reply
                    0
                    • J John M Drescher

                      How about openoffice? [EDIT]I see that only parts of it are java based. http://wiki.services.openoffice.org/wiki/Java_and_OpenOffice.org#OpenOffice.org_Base[^] [/EDIT]

                      John

                      O Offline
                      O Offline
                      Owen37
                      wrote on last edited by
                      #23

                      I HATE OpenOffice! MSOffice just works. I fight with OpenOffice constantly just to get it to do simple things (like newspaper columns, envelope printing, etc). With MSOffice, it just works: no fiddling around with settings, etc. :-D

                      1 Reply Last reply
                      0
                      • L Lost User

                        I still think those people got paid, or maybe Mojave is actually Ubuntu. :rolleyes: Vista never got me saying "it works", no matter how much I wanted it to work. :doh:

                        O Offline
                        O Offline
                        Owen37
                        wrote on last edited by
                        #24

                        Vista works for me. I've got it running on 2 laptops and a desktop. No real issues (of course, the hardware is all 2+Ghz Core-2 with 4G memory! :-\ ).

                        L 1 Reply Last reply
                        0
                        • N Nemanja Trifunovic

                          ed welch wrote:

                          eclipse

                          Slow and a memory hog.

                          Programming Blog utf8-cpp

                          N Offline
                          N Offline
                          Nemanja Trifunovic
                          wrote on last edited by
                          #25

                          Someone voted:

                          1.00/5 (1 vote)

                          But it doesn't change the fact that eclipse is slow and consumes all the memoty it can find ;P

                          Programming Blog utf8-cpp

                          enhzflepE 1 Reply Last reply
                          0
                          • D dmitri_sps

                            I agree: no feature makes code good by itself. You fight memory leaks in Java and .NET alike, thread synchronization, etc. I should have added that using construct in C# is something far better than Java's alternative of using finally blocks - but, who knows, as you said "too many people" might just ignore both of these options But still, an average Java desktop application would fiind it hard to cope with large data... :|

                            D Offline
                            D Offline
                            Dave Buhl
                            wrote on last edited by
                            #26

                            dmitri_sps wrote:

                            I should have added that using construct in C# is something far better than Java's alternative of using finally blocks

                            The using construct is a bit different than the try/catch/finally construct, and C# actually does have a try/catch/finally construct as well. The difference is that using will ensure clean-up of resources even when an exception is encountered, it will take no action to handle the exception other than clean up the resources (close files, close database connection, etc).

                            D 1 Reply Last reply
                            0
                            • N Nemanja Trifunovic

                              Someone voted:

                              1.00/5 (1 vote)

                              But it doesn't change the fact that eclipse is slow and consumes all the memoty it can find ;P

                              Programming Blog utf8-cpp

                              enhzflepE Offline
                              enhzflepE Offline
                              enhzflep
                              wrote on last edited by
                              #27

                              Precisely. To compare it to a steaming pile of .... would be perhaps unfair, though to say that eclipse is a nice piece of work worth having is pushing the friendship a bit too far. Linux or Windows, Eclipse is just plain slooooooooow. Shame on you Adobe for adopting it as the IDE for Flex - closing and restarting the whole app because I change active project. :mad::mad::mad::mad:

                              1 Reply Last reply
                              0
                              • N Nemanja Trifunovic

                                Shog9 wrote:

                                There are good Java-based desktop products.

                                Really? Which ones? I heard IntelliJ was good, but haven't actually seen any good Java desktop product.

                                Programming Blog utf8-cpp

                                K Offline
                                K Offline
                                Kevin McFarlane
                                wrote on last edited by
                                #28

                                What about Eclipse? Yes, I know you're a non-IDE person. I've not used it but people say it's good. However, is it all written in Java?

                                Kevin

                                S 1 Reply Last reply
                                0
                                • O Owen37

                                  Vista works for me. I've got it running on 2 laptops and a desktop. No real issues (of course, the hardware is all 2+Ghz Core-2 with 4G memory! :-\ ).

                                  L Offline
                                  L Offline
                                  Lost User
                                  wrote on last edited by
                                  #29

                                  Mine is AMD Dual Core 6000+ (that's 3 GHz per core), and I've got SLI configured. I've got no problems running it, but it just doesn't work the way I want it to. It's a piece of crap! ATM, I like Ubuntu more. :rolleyes: Waiting for Windows 7 to make me say "it works" though...

                                  1 Reply Last reply
                                  0
                                  • V Vasudevan Deepak Kumar

                                    Hailing from Microsoft technologies and exposed to an elevated level of user-friendliness, we normally look down on grey-technologies like Java. Today, one of the famous instant messengers from IBM pissed me off like anything. It miserably froze my PC like anything and I had no other go other than to hard boot the PC since even the three fingered salute to Windows was beyond the normal recognition. To that extent, all available memory has been gobbled up this hungry brute. :wtf: I really wonder if these folks really test their products before releasing them to market. Can't they gracefully communicate the message to the user? :mad: :mad:

                                    Vasudevan Deepak Kumar Personal Homepage
                                    Tech Gossips
                                    All the world's a stage, And all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts... --William Shakespeare

                                    R Offline
                                    R Offline
                                    raicuandi
                                    wrote on last edited by
                                    #30

                                    Azureus/Vuze is the best BitTorrent client I ever used, and its made in Java. Other than that, I can't name any other Java program that doesn't stink/is ridiculous. (no wordwrap in NetBeans?! Even notepad has that!)

                                    1 Reply Last reply
                                    0
                                    • D Dave Buhl

                                      dmitri_sps wrote:

                                      I should have added that using construct in C# is something far better than Java's alternative of using finally blocks

                                      The using construct is a bit different than the try/catch/finally construct, and C# actually does have a try/catch/finally construct as well. The difference is that using will ensure clean-up of resources even when an exception is encountered, it will take no action to handle the exception other than clean up the resources (close files, close database connection, etc).

                                      D Offline
                                      D Offline
                                      dmitri_sps
                                      wrote on last edited by
                                      #31

                                      Thanks for a lesson, and I should point out that

                                      using(x) { /* code */ }

                                      is equivalent to

                                      try { /* code */ } finally { x.Dispose(); }

                                      with added convenience of having x declared within using declaration, like in

                                      using(Stream x = ...} { ... }

                                      My point simply was that using is more convinient than try-finally construct, so there is a greater chance that people will use it. It is possible to do without any of these, but then resources will be cleaned up only in finalization during garbage collection, so there are good reasons to do this programmatically in your code; and C# facilitates such approach by giving more convinient construct: using.

                                      1 Reply Last reply
                                      0
                                      • K Kevin McFarlane

                                        What about Eclipse? Yes, I know you're a non-IDE person. I've not used it but people say it's good. However, is it all written in Java?

                                        Kevin

                                        S Offline
                                        S Offline
                                        super_ttd
                                        wrote on last edited by
                                        #32

                                        yes ! it's open source if you mind looking at it.


                                        K 1 Reply Last reply
                                        0
                                        • S super_ttd

                                          yes ! it's open source if you mind looking at it.


                                          K Offline
                                          K Offline
                                          Kevin McFarlane
                                          wrote on last edited by
                                          #33

                                          I don't have a reason to use it right now but I will bear it in mind if I get some real Java or Python work in the future.

                                          Kevin

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups