2010-05-10 29 views
1

好吧,所以在StackOverflow中的初始搜索显示没有任何相关的问题。所以在这里:最简单的方法开始在网点

让我们假装你刚刚开始从事计算机编程的职业生涯。让我们说,无论出于何种原因,您决定使用.Net框架作为编程的基础。我们还要说,你已经接触过一些编程背景,但没有一个是.NET的,所以在你看来,这似乎是陌生的。最后,你没有25年的Win32 API暴露的好处,这就解释了为什么当你开始看它时,它对你来说显得很陌生。

所以问题是:

  1. 什么是.NET是什么样的全面概述?它似乎是一个运行时环境,一组语言,一组通用库以及其他一些东西的组合......所以它就像泥巴一样清晰。具体来说,.Net的关键组件是什么?
  2. 什么是最简单的方法来理解.Net编程有关可用的API?
  3. 哪种语言最适合从微软提供的“股票”语言开始编程? (C++,C#,VB等)
  4. 。程序语言中的.Net编程和编程有什么区别(又名Pascal,Modula等)
  5. .Net编程和编程有什么区别一种“传统”的面向对象语言? (又名Smalltalk,Java,Python,Ruby等)
  6. 正如我目前所了解的那样,CLR为所有其他语言运行提供了基础。 CLR有哪些固有的局限性?
  7. 考虑到要覆盖的API数量巨大,考虑到您之前没有接触过Win32编程,是否值得使用.Net语言(使用Microsoft API)?
  8. 假设您使用.Net编写营利性计划。您可以转售该程序而不会遇到许可问题吗?
  9. 假设你用.Net编写一个免费(免费)程序。您能否以“免费”许可(GPL,BSD,艺术等)的方式向公众提供该程序,而不会违反许可问题?

预先感谢您的耐心等待。

+1

这对于一个问题来说太多了,但作为一个从未使用过Win32 API的人,我发现它是一个非常低的从C#开始的入门障碍。至于8&9,对两者都是(看看Mono - http://www.mono-project.com/) – 2010-05-10 04:54:30

回答

3

键控您的问题:

1).NET代码的Web服务器(ASP.NET),客户端应用程序的完整的框架(Microsoft和单声道),和Silverlight上运行的应用提供了一些操作的系统。您使用哪些部件以及核心部件取决于您正在构建的应用程序。

2)见#1 - 您通常使用Web服务器上运行比你使用哪种语言取决于你想做的事,你喜欢哪种编程模型是什么客户

3)不同的API。它们从函数式编程(F#)到adhoc管理脚本(PowerShell),以及C#,VB.NET和.NET框架支持的动态语言(IronPython和IronRuby)都有所不同。最好的文档和最流行的语言可能是C#。

4)取决于你使用哪种语言 - VB提醒我一种程序语言,但这可能就是我。 5).NET支持IronPython和IronRuby,可能还支持JSharp。底层框架库是不同的,但我相信语言语义是相似的。

6)CLR并不是无处不在 - 尽管在Mono项目和Silverlight之间定期添加更多平台。

7)除非你打算在IL中编程,否则.NET不是一种语言 - 它更像是一个运行时环境。 .NET框架类比原生的Win32 APIs更容易学习和使用,我知道大多数.NET程序员从未使用Win32进行编程。

8)是 - 许多大型的商业软件版本使用的是.NET技术编写的

9)是 - 看CodePlex上和SourceForge上 - 有许多.NET开源项目

1

如果您已经有一些编程经验,Microsoft Visual Studio C#教程对C#和.Net有很好的介绍。

0

什么是 的全面概述.Net是什么?它似乎是一个运行时环境, 一组语言, 库的常见组合,以及可能还有其他一些 事物的组合 ......因此它与 泥浆一样清晰。具体来说,什么是.Net的关键 组件?

CLR Via C#将解释这一点和更多。

由于我目前的理解,CLR 提供所有 其他语言上运行的基础。什么是 CLR的一些固有局限性 ?

上面的这本书将教你所有你需要知道的CLR。