Results 1 to 7 of 7

Thread: TO C# or NOT TO C#

  1. #1
    Join Date
    Sep 2004
    Posts
    281
    Rep Power
    0

    Default TO C# or NOT TO C#

    As anyone else felt the urge to purchase that book, download that PDF or get what ever material will give one the insight he needs to join the world of C# programmers, especially after looking the never ending features set that it has.
    I get that urge every now and then! What stops me is when I remember that I work with c/C++, php,(very little python) and Delphi. Man another language just seems too much

  2. #2
    TwistedPair Guest

    Default

    C# isn't a big stretch from C++, thats part of the appeal. Same deal for VB and VB.NET, synthax is basically the same, however a lot more goodies have been added. Especially for VB.NET I had to write a turing machine interpreter the other day and I nearly went crazy trying to do it in VB6, way to many work arounds where needed to acomplish basic tasks ond concepts (no direct way to use a string as an character array), VB.NET is way more powerfull and by extension all .NET languages have the same expresive power.

  3. #3
    Join Date
    May 2003
    Posts
    229
    Rep Power
    0

    Default

    I decided to join the world of C# programmers a few weeks ago. I am feeling a little frustrated right now, because what I have basically done is to convert myself from an expert C programmer into a novice C# programmer, but I reasonable sure this move will pay off in the long run.

    My guess is that sooner or later you will be learning C# (especially if you write programs for Windows).

  4. #4
    Join Date
    Sep 2004
    Posts
    281
    Rep Power
    0

    Default

    Quote Originally Posted by sking
    (especially if you write programs for Windows).
    Well that’s were things get interesting, as all the documentation I have read suggest that it’s possible to develop one application and have it run on
    MAC/OSX, Linux and UNIX’s, the only thing dividing them would be the GUI as windows has not made the source for there winforms available. So you would have to use libraries suck as GTK# on Linux/UNIX platforms. However if you write a lot of applications that run in console or as a service, you may have just hit the programming jackpot. In other words; you can develop for three in one, as any and all applications that run without a gui developed in dotnet platform will work OS independent once you have the CLR for that os installed(Linux/Unix has mono).
    I have tried this and it worked, off course it was one of the sample hello word applications with no complexity at all
    Last edited by Artificial_Intelligence; Apr 23, 2006 at 11:29 AM.

  5. #5
    Join Date
    Oct 2004
    Posts
    4,814
    Rep Power
    24

    Default

    Quote Originally Posted by sking
    I decided to join the world of C# programmers a few weeks ago. I am feeling a little frustrated right now, because what I have basically done is to convert myself from an expert C programmer into a novice C# programmer, but I reasonable sure this move will pay off in the long run.

    My guess is that sooner or later you will be learning C# (especially if you write programs for Windows).
    Im not sure what you getting at but if you master C then C# should not be a problem to wrap your head around. I know C, Java and C# I can say I more or less mastered them, and it was not difficult to transition from one to the other. Rather I have more appreciation for each as I deal with their differences. Its also possible to integrate Java and C# with C. As for this cross platform development with C# it is not at an acceptable level to make it worthwhile. I have wrote a socks server in microsoft C# and could not run under mono with significant mods to the code, and this has no gui, there are also subtle difference you have to watch for, like for example the multiplex io select call on windows is edge triggered while select call in C# on UNIX is level triggered, those little stuff are everywhere so though the same code may compile they also may behave differently base on how they were implemented on the other platform, it no cut and dry write once run everywhere thing. You have to go through documentation no matter how trivial the method may be. Java is the only languages that maintains consistency between platforms.

  6. #6
    Join Date
    Sep 2004
    Posts
    1,905
    Rep Power
    21

    Default

    C# is not for everyone, especially if you are not developing for the Windows platform, a strong IMO. Stick to C++ and GNU, or C and BSD because of the established platform adaption with Windows, Linux, and Unix

    If you are using MS Windows mostly then MS VS C# dotNet would be an edge, trust me, the new features include a lot of easier and R(apid)AD stuff compared to VS6. VS dotNet would be easy if you mastered VS 6.

    If it is just the C# language then that is easy once you mastered C++ language only. Adding mastery of the dotNet library will take time, especially if you have not mastered the libraries from VC6 or VB6. I can recomend a few ebooks.

    Not every thing needs to be mastered up front before you can use dotNet, but there are certain things that should be learnt first. They are stated in the MS course syllabus for web, desktop, or service. Some things can be done using google or a snippet library. Other things will require on demand reading of the documentation. This is similar for other API's and IDE's.

    The C# language itself should be mastered, along with how to write certain code sections. That would take about a month or less when you ask for help in your difficut areas.

    The sweet part is the library. This is also the longest part which adds technologies which are continuously evolving. Parts of the library are based on various MS technologies. You would spend a lot of time, maybe about half a year learning these, and I mean just the most obvious ones like ASP, ADO, XML Webservice tecnologies. You can keep up with the evolve part as they come out.

    You would not normally prefer to use C# over C++ in cases that require a lot of algorithm building and very little function calling.

    I work with c/C++, php,(very little python) and Delphi.
    Learning C# language maybe useful, but you have to evaluate the Delphi 2006 C# features yourself in comparison with the C++ features. The langauge is easy just watch out for the library base, and do not expect C# interoperability.

    I decided to join the world of C# programmers a few weeks ago. I am feeling a little frustrated right now, because what I have basically done is to convert myself from an expert C programmer into a novice C# programmer, but I reasonable sure this move will pay off in the long run.
    Give it more than a few weeks and never give up for C skills, never!
    Let's act on what we agree on now, and argue later on what we don't.
    Black men leave Barbeque alone if Barbeque don't trouble you

  7. #7
    Join Date
    Sep 2004
    Posts
    1,905
    Rep Power
    21

    Default

    Well, there is plenty that you can do with C# if you are not developing for Windows like writting code that connects to databases, manipulate string and use regular expressions, encrypt files, create http request, and connect to sockets. However, these can be done in other languages.

    The only thing with C# is that the dotNet library is neater compared with VC 6 libraries thus making API more direct to the point. The library is also more entensive in the same comparison. Its beatiful.

    Other langauges have extensive libraries too, and once you have familiarized yourself with the objects and behaviours from those other libraries, then it would be easier to learn dotNet library. In your case, the learning curve would be easy for the above mention tasks.
    Let's act on what we agree on now, and argue later on what we don't.
    Black men leave Barbeque alone if Barbeque don't trouble you

Posting Permissions

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