Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

As a novice programmer and I always wonder about c# capabilities. I know it is still early to judge that but all i want to know is can c# do complex stuffs or something outside windows OS.

  1. I think C# is a proprietary language (I don't know if I said that right) meaning you can't do it outside Visual Studio or Windows.

  2. Also you can't create your own controller (called object right?) like you are forced to use these available in toolbox and their properties and methods.

  3. Can C# be used with OpenGL API or DirectX API

  4. Finally it always bothers me when I think I start doing things in Visual Studio, I know it sounds arrogant to say but sometimes I feel that I don't like to be forced to use something even if its helpful, like I feel (do I have the right to feel?) that I want to do all things by myself? Don't laugh I just feel that this will give me a better understanding.

  5. Is Visual C# like using MaxScript inside 3ds max in that C# is exclusive to do Windows and Forms and Components that are Windows related and maxscript is only for 3d editing and manipulation for various things in the software.

If it is too difficult for a beginner I hope you don't answer the fourth question as I don't have enough motivation and I want to keep the little I have.

Note:

  1. Sorry for my English, I am self taught and never used the language with native speakers so expect so errors.
  2. I have a lot of questions regarding many things, what is the daily ratio you think for asking (number of questions) that would not bother the admins of the site and the members here.

Thank you for your time.

share|improve this question

migrated from stackoverflow.com Dec 27 '10 at 0:35

This question came from our site for professional and enthusiast programmers.

    
Community-wiki? –  Shimmy Dec 26 '10 at 7:44
2  
@user527825: It's not a problem to ask as many questions as you feel that you need to. Just make sure that you spend time constructing them so that they can be answered. The only thing I would advise is to spend some time reading the answers to other questions concerning C# (just click on the C# tag and browse some of the questions that look interesting). A lot of the questions you have here indicate that you are unfamiliar with many of the basic concepts, and most of those things have already been answered here. If you're still confused about something, then post a question. Good luck! –  Cody Gray Dec 26 '10 at 10:26
1  
You have the right to feel and I have the right not to hire you. I am not trying to be a dick, but get real! Many major open-source initiatives would not have been as big without corporate funding. Learn that and deal with it. youtube.com/watch?v=W3Seg0JE1PM –  Job Dec 27 '10 at 2:13
add comment

5 Answers

  1. I think C# is a proprietary language (I don't know if I said that right) meaning you can't do it outside Visual Studio or Windows.

    No, it isn't. See Mono.

  2. Also you can't create your own controller (called object right?) like you are forced to use these available in toolbox and their properties and methods.

    Of course, you can create your own classes. See classes in the documentation.

  3. Can C# be used with OpenGL API or DirectX API

    Yes, it can. See this question and the DirectX namespaces.

  4. Finally it always bothers me when I think I start doing things in Visual Studio, I know it sounds arrogant to say but sometimes I feel that I don't like to be forced to use something even if its helpful, like I feel (do I have the right to feel?) that I want to do all things by myself? Don't laugh I just feel that this will give me a better understanding.

    Nobody's forcing you to use the IDE. You can use your editor of choice and invoke the C# compiler from the command line or a build script.

  5. Is Visual C# like using MaxScript inside 3ds max in that C# is exclusive to do Windows and Forms and Components that are Windows related and maxscript is only for 3d editing and manipulation for various things in the software.

    C# is not an embedded language like MaxScript. You can do far more with it than windows, forms, and visual components.

share|improve this answer
add comment

1.) No C# is an open standard: ECMA-334. There is an Open Source IDE called SharpDevelop or Mono Devlop that is part of the Mono Framework.

2.) Yes you have all features of a OOP language.

3.) See the DirectX SDK.

4.) s. 1

5.) C# is no scripting language. It is a "compiler" language that first creates a binary executable that can be run and it is not a script language that is executed step by step from source.

share|improve this answer
3  
Man, C# is never going to shake the "proprietary MS technology" stigma. Which is a shame, because I really would like to be able to use C# more often than Java when I'm working outside of Windows. –  Rei Miyasaka Dec 27 '10 at 1:09
add comment
  1. C# Is not a proprietary language. See the ECMA-334 standard. When some organization decides to implement the CLR for some OS, you can use the .NET framework and C# on that platform. (Mono is such an implementation)

  2. I do not completely understand that question, but I think you're wondering whether you can write your own classes ? Yes, you can.

  3. Yes, you can use that. You can also use XNA.

  4. There are other IDE's which you can use for C# development; SharpDevelop for instance. Although, I feel that VS.NET with Resharper is at this very moment the most productive IDE to write applications for .NET.

share|improve this answer
add comment
  1. C# is targeted to the .NET framework, but there are external mult-targeted languages based on C#.
  2. You can create your own API and controls and you can even make them appear in the VS toolbar
  3. You can, and especially today, this is much easier since C# has produced the dynamic keyword.
  4. Why reeinvent the wheel when some people did that for you? if you want to do all by your self, you should develop with processor-level languages, and that's also not your own :)
  5. Donno what's MaxScript
share|improve this answer
    
give me rep points and ill vote for this one. –  Anonymous Dec 26 '10 at 10:10
add comment

It's strange what made you feel like this. Whatever the IDE and the framework does for you, it actually makes this the most convenient framework to develop for in the whole world. You can feel free to do anything, change the toolbox icons, extend Visual Studio, and C# can be used for many things, like programming in Linux, extending Microsoft Visual Studio or Office, and there's even a project to program an operating system with it (Singularity). I agree it's not the most open thing in the world because it's Microsoft stuff, but still, it's built around open standards and I've never felt constrained.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.