6

作为一名自学成才的“业余”程序员,我在业余时间为相对较小的项目或与学习相关的小型实用程序进行大部分编程。不过,我非常喜欢它,并且在过去几年中学到了很多东西。通过各种博客和网站,我熟悉了版本控制、错误跟踪、单元测试等。

我目前使用的语言主要是 Delphi(2007 for Win32),以及一些 PHP。我对两者都非常满意(实际上,我将 Delphi 用于一个相当大的副项目),但我所看到的 .NET(尤其是 C#)的东西似乎非常非常有趣。不过,我还没有真正有时间深入研究 .NET。此外,似乎在开始使用它之前需要克服一些严重的财务负担(整个 VS 堆栈对于不花一整天时间编程的人来说是一项相当大的投资)。

所以我的问题实际上归结为几个相关的问题:

  • 对于像我这样的业余程序员来说,.NET 的哪些优势会让转向它是值得的?
  • 什么是开始使用 .NET/C# 的好资源,尤其是。图书?
  • 您将如何为 .NET 构建一个相对便宜的开发堆栈?

我意识到这是一个相当开放的问题,但我还没有真正找到涵盖这些主题的好的网络资源。此外,来自像你们这样经验丰富的程序员的建议往往是无价的!

非常感谢!

4

14 回答 14

14

您将如何为 .NET 构建一个相对便宜的开发堆栈?

下载您最喜欢的 Visual Studio 2008 Express(免费)和.NET 框架(也免费)版本。

更新:如果你不是 VS 的粉丝,你也可以尝试SharpDevelop一个用于 .NET 的开源 IDE。

于 2008-08-23T14:27:45.877 回答
3

您将如何为 .NET 构建一个相对便宜的开发堆栈?

Visual Studio 的 Express 版本是免费的,并且拥有开始使用 C# 编写所需的一切。

于 2008-08-23T14:27:24.473 回答
2

有一整个世界的(免费)开发工具可用,可以在各种场景中为您提供帮助。从Scott Hanselman 的开发者工具列表开始。如果您不想使用 Visual Studio,您也可以尝试(快!)SharpDevelop,这是一个适用于 C#、VB.NET(和 Boo,但您可能不知道的 IDE)的 IDE。祝你好运!

于 2008-08-23T14:36:56.337 回答
2

回答的主题比我想说的查看Charles Petzold的.NET Book Zero的具体问题更多。

于 2008-08-23T14:38:41.187 回答
2

我发现 .NET Framework 和 IDE (Visual Studio) 的开发速度非常惊人。我们从 Redmond 得到了一些非常酷的东西,而且它们对用户反馈的响应能力似乎在不断提高,我认为太棒了 :)

已经列出了很多好的资源。显然,我现在总是向新开发人员提出广泛使用 Stack Overflow 的建议。

我个人认为 O'Reilly 的“Head Rush/First”书籍是市场上最好的软件教程书籍之一。我总是用它们取得好成绩。但是,我自己并没有读过他们的C# 书

于 2008-08-23T14:58:09.063 回答
2

仅通过Mono(使用 C# 和IronPython )使用.NET 开发程序,我使用 IDE 的经验仅涉及Emacs以及使用EclipseMonoDevelop的实验。Mono 是免费的(就像在开源中一样),但就 Microsoft .NET 的参考实现而言是不完整的。尽管如此,Mono 实现对于企业(y)应用程序来说仍然足够大。

在 IDE 角:在与 Anders Hejlsberg(C# 的设计者之一)的一次谈话中,他提到使用 .NET 平台而不完成代码甚至会阻止经验丰富的测试人员。之后我决定尝试 Eclipse 和 MonoDevelop,它们都具有代码完成功能,但发现它们的抽象层使我无法理解框架的真正功能。所以我回到 Emacs 并使用了(非常慢的)在线文档。我知道很多开发人员都对 Visual Studio 发誓,如果没有它提供的帮助,我无法想象针对 .NET 进行编码。我只是无法习惯在软件中育儿:)。

不过有一件事是肯定的,那就是你应该去买Peter Seestofts "C# Precisely";幸运的是,它是您唯一需要的关于 C# 的通用书籍。当/如果您的页面加载到 MSDN 上时,您会发现那里的文档也非常好。Peter Seestoft 还为 c#: C5编写了一个通用集合库。

至于 .NET 的优势:它很大(与 Java 一样)。它已集成到 Windows 平台中。如果您可以使用 .NET 框架,则有很多工作可用。

但是 - 和往常一样 - 我会推荐 Python 在无偿时获得极大的乐趣。(您还可以通过 IronPython(CPython的 Microsoft 实现)访问 .NET 框架。

祝好运并玩得开心点!斯蒂恩

于 2008-08-23T15:29:49.427 回答
2

这是您问题的更新答案,Microsoft 刚刚发布了一个基于 Web 的安装程序,它将一步安装开发环境所需的一切。一项免责声明是仅安装了用于 Web 开发的工具。

链接 http://www.microsoft.com/Web/

您可以在 .net 框架中安装用于 Web 开发的任何部分或全部免费开发工具,包括 Visual Studio 2008 Express、SQL Server Express 等。它还包括 Microsoft 领域之外的开发工具,例如:

  1. 德鲁巴
  2. WordPress
  3. osCommerce
  4. 数据库
于 2009-01-23T20:26:11.857 回答
1

Apress 的 Pro C#是一本很好的书,它涵盖了 C# 语言和许多 .NET 库。

于 2008-08-23T14:32:10.717 回答
1

你也可以看看SharpDevelop。其他出色的 Visual Studio 速成版的遗憾在于,它们在插件方面存在缺陷,因此您没有进行任何单元测试。SharpDevelop 缺少完整版的一些功能,但对 NUnit、NCover 甚至一些重构(但不幸的是,没有像 Resharper 这样的东西)有很好的支持。最出色的是,您拥有用于源代码控制的 Subversion 集成。我现在开始使用 Subversion 并且非常喜欢它。

我在德尔福呆了六年,非常喜欢它。对我来说,C# 优于 Object Pascal 的主要优势在于语法——它更简洁。C# 3 (Dotnet 3.5) 中有一些非常棒的新功能 - 结帐LINQ。但是,如果您是为了娱乐而编码,我不会说有任何驱动理由转换为 Dotnet。你可能会发现现在在 Dotnet 中找到工作的可能性比在 Delphi 中要高。

高温高压

肖恩

于 2008-08-23T14:39:53.227 回答
1

培训视频、教程和文档位于:www.asp.net/learn

于 2008-08-23T16:48:43.277 回答
1

即使你超越了速成版,VS 的标准版也只需 250 美元。

这比大多数人一个月内为咖啡和食物支付的费用要少……只是不要吃。

=)

于 2008-08-23T17:06:19.413 回答
1

我可以建议:Mono项目和MonoDevelop作为 Visual Studio 的免费替代品。您可以在 Windows、Mac 和 Linux 上运行 MonoDevelop!

于 2010-01-28T20:47:00.830 回答
1
What strengths of .NET would make a switch to it worthwhile 
for an amateur programmer like me?

我认为主要的事情是 .NET 框架——它只是一个大型且做得非常好的框架,几乎适用于 Windows 世界中的任何东西。微软不断改进它并在支持旧版本的同时添加新功能,因此您可以轻松地将项目从旧框架转换为新框架。.NET 框架允许您轻松创建控制台应用程序、Windows 窗体应用程序、Web 应用程序、Windows 服务、Web 服务。它有用于数据结构、多线程、I/O、使用数据库、任何东西的类……而且.NET 是托管世界,所以没有内存泄漏、指针和其他类似的 C++ 痛苦。

C# 语言相对容易学习,VS.NET 是一个非常好的 IDE(尤其是如果您使用 ReSharper)。

What are good resources to get started with .NET/C#, esp. books?

微软的通用答案(我们知道,它是 42)是:MSDN。.NET 拥有庞大的社区。您可以在 .NET 上找到很多论坛和书籍。我不会推荐任何东西,但我建议:首先学习语言基础知识,然后学习 .NET 内部结构(什么是 GC、反射等),然后阅读技术知识(Web、Win、Remoting - 无论你会做什么)和)。

How would you build a relatively cheap development stack for .NET?

使用 Express 版本,它们是免费的。

于 2010-03-11T22:28:08.950 回答
0

Pro C# 2010 and .NET Platform Edition Fifth也是一本从 C# 和 .Net 开始的好书。

于 2011-01-10T15:26:39.847 回答