English 中文(简体)
从桌面开发转向Web开发 [已关闭]
原标题:
  • 时间:2008-11-12 22:05:06
  •  标签:
Closed. This question is opinion-based. It is not currently accepting answers.

想要改进这个问题吗?请更新问题,使其可以通过事实和引用回答,通过编辑此帖

Closed 7 years ago.

到目前为止,我所有的编程经验都是桌面开发(主要是带有OpenGL / DirectX的C / C ++),但我对尝试一些Web开发感兴趣。

我正在考虑的两个方向是Ruby on Rails和ASP.net。

哪一种被最广泛使用?

拥有哪种技能更具市场价值?

谢谢!(xièxiè!)

最佳回答

为什么不花几天或一周的时间来尝试一下Rails,仅仅是为了好玩呢?像之前的许多开发者一样,你可能会真的喜欢它并爱上Ruby,以及重燃你的编程兴趣。如果不行的话,你也可以选择熟悉的ASP.net。

其他评论人并没有提到Ruby和Rails的最大优势是编程的愉悦感。

最近,Ruby编程天才非常抢手。需求远远超过供应。从收益潜力上来看,你可以自己算一下。

问题回答

PHP,Ruby On Rails,ASP.Net或Java。

这是宗教信仰的选择,取决于你问的人是谁。

每个人你问都会给出不同的答案。

你应该问问自己想要如何工作,PHP、Java和ASP都可以让你编写混合代码和标记语言的标记,或是编写代码让它为你写标记。

老实说,这是主观的,没有人能给你一个直接的答案。

鉴于你面临的两个选择,ASP 对于产业来说可能是一个更好的选择,因为它有很多钱可赚,而 C# 又足够接近 C/C++,以至于可以阅读。

我大部分时间都花在做ASP.NET开发上,最近由于很难测试我的应用程序,我开始对它有所抵触。就像Lubos Hasko上面概述的那样,在ASP.NET MVC、LINQ和C#的新功能以及编写可以被Silverlight消费的.NET Web服务的能力方面,我又对它感到兴奋,并认为你加入其中会表现得很好。话虽如此,我没有Ruby的经验,但在这里看到一些评论后,我想我会去看一看它。

学习Ruby将帮助您学习一个与编程相关的不同思考方式。即使您确定它不适合您,它也将帮助您成为更好的程序员。对于其他几种语言(包括Python),同样适用。Ruby开发人员的工作机会较少。

ASP.Net 是一种相当平凡的开发平台,可用于开发平凡的网页应用程序,不会真正挑战作为程序员的思维方式。就业和咨询机会更加广泛。

从这一点来看,这是你的决定。六年前我选择了Ruby。

如果你计划进行企业业务开发,那么我个人认为 ASP.NET 是最佳选择。

如果不这样做,RoR肯定会增加你的知识广度。

在做决定之前,我建议先看看《Rails for .NET Developers》这本书。至少,可以浏览一下Softies on Rails这个博客。

小心被“周围有更多.NET工作”这一观点所蒙蔽。这可能是真的,但在困难时期(即现在和接下来的一两年内),你可能会看到越来越少的工作职位被越来越多的.NET开发人员争夺。好时期有很多工作机会意味着在不好的时期会有很多竞争对手。所以,值得尝试

分支出去,学习一些新的东西。关键是保持敏捷,而不是宗教式地坚持一种技术,这样才有市场竞争力。

毫无疑问是.NET平台。

把RoR作为次要语言。

作为一名 C++ 程序员,你可能不喜欢 Ruby 的本质和特点。你甚至可能讨厌它。对于大多数 C/C++ 程序员来说,类型安全和严格性是一个重要问题。如果你进入一个类似于 Ruby 的类型自由、在运行时“动态可变”的环境中,它会感觉非常松散。

从语言和思维角度来看,C#将是更简单的选择。我不建议再进行经典的ASP.NET开发了。所谓的WebForms正在迅速过时和过时。微软的MVC框架第四版刚刚在几天前发布,它非常棒。这是正确的选择。

那么,为什么不只使用Ruby on Rails呢?为什么要使用微软MVC呢?有很多很好的理由可以解释。

  1. A strict type safe compiler
  2. Fully compiled code leads to speed. All of your code is fully transformed to X86 machine code before it runs,
  3. High performance. C# is very very fast. Ruby is very very slow. C# approaches C++ levels of performance. Ruby is slower than Perl, Python and Lua. There is a very large performance gap.
  4. You get a rich IDE. The thing I personally can t stand about RoR is that you are mostly stuck in a plain text editor and a command line console. ASP.NET MVC means access to the power of Visual Studio
  5. RoR doesn t scale. Microsoft MVC does.
  6. I like the simplicity of Microsoft Test
  7. I haven t gotten far with it yet, but Unity seems like a nice AOP IOC. I ve gotten farther with it than with Spring or Windsor.




相关问题
热门标签