Page 1 of 1

C#'s future? Or should it be VC++? I'm torn

Posted: Wed Feb 05, 2003 8:47 am
by rathlon
I'm torn between C# and VC++. What I want is to migrate my "online" database front-end (written in php) to a stand alone program. I picked up a book on C and found it to be very helpful. However, I can't find any information, nor do I know where to start on the web, to study the "visual" portion of the language. "Accessing, and controlling data flow" will be the easy part for me, but the visuals I can't get down. I'd even be happy to write this thing in the old 16 bit menu driven style. But I don't know where to start. So, with such frustration, I decided to give C# a try as it starts with basic programming knowledge but moves at a good pace into the visual portion. However, if the likely hood of this language surviving or being replaced soon, I'd rather spend time with VC++. Any thoughts on what I should do? Should I use straight C and write the visuals myself, menu driven??? If so, where do I start, any reccommend sites or books that can help? C# or VC++ IYO?

Posted: Wed Feb 05, 2003 9:12 am
by Stoker
I have never used C# and never C/C++ for windows GUI, but if I where to choose on just those two I would select C/C++ in some form.. But, you are creating a executable frontend, why not use Java? That way, same as with PHP, the users arent limited to one platform... Borland JBuilder has a nice IDE and visual building tools and such..

Posted: Wed Feb 05, 2003 9:19 am
by Stoker
..i just saw you where crossposting (don't, the admin gets cowy) with a slightly different subject..

One thing is for sure, the future of C# is that it is limited to Bill Gates only, or perhaps Steve Ballmer now and again :p C/C++ is the core of most operating systems, so it is a lot more useful in the long run.. Microsoft is using a common runtime thingy for several languages, including visual basic and C#, all .net framed and stuff, so any vulnerabilities in that core will make anything you created for it as good as the core/runtime..

Posted: Wed Feb 05, 2003 9:30 am
by rathlon
Funy thing is, I've tried to learn java, but I'm having one helluva time learning the oop concepts. I just can't coorleate how objects interact and how classes fit, blah blah blah. Any good books on the java language that explain these concepts to a newbie? I'm up for using just about ANYTHING. I just have no idea where to start. Learning something new is not the problem (except for javascript, for some reason I can't bring myself to learn that language), the problem is knowing where to start.

Posted: Wed Feb 05, 2003 10:02 am
by volka
The advantage of using Java or C# is that you will keep the automatic garbage collection you're used to with php. Although there are libraries (or even dialects) that keeps that memory managment thing away from you it is unavoidable that you will encounter it sooner or later.
I have problems with advising tutorial since I prefer technical ones which are sometimes not really feasable for beginner but I found sun's tutorials quite useful to get started with java.
http://java.sun.com/docs/books/tutorial/index.html
it also contains a short introduction to oop: http://java.sun.com/docs/books/tutorial/java/concepts/

Since concepts differ not too much taking a look on the other side probably does not hurt: http://www.gnacademy.org/text/cc/ ;)

Posted: Wed Feb 05, 2003 12:41 pm
by BDKR
rathlon wrote: Funy thing is, I've tried to learn java, but I'm having one helluva time learning the oop concepts. I just can't coorleate how objects interact and how classes fit, blah blah blah. Any good books on the java language that explain these concepts to a newbie? I'm up for using just about ANYTHING. I just have no idea where to start. Learning something new is not the problem (except for javascript, for some reason I can't bring myself to learn that language), the problem is knowing where to start.
Just as a caution. Don't think of OOP and Java as being one in the same. Once you can get the mechanics of programming down in your head, then you worry about paradigms or design approaches. The thing with languages like Java, Python, and Ruby is that at the design level, they are geared towards an OO approach, using Objects in particular (this is a fine distinction as an OO design doesn't imply the use of Classes).

Anyway, "Introduction to Object Oriented Programming" by Timothy Budd is a fantastic book. I recommend it rather strongly.

Now about C#: I thought it was geared more towards web use. Am I wrong? Anyways, you don't have to no OO to do GUI programming, but it certainly helps. Also, you are most like going to be using a GUI lib of sorts, so then it's just a matter of learning that lib and how to create callback functions for things buttons. There is also the fact that unlike web scripts, GUI progs don't have clear start and ending points. They more or less just kind a loop waiting for an event of some sort then go and do something based on the input. Hence the name event driven programming.

Cheers,
BDKR