Register to reply

C sharp programming

by Math Is Hard
Tags: programming, sharp
Share this thread:
Math Is Hard
#1
Aug14-04, 01:23 PM
Emeritus
Sci Advisor
PF Gold
Math Is Hard's Avatar
P: 4,923
I am thinking about taking a C# course. The only prerequisite recommended is a C course, which I took this summer, but I know very little about .net so I am not sure how I'll adapt to C#.
I was planning to take C++ this fall but the enrollments are so low I am worried the class might get cancelled. I am looking for some other programming course option that I can fit into my schedule.
Any thoughts on how steep the learning curve might be?
Thanks.
Phys.Org News Partner Science news on Phys.org
Sapphire talk enlivens guesswork over iPhone 6
Geneticists offer clues to better rice, tomato crops
UConn makes 3-D copies of antique instrument parts
chroot
#2
Aug14-04, 01:32 PM
Emeritus
Sci Advisor
PF Gold
chroot's Avatar
P: 10,429
C# is really sold as a simpler, kinder version of C++. While C# continues to gain market acceptance, C++ is much more widely used and preferred. C#, you see, is a Microsoft-only product. If I were you, I'd go for C++ (or Java, which will teach you all the same concepts) and never look back.

- Warren
Math Is Hard
#3
Aug14-04, 02:02 PM
Emeritus
Sci Advisor
PF Gold
Math Is Hard's Avatar
P: 4,923
Thanks for the advice, and for explaining to me a little more about what C# is about. In the C# course description there were a lot of new acronyms such as
MSIL (Microsoft Intermediate Language)
PE (Portable Executable) files
CLR (Common Language Runtime)
and I felt intimidated not having any exposure to these terms.
Maybe I'll just wait until Winter quarter and take C++ then.

chroot
#4
Aug14-04, 02:50 PM
Emeritus
Sci Advisor
PF Gold
chroot's Avatar
P: 10,429
C sharp programming

Well, the important thing about a C++/C#/Java course is that you learn the concepts of good object-oriented programming, rather than getting caught up in all the nasty syntactical oddities of one single language. If you find that your professor focuses more on syntax than on concept, you might want to sit down in his office and have a talk with him. Once you understand how OO works, you'll find it pretty easy to work in any of these languages.

- Warren
faust9
#5
Aug14-04, 05:22 PM
P: 998
Quote Quote by chroot
C# is really sold as a simpler, kinder version of C++. While C# continues to gain market acceptance, C++ is much more widely used and preferred. C#, you see, is a Microsoft-only product. If I were you, I'd go for C++ (or Java, which will teach you all the same concepts) and never look back.

- Warren
This isn't entirely true. C# was "created" by MS because they had the keibosh put on the MS Java implementation. C# has been picked up by the OSS community in the form of the mono project though. You can create cross platform (as with Java) apps using the C# language and the mono framework. In fact, C# has branched into gtk# and cocoa# also through the mono project.

Here, enjoy: http://www.mono-project.com/about/index.html
faust9
#6
Aug14-04, 05:28 PM
P: 998
Quote Quote by Math Is Hard
Thanks for the advice, and for explaining to me a little more about what C# is about. In the C# course description there were a lot of new acronyms such as
MSIL (Microsoft Intermediate Language)
PE (Portable Executable) files
CLR (Common Language Runtime)
and I felt intimidated not having any exposure to these terms.
Maybe I'll just wait until Winter quarter and take C++ then.
Don't let the terms frighten you. Java is a fairly easy language to learn. C# is built around Java ideas and as such is fairly easy to learn as well. If you go here: http://www.go-mono.com/docs/ you'll get a good clue about the structure of mono (C#). Read the mono docs from go-mono, and Got Mono for a real good overview of C# and the mono project.

Good luck, and enjoy.
Math Is Hard
#7
Aug14-04, 08:16 PM
Emeritus
Sci Advisor
PF Gold
Math Is Hard's Avatar
P: 4,923
Thanks, faust and chroot. I appreciate the comments.
I had heard something about MS "discontinuing Java support" but I wasn't sure what that was all about. I'll take a look at those links and see if I can learn a little bit about C# and mono. I think maybe I'll also look around and see if I can find some websites just on OOP in general.
A few years ago I was using ASP (VBScript with javascript and SQL) to create web-based reports from a database. I am not sure if the scripting languages were completely object-oriented but I remember using the "dot syntax" when writing my scripts, and also I remember that it was necessary to create and instantiate an object to use it. I never got into ASP hardcore, I just learned enough to automate some reporting tasks and save myself some time. (Forgotten most of it now).
Is the structure of these scripting languages (VBscript and javascript) similar to the structure of the object oriented languages?
chroot
#8
Aug14-04, 09:56 PM
Emeritus
Sci Advisor
PF Gold
chroot's Avatar
P: 10,429
Yes, yes... Microsoft tried to modify Java and turn it into a proprietary Windows-only language, but were legally barred from completing it... so they invented C# instead. It's just another maneuver to try to force people out of choices to use other operating systems. Personally, I'd suggest avoiding it, unless you plan on working for Microsoft.

Javascript and VBscript are syntactically similar to OO languages, but are not true OO languages. OO is all about classes, inheritance, encapsulation, polymorphism, and other features, none of which are supported by VBscript and Javascript.

- Warren
Goalie_Ca
#9
Aug16-04, 07:47 PM
P: 105
Learn java over c#. For too many reasons to list. It's a solid enterprise language and its clean for learning. My favorite language remains to be c++.
Math Is Hard
#10
Aug16-04, 09:03 PM
Emeritus
Sci Advisor
PF Gold
Math Is Hard's Avatar
P: 4,923
I am hoping I can do C++ next. That seems to be the order they want to teach these languages: C, C++, then Java, as each one is listed as a pre-req for the next. C# isn't a required class for my major, so I may just skip it altogether.
I signed up for Anthropology (I need another social science) in lieu of the programming classes this Fall. I am already going to be doing chem and psych. stats (plus I have my full time job) so my plate is pretty full. I think cramming in two programming languages during the quarter might push me over the edge. I'll pick up the programming again in Winter.

p.s. I ended up with an A in my C programming class so there are a bunch of tutors here I owe a thank you to - namely chroot, plover, Goalie Ca, faust9, AKG, Hurkyl and
e(ho0n3. Hope I didn't forget anyone. Thanks a bunch!
master_coda
#11
Aug16-04, 09:07 PM
P: 678
Unless there's some very specific skill you're trying to learn for a specific reason, I would say that it doesn't really matter which language you learn. If the courses are anything like any of the other language courses I've seen, then they're all going to be taught the same way. If they're taught badly, then it won't really matter which language they try and teach. If they're taught well, then you should be able to learn the other language(s) that have been mentioned here pretty easily, if need be.

Edited to add: If you have an order you want to or are required to learn it in, then do it in that order.
Math Is Hard
#12
Aug16-04, 09:20 PM
Emeritus
Sci Advisor
PF Gold
Math Is Hard's Avatar
P: 4,923
I hope I'll get some good instructors. Thanks, master coda.
plover
#13
Aug17-04, 01:40 AM
HW Helper
P: 430
Quote Quote by Math Is Hard
p.s. I ended up with an A in my C programming class ... Thanks a bunch!
Gald to be of help. (& Congrats!)

If the point of learning one of the languages you mentioned is to get a handle on the basics of object-oriented programming, then, as master_coda was saying, from the point of view programming and design concepts, it doesn't really matter that much which language you pick.

There can be other reasons for making a choice depending the overall reason that you're learning programming. Certain environments/fields use certain languages over others, so if you have any sense of how you might end up using programming, then that might affect a decision.

Deciding how much you want to be tied to the Microsoft paradigm is at least worth thinking about. In my experience, Microsoft's proprietary programming environments tend to impose a certain amount of structure on how to do things. I imagine this can be helpful if a programmer has no need/desire to program for systems other than Windows, but I suspect it could be a hindrance if the distinction between general programming principles and Microsoft's overlays is not clearly delineated. However, I've had no experience with C#, so I don't know to what degree my caveat applies to it.
evert
#14
Aug18-04, 07:49 AM
P: n/a
Quote Quote by Math Is Hard
I am thinking about taking a C# course. The only prerequisite recommended is a C course, which I took this summer, but I know very little about .net so I am not sure how I'll adapt to C#.
I was planning to take C++ this fall but the enrollments are so low I am worried the class might get cancelled. I am looking for some other programming course option that I can fit into my schedule.
Any thoughts on how steep the learning curve might be?
Thanks.
Think you should first ask yourself why you want to take a C# course. Is it because you want a carrier as computer programmer or you just like to know something about programming? If you just like to know something about programming I recommend C++ or java instead since it is more commonly used than C#. Based on your name "Math is hard" I assume you are not planning on writing scientific programs for which I would definitely recommend C++.

Good luck with your study!

_________________________________
Evert Rozendaal
Programmable calculators for palm, PocketPC and windows
Math Is Hard
#15
Aug20-04, 07:09 PM
Emeritus
Sci Advisor
PF Gold
Math Is Hard's Avatar
P: 4,923
Quote Quote by plover
Deciding how much you want to be tied to the Microsoft paradigm is at least worth thinking about. In my experience, Microsoft's proprietary programming environments tend to impose a certain amount of structure on how to do things.
With the Microsoft tools that I've worked with (admin, rdbms and office apps), I have noticed that everything goes pretty swimmingly until you decide you need to do something that MS hadn't planned on you ever needing to do. Then things get hairy fast. (and there is a very subtle but smug undercurrent of "hey, we're Microsoft and we know your needs better than you do. We spent a lot of money researching everything you might possibly want or need.") I am guessing it is pretty much the same with using their programming environments.
But the truth is I always end up working in Microsoft shops, except for my brief couple of years working on Macs (and Amigas in the early, early days), so the Windows enviroment, interface, and metaphors are what I am comfortable with. Maybe I'll try to shake things up when I do C++ and set up a machine with Linux, and see if I can write and work in a completely non-MS environment. Might be fun.


Register to reply

Related Discussions
Sharp shadow Classical Physics 10
Need Help in C Programming Programming & Computer Science 8
FYI: Sharp paper corner in the eye = bad General Discussion 61
US state department won't report on sharp rise in global terror Current Events 4
Can someone please proofread my NASA SHARP essay? Academic Guidance 4