开发者

Easiest Way To Get Started In Dot Net

开发者 https://www.devze.com 2022-12-30 05:00 出处:网络
Ok, so the initial search in StackOverflow shows nothing related for this question.So here it goes: Let\'s pretend for a moment that y开发者_如何学JAVAou\'re just getting started in a career in compu

Ok, so the initial search in StackOverflow shows nothing related for this question. So here it goes:

Let's pretend for a moment that y开发者_如何学JAVAou're just getting started in a career in computer programming. Let's say that, for whatever reason, you decide to use the .Net framework as a basis for your programming. Let's also say that you've been exposed to some programming background, but not one in .Net, so it seems foreign to you at first. And lastly, you don't have the benefit of 25 years of exposure to the Win32 API, which explains why it seems so foreign to you when you start looking at it.

So the questions are:

  1. What is a comprehensive overview of what .Net is? It appears to be a combination of a runtime environment, a set of languages, a common set of libraries, and perhaps a few other things...so it's about as clear as mud. Specifically, what are the key components to .Net?
  2. What is the easiest way to understand .Net programming with regard to available APIs?
  3. Which language would best suit beginning programming out of the "stock" languages that Microsoft has to offer? (C++, C#, VB, etc.)
  4. What are some differences between .Net programming and programming in a procedural language (aka Pascal, Modula, etc.)
  5. What are some differences between .Net programming and programming in a "traditional" object-oriented language? (aka Smalltalk, Java, Python, Ruby, etc.)
  6. As I currently understand it, the CLR provides a foundation for all of the other languages to run on. What are some of the inherent limitations of the CLR?
  7. Given the enormous amount of API to cover, would it even be worth learning a .Net language (using the Microsoft APIs) given that you would not have prior exposure to Win32 programming?
  8. Let's say you write a for-profit program with .Net. Can you resell the program without running afoul of licensing issues?
  9. Let's say you write a gratis (free) program with .Net. Can you offer the program to the public under a "free" license (GPL, BSD, Artistic, etc.) without running afoul of licensing issues?

Thank you in advance for your patience.


Keyed to your questions:

1) .NET code can run on web servers (ASP.NET), client apps on the full framework (from Microsoft and Mono), and Silverlight apps on a number of operating systems. Which pieces you use and what the core pieces are depends on the application you are building.

2) See #1 - you typically use different APIs running on web servers than clients

3) Which language you use depends on what you want to do and which programming model you prefer. They vary from functional programming (F#) to adhoc admin scripting (PowerShell), along with C#, VB.NET, and the dynamic languages supported by the .NET framework (IronPython and IronRuby). The best documented and most popular language is probably C#.

4) Depends on which language you use - VB reminds me of a procedural language but that may just be me.

5) .NET supports IronPython and IronRuby and maybe still supports JSharp. The underlying framework libraries are different, but I believe the language semantics are similar.

6) The CLR does not run everywhere - although between the Mono project and Silverlight more platforms are added on a regular basis.

7) Unless you are planning to program in IL .NET is not a language - it is more like a runtime environment. The .NET framework classes are much easier to learn and use than the native Win32 APIs and most .NET programmers I know have never programmed using Win32.

8) yes - many major commercial software releases are written using .NET technologies

9) yes - look at codeplex and sourceforge - there are many .NET open source projects


The Microsoft Visual Studio C# Tutorials are a very good introduction to C# and .Net if you already have some programming experience.


What is a comprehensive overview of what .Net is? It appears to be a combination of a runtime environment, a set of languages, a common set of libraries, and perhaps a few other things...so it's about as clear as mud. Specifically, what are the key components to .Net?

CLR Via C# will explain that and a lot more.

As I currently understand it, the CLR provides a foundation for all of the other languages to run on. What are some of the inherent limitations of the CLR?

The above book will teach you all you need to know about the CLR.

0

精彩评论

暂无评论...
验证码 换一张
取 消