View previous topic :: View next topic |
Author |
Message |
Paul Guest
|
What language do you use for PC-side programs? |
Posted: Thu Oct 18, 2007 4:07 am |
|
|
Hi,
For my current project I need a small PC program to set and get a couple of parameters to an from the PIC via RS232. I used to use Visual Basic (V5.0) for this but decided to take a look at alternatives as VB is not really supported any more on newer PC's.
I looked at:
- Visual Studio .net (C#)
- Realbasic
- Turbo C# 2006 for .NET
- Turbo DELPHI 2006 for Windows
- Purebasic
- Revolution (RunRev)
- Python
I got kinda swamped by all (im)possibilities and finally settled on RealBasic. I created an app with their demo version and it looks like it does the trick in a relatively simple way.
Before I actually buy RealBasic I am interested to learn what people on this forum use, and why?
Thanks for your time.
Paul Holthuizen |
|
![](templates/subSilver/images/spacer.gif) |
ELCouz
Joined: 18 Jul 2007 Posts: 427 Location: Montreal,Quebec
|
|
Posted: Thu Oct 18, 2007 4:57 am |
|
|
Delphi 2007 for win32 but I use Delphi 7 for Tcomport RS232 VCL!
Very easy to do!
Delphi almost equal to C++ in many ways (Performance,in some case maybe faster)...
Delphi is not equal to VB if you are wondering :P
I think CCS IDE is done in Delphi, this give you an idea how powerful it can be ![Smile](images/smiles/icon_smile.gif) |
|
![](templates/subSilver/images/spacer.gif) |
dyeatman
Joined: 06 Sep 2003 Posts: 1924 Location: Norman, OK
|
|
Posted: Thu Oct 18, 2007 5:37 am |
|
|
I have later versions of Delphi but I use Delphi 7 only because I want to stay away from the Microsoft .NET For what you are doing I suggest that the Realbasic is a good choice. |
|
![](templates/subSilver/images/spacer.gif) |
ckielstra
Joined: 18 Mar 2004 Posts: 3680 Location: The Netherlands
|
|
Posted: Thu Oct 18, 2007 5:48 am |
|
|
For new projects and or companies where there is no history of old projects that need support I would choose between:
- Java
- C++
- Delphi 2007
- C#
Java and C++ are supported on multiple platforms but if your application is only to run on Windows then Delphi and C# will get you results faster.
The 'look and feel' of Delphi and C# is very close which is no surprise when you know the C# architect is the same person who designed Delphi. I'm not happy with the .Net hype but for us it is easier to find people with C# experience than Delphi. Availability of external resources (people) is for us the main reason to move away from Delphi to C#. |
|
![](templates/subSilver/images/spacer.gif) |
kevcon
Joined: 21 Feb 2007 Posts: 142 Location: Michigan, USA
|
|
Posted: Thu Oct 18, 2007 6:25 am |
|
|
I currently use C# and am looking to switch to Java to allow for a broader platform support. |
|
![](templates/subSilver/images/spacer.gif) |
Wayne_
Joined: 10 Oct 2007 Posts: 681
|
|
Posted: Thu Oct 18, 2007 7:22 am |
|
|
Why buy an IDE ?
Look at http://www.sharpdevelop.net/OpenSource/SD/Default.aspx
It is free (open source) offers C#, VB.net and other developent environments.
It conforms to the .net standards, has LOTS of people offering support and help for free.
OK, so there are a few issues with the software but they are and will be rectified.
With this, I would use and do use C# rather than any of the other languages.
I have only recently started developing a major project using it but compared to what you have to pay for something like VS2005 I am quite happy with it.
As long as you install it correctly with both the 1.1 .net and 2.0 .net and if required .net compact framework SDKs then all should be fine.
Only use JAVA if you are doing web development and JAVA suits your requirements.
But even then techknowlogies such as AJAX, PHP, ASP and even .net offer more functionality, easier programming and better all round development than JAVA.
Delphi (Pascal) is very old now and as far as I know, there is not yet a pascal.net so it won't be easily converted to new techknology.
I too vowed never to use and get involved in .net but my job now requires it and with an open source IDE I have started to use it for personal stuff. It does offer easier programming in some respects but does force limitations that were not there in C and C++ which is very anoying. there are reasons for this (which I don't agree with) and also it uses garbage collection. all these things are there to tidy up after the programmer and slow the software down. I feel though that if you can programm then you should be able to tidy up after yourself.
Also the final code MAY only be a couple of kilobytes in size but you still have to install the .net framework of 1, 2 or 3M upwards.
And it is not truly platform indipendant. In fact I would go as far to say it is NOT platform indipendant.
Anyway.
you choose. |
|
![](templates/subSilver/images/spacer.gif) |
mmprestine
Joined: 13 Jan 2004 Posts: 29 Location: Green Bay, Wisconsin
|
|
Posted: Thu Oct 18, 2007 8:27 am |
|
|
First and foremost I go with Java. The NetBeans IDE is very nice and free. NetBeans.org. Many books directly support it for learning.
Second and final choice is the not so favored Visual Studio. I recently downloaded the VS2008 express (beta) editions and they have everything you need to get a pretty decent application done. The express editions are also free. Today C# and VB are nearly identical in function so it is purely a matter of preference in code setup. I prefer C#. |
|
![](templates/subSilver/images/spacer.gif) |
dyeatman
Joined: 06 Sep 2003 Posts: 1924 Location: Norman, OK
|
|
Posted: Thu Oct 18, 2007 9:46 am |
|
|
Quote: | Delphi (Pascal) is very old now and as far as I know, there is not yet a pascal.net so it won't be easily converted to new technology.
|
Just FYI... Delphi 2006 is as new as most everything else out there. It has as much (if not more) capability as Visual C since it now supports both C and Pascal mixed. In addition, Delphi has supported .NET since back in Delphi 8!
As a side note I imagine a few folks here are aware that many of the original MS Windows APIs/Libraries were written in Pascal not C? |
|
![](templates/subSilver/images/spacer.gif) |
jma_1
Joined: 08 Feb 2005 Posts: 147 Location: Wisconsin
|
|
Posted: Thu Oct 18, 2007 9:52 am |
|
|
Greetings,
Java is a beautiful choice for PC applications. The free development tools are outstanding, NetBeans, Eclipse, etc. Unfortunately, your requirement of RS232 is a sticking point. Java was designed to be platform independent and does not easily access local hardware. For RS232 to work, you need to use the non-standard javax.comm package or buy a commercial product. I've used the javax.comm for simple applications with success, but if you are forced to use virtual communication ports, relying on a windows dll can introduce strange errors with little or no support. If you can use a Linux machine, there is a javax.usb package that could directly communicate with a pic which supports USB.
Possible language alternatives:
python - supports RS232 through an add on package; GUI fronts ends possible (some packages very simple to use -> ex. easygui)
LabView - supports RS232; GUI layout simple; statemachine add-on package promotes easy, robuts applications; redistributable executables possible with the application builder; extensive hardware support - relays, daq, etc; expensive
Microsoft productes ->VB, C#, etc.; RS232 support; Express version of IDE freely downloadable; examples online
* I do not care for Microsoft products and would avoid them if possible *
Questions:
can your application support an ethernet interface (TCP/IP, UDP, etc?)? If yes almost any popular language should work (the software is only a tool to accomplish a task)
Cheers,
JMA |
|
![](templates/subSilver/images/spacer.gif) |
Guest
|
|
Posted: Thu Oct 18, 2007 11:58 am |
|
|
Just another thought - depending on your application needs.
You might consider Visual Basic 6 - Easy to use, stable, very cheap (purchase used on eBay). Runs on Windows 9x, NT, 2000, XP, Vista. Setup/Install builder program included. Hardware: RS232 support, USB support, LAN support, Parallel Port support (using external dll). Lots of books available to learn from (again from eBay).
The downside is that it is a dead end - all new Microsoft tools use .NET, some of your code won't be directly portable to .NET (heck but my CCS code isn't directly portable from when I wrote it in 1995 Version 1.x to Version 4.x, so what else is new?).
My 2 cents worth. Steve H. |
|
![](templates/subSilver/images/spacer.gif) |
Paul Guest
|
|
Posted: Thu Oct 18, 2007 3:39 pm |
|
|
Thanks everyone for the information.
I decided I'm going to stick with RealBasic for this project. As stated, the serial port requirement is easily met using RealBasic and buggy as it might be it for €150,- it is pretty straightforward to generate a simple application with.
VB6 is an idea but second hand availability in the Netherlands is limited AFAICS.
I think that in the near future I should look at C# using the SharpDevelop IDE someone mentioned; I downloaded that and toyed a bit with it; it certainly looks usable to me.
Thanks again,
Paul Holthuizen |
|
![](templates/subSilver/images/spacer.gif) |
Wayne_
Joined: 10 Oct 2007 Posts: 681
|
|
Posted: Fri Oct 19, 2007 2:04 am |
|
|
The SharpDevelop IDE is definatley useable and very good. It has a lot of functionality built into it and as long as you have .net 1.1 installed as well as 2.0 and any of ther others you might want to use then the Help system works well.
As I said, there are some issues with it but as with most Open Source development, these issues will be fixed at some point and if there is anything you would like adding to it then put in a request on the forum and if a developer likes the idea you will proberbly see it in the next release. |
|
![](templates/subSilver/images/spacer.gif) |
ELCouz
Joined: 18 Jul 2007 Posts: 427 Location: Montreal,Quebec
|
|
Posted: Fri Oct 19, 2007 3:26 am |
|
|
Do not use VB6 or earlier for Critical operation!
I repeat do not use VB6 for critical operation that could endanger life !
VB atleast before 6 is not as stable as you might think and is very prone to runtime error.
Always use a safety device that detect if the program is not responding or crashed.
In case you might consider controlling large machinery ....
EDIT: VB6... due to the end of life product (unlike you are willing to develop VB6 programs on win9x platform or NT 4),,, will require much more dirty tricks and more lines of code to do the same as language that is currently active... Such Delphi 2007,MS .NET programming product line, Java , they have up to date built-in code/api.
The reason why VB6 is still quite popular is because the VB .NET is very different if not, totally a new language ... and many didnt like this MS move.
My self beeing an experienced VB6 programmer , i never didn't liked the new .NET way... + with the huge amount of Framework redistributable runtimes this finally give the final slap to look for another VB like programming language , i was looking for something active , thats when i found Delphi ,, totally loved... harder than VB but it really worth the effort.
I'm not saying that VB is like Delphi which its false, delphi beeing more complex and powerful (Delphi vs C++ or Java).
Correct me if i'm wrong but i think the new VB .NET isnt compiled in native-code anyway its all interpreted language (MSIL) |
|
![](templates/subSilver/images/spacer.gif) |
octal
Joined: 15 Jan 2007 Posts: 39
|
|
Posted: Fri Oct 19, 2007 5:30 am |
|
|
I personnaly use mostly Delphi 7 because :
1- I have a lot of experience with it
2- It's a very nice and clean language
3- I own a lot of components for it (I bought a lot during my developer life in Delphi)
4- I have a Delphi License ;)
5- Applications done in Delphi (D7) can work on old configurations like PC with Win95, which do not support .NET framework, and a lot of Electronics hobbysts use such config for control and automation.
For new projects instead, for projects intended for use on new PC, I'll for sure use C#.
1- It's a cleaner language, (100% clean OOP)
2- Visual Studio is a very nice dev environment (VS2005 is by far better than Borland Studio 2006 or D2007),
3- SharpDevelop is a very nice and free dev environment
4- C# compiler is free and exists also under Linux (See MONO project)
5- and .NET is really a fatality, you can not avoid it in (very very near) future
6- also the .NET framework is really well done and contains all classes for each kind of tasks, even for comm tasks using IRDA, ETHERNET, or serial comms ... and you can still use unmanaged code to call libs and OCX if you want to use old components writen in Delphi or any other language.
Thats all.
Regards
octal _________________ http://www.pocketmt.com the GLCD Font Creator home ![Smile](images/smiles/icon_smile.gif) |
|
![](templates/subSilver/images/spacer.gif) |
Douglas Kennedy
Joined: 07 Sep 2003 Posts: 755 Location: Florida
|
|
Posted: Fri Oct 19, 2007 10:22 am |
|
|
I would recommend Delphi very very highly. Unlike the other large software company with vast proprietary run time libraries. Borland doesn't assert they own your computer or own rights to anything you might develop using Delphi. |
|
![](templates/subSilver/images/spacer.gif) |
|