Find the answer to your Linux question:
Results 1 to 7 of 7
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1

    Which Language to use for development


    I am required to develop an application for linux which needs to do the following:

    1. Gather system information
    2. Send this information via the network to a central server.
    3. Display the infrmation locally via a Gui.
    4. Run as a daemon on the local system.

    As i have never really done much development under Linux, so the question is which language would be best to use. I am leaning toward Java as I am familiar with it and it would provide (IMO) the fastest development speed, portability and maintainability. The only problem would be running the application as a daemon but i have found and tool called the "java service wrapper" that will allow this.

    I have looked into Mono, but it seems to be a rather poor cousin to microsofts version of C#. I am quite familiar with C and C++, but firstly i am not sure how to do GUI's under linux in these languages and I am rather convinced the development time would be much longer. I have not heard many good things about kylix so I havent really looked into that option yet.

    Any suggestions would be greatly appreciated. Thanks.

  2. #2
    Linux Guru kkubasik's Avatar
    Join Date
    Mar 2004
    Lat: 39:03:51N Lon: 77:14:37W
    Quote Originally Posted by Greebocat

    I have looked into Mono, but it seems to be a rather poor cousin to microsofts version of C#.

    Mono is C#, its a linux implementation of the .Net runtime, The API is compatable with .Net 1.1 with 2.0 support nearing beta.

    Your question really isn't one easy to answer, languages really won't run into functionality issues, most anything that needs to be done can be done with any real mainstream language. If You want a relativly easy to learn and powerful language with a large library, then python is probably a good choice. But you also don't have enough details about your project to make a serious recommendation.
    Avoid the Gates of Hell. Use Linux
    A Penny for your Thoughts

    Formerly Known as qub333

  3. #3
    Linux Enthusiast
    Join Date
    Feb 2005
    Luton, England, UK, Earth
    Also depends what the application will be, Java applications tend to be heavier than perl or C++

  4. $spacer_open
  5. #4
    Java's overhead makes me want to avoid it as much as possible.

    I would recommend one of Python, C or C++. You can use the basic GTK+ library with any of these languages. If you are going to use C, you won't need any wrappers. If you are going to use Python, lok at PyGtk. And if you are going to use C++, look at GTK--.

    I guess unless there is a very compelling reason against it, I would always use C and GTK+. But Python allows for very rapid development, and in this case it might be your best friend.

  6. #5
    Linux Engineer d38dm8nw81k1ng's Avatar
    Join Date
    Mar 2005
    i'd say C. just type it really really fast
    i'm not too familiar with python but C will allow for a faster execution speed. and like Reisswolf said, you can use GTK for the GUI.
    Here's why Linux is easier than Windows:
    Package Managers! Apt-Get and Portage (among others) allow users to install programs MUCH easier than Windows can.
    Hardware Drivers. In SuSE, ALL the hardware is detected and installed automatically! How is this harder than Windows' constant disc changing and rebooting?

  7. #6
    i'm not gonna contribute much. you just should know that using gtk++ under C is very fast and intuitive, i learned and used the basics just in one weekend for a scholar project.

  8. #7
    Well, it'd depend on how much information about the system you want to report back. Java doesn't really have access to a lot of system's information, such as some environment variables. C++ on the other hand will almost guarantee you access to any system info.

    The choice is yours, choose wisely.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts