PDA

View Full Version : Attn: Programmers, computer scientists etc.



mathare
15th March 2008, 23:46
If you were going to write an application that consists of a graphical front-end connecting to a database (of a format yet to be decided but possibly MySQL) what language would you write it in? Does it matter? Are any of the languages better suited to such a task than others?

Should I be looking into VB.NET? C#? Java? Something else?

I have an Ada/C/C++ background so I can handle OO programming OK. I'm self-taught in VBA and that is what I have used most over the past few years so that is the syntax that comes to mind whenever I start coding but I can soon break back into something more like C++ if I have to.

Any thoughts/advice welcome as I am awash with ideas but don't want to start off learning an inappropriate language for what I wish to do.

vegyjones
16th March 2008, 00:53
I think you should start off with what you know, so English! :)

mathare
16th March 2008, 10:58
I think you should start off with what you know, so English! :)I dread to think where you'd have to start then :yikes:

buddhabee
16th March 2008, 11:16
If you know C/C++ you'll have no trouble picking up C#. The latest Visual Studio 2008 contains LINQ (Language Integrated Query) that allows access to a data stream and doesn't have to load everything into memory.

XML can be read directly into a DataSet that allows you to manipulate that data in any processing you want to do and then write it back to XML. Very easy.

Microsoft are pushing VS 2008 so there's loads of stuff on the Net about it, with useful software trial periods.

There's a magazine I get called Visual Studio Journal that contains good articles. Google it.

'The Code Project' is a great website for programmers.

mathare
16th March 2008, 11:28
You think C# rather than say VB.NET then?

I read some bits on the web last night about MS Visual Studio. I have the VB 2008 Express Edition but I haven't had time to play with it yet.

I hadn't thought of XML - how useful is it for manipulating large amounts of data though? I was thinking SQL/MySQL because I know I am going to have a lot of data to handle so figured a database was the way forward. My experience with other applications that do vaguely similar to things to what I have planned is that they are all GUIs connecting to SQL/MySQL databases. I thinking here of things like Poker Office (not that my application is poker related) as it has a back-end database connected to a graphical front end that allows the data to be manipulated and displayed in various ways, which is the sort of thing I want.

buddhabee
16th March 2008, 11:47
I've only used VB in Excel.

I use C# everyday at work (an early version, mind you, because the company is a bit behind the times). I would use C# with a SQL Server database solely because I know them both.

For storing huge amounts of data a database would be best. I think the amount of data needed to create horse systems would be excessive for an XML document.

I use XML when I want to store small amounts of data. For example, the data used in 'Win2Win Horses to Follow' I would store in an XML document. (It probably is).

Both are data stores that can be read into C# and manipulated as necessary.

mathare
16th March 2008, 11:53
Cheers Buddhabee - very useful.

I'll download Visual C# 2008 Express Edition to sit alongside the Visual Basic version I have and play with them both. I know there are some good educational/training materials on the web so I can start with that, have a play with both languages and see which will be easier for what I am trying to do.

Both VB and C# are marketable skills (although the latter probably more so) so anything I can pick up will be useful. Not that I realy want to go back into software development but I'll keep my options open at least.

Win2Win
16th March 2008, 12:09
If it's server side PHP/MySQL, otherwise use something else.

The differences betwenn all the Visual languages is narrowing, and they all use the same .NET functions, so I don't suppose it matters if it's VB or C~#, or whatever.

mathare
16th March 2008, 12:27
If it's server side PHP/MySQL, otherwise use something else.It's not server side, it's all locally stored (in the currect design anyway).

TheOldhamWhisper
16th March 2008, 13:22
If you have the skills, go with C++ (they do a Visual C++ along with all the aforementioned database integration tools).

C++ is by far the most powerful of the languages. There is also less chance that you'll have to completely rewrite your source code in less than 2 years! They are looking at 'merging' C# with Visual Basic to create some strange hybrid that no one will want!

mathare
16th March 2008, 13:32
They are looking at 'merging' C# with Visual Basic to create some strange hybrid that no one will want!Really? What a strange decision. C# was supposed to be the future wasn't it?

Win2Win
16th March 2008, 15:38
Really? What a strange decision. C# was supposed to be the future wasn't it?

That's what I mentioned above, little betweeen them all now, MS has been 'blending' them for the last 5 years, while moving all the main functions to .NET that they all share anyway.

GlosRFC
16th March 2008, 18:42
It depends how graphical you want the frontend to be. It's relatively easy to port data between PHP, XML, Javascript, C#, C++, Python and Flash's Actionscript.

Familiarity with OOP would be a bonus and make the migration to AS3.0 a doddle.

mathare
16th March 2008, 18:46
It depends how graphical you want the frontend to be.It's more interactive than graphical I guess. Plenty of controls (buttons, combo boxes, checkboxes etc) plus textual display areas, tables and perhaps a chart or two. It's certainly not graphically intensive

TheOldhamWhisper
16th March 2008, 18:55
... Plenty of controls (buttons, combo boxes, checkboxes etc) plus textual display areas, tables and perhaps a chart or two...

Sounds perfect for one of the freebie MS Visual range. You can download the DVD iso for free - useful for putting on more than one test machine should you need it.

GlosRFC
16th March 2008, 18:56
Okay...Flash comes with built-in controls too, but it's fair to say that they do add an overhead to the filesize/download time although that wouldn't be relevant if your app is intended to be used offline.

Handling text is a breeze as you can embed font outlines into Flash - useful if you want to use a non-system font. And it's easy to produce charts in Flash as well thanks to its ability to handle vector graphics...we've even managed to train John to make them now :)

But if you don't want animations, then Flash probably isn't for you.

mathare
16th March 2008, 18:59
Sounds perfect for one of the freebie MS Visual range. You can download the DVD iso for free - useful for putting on more than one test machine should you need it.Done it - installed it :thumbs

mathare
16th March 2008, 19:00
But if you don't want animations, then Flash probably isn't for you.It's an offline app, yes, but no animation. Sorry, you've not converted me to Flash. At least not for this app...

GlosRFC
16th March 2008, 19:06
It wasn't an attempt at conversion - simply pointing out the pro's and con's.

mathare
16th March 2008, 19:10
It wasn't an attempt at conversion - simply pointing out the pro's and con's.I know - and thanks. I was just joshing wiv ya :)

John
16th March 2008, 23:10
Train John, too right! Fortunately I've used a bit of Flash and XML integration at work, so my training wasn't completely wasted, although I'd like to do more...

Surprised you didn't mention Flex, Glos! :wink

GlosRFC
16th March 2008, 23:39
I didn't mention it because it's just Actionscript without the Flash front end.