瞎扯淡 请教一个新手是否应该选择 Ruby 的疑惑 (与 ASP.NET MVC 比较)。

CoffeeDeveloper · 2012年08月15日 · 最后由 woaigithub 回复于 2013年01月06日 · 7115 次阅读

其实为什么会发这个帖子呢,是因为个人在情感上和技术上遇到的选择的困惑,想在这里得到各位友人们的帮助,在这里潜水很久了,第一次发帖。

先简单的介绍一下我的情况:一个专科生,非计算机专业,因为个人对计算机技术的爱好而投身于程序员这一职业。目前在珠海一家网络公司做 ASP.NET MVC & WebForm 的开发,在个人技术领域对于前端比较深入点,所有技术都是我这两年自学而来(我 11 年 7 月毕业,10 年开始自学),基础并不算很差,自学能力尚可,公司对我的评价也不错。

按照道理来说我应该继续深入学习 ASP.NET 会比较符合我现在的实际,不过上天让我遇到了 Ruby 遇到了 RoR。Ruby 和 Rails 框架的优美深深的吸引了我,让我有种想让 RoR 开发成为我的工作的冲动。我此前在学校的时候使用了一年的 Linux,学了 C 开发,后来想找相关的开发工作的时候发觉学历和基础达不到要求(不过去做了短暂的 Linux 运维,不过因为实在不喜欢运维工作而辞职了),因此对于 Linux 开发有着一种独特的爱好。不过其实说真的,RoR 和 ASP.NET MVC 的差别并非十分大(ASP.NET MVC 模仿了 RoR,这点大家都知道),不过正因为在工作和学习的过程中我对 Web 开发有了更多的思考。

1、.NET 作为一个“通用框架”有点过于庞大,对于 Web 开发来说不够灵活。 2、C#对比Java来说优雅了很多,不过对比起Ruby还远远不够。 3、Windows 作为服务器实在不太给力。 4、ASP.NET 的部署成本高于 RoR 5、RoR 有着更广泛的开源资源支持。 6、Ruby 的社区文化更好。

当然 ASP.NET 对于 RoR 也有一定的优势,但是从整体来说,我个人更加倾向于 RoR 多点。但是问题也来了: 1、我目前正处于一个职业发展的阶段,更加深入的去了解.NET 开发能快速提高我的“境界”(薪资、职位等) 2、Ruby 的工作难于寻找,在珠海的一些招聘上压根看不到。由于个人原因只想在(珠海、深圳、广州)工作,而 Ruby 的繁荣地区却在北京、上海。

我个人在目前的公司呆的十分愉快,一两年内也不想换工作(与公司承诺了,做人要诚信)。在空闲的时间里自学这 Ruby 和 Rails。目前我亲戚有一个项目会让我来单独做(这个项目以后可能会发展成我的一个事业),我想请教的问题是:

1、我是应该继续学习 RoR 开发,然后在合适的时候转到 RoR 的开发工作上吗?还是应该深入的去学习 ASP.NET? 2、手头上的项目是用 RoR 做还是 ASP.NET 做呢?(RoR 我还只能算是一个菜鸟)

期待你的沟通。

想学就学,别人说的没用

#1 楼 @jjym 其实这个我也懂(任何事情最终都是由自己做下决定),不过像这种东西有一个选择成本在这里,和你们沟通一下,能够让我更好的作出决定。谢谢你的回复!

1. ASP.NET 有其优势,不过它所依赖的 Windows 平台,这么多年来实践也证明这个组合用来做 Web 优势不太。众多优秀网站,我看过的用 ASP.NET 只有一两个。。。真只有一两个。还是相信大家的选择,果断 RoR 吧。

2. 用 RoR 做,在实践中学习是最快的吧,不要等学会再去用。

另: 我们在深圳,而且需要 Python/Ruby 的人才,不只在北京、上海才有!当然比较少,哈哈。可以交流一下!

ASP.NET 的技术难度其实比 rails 要高一点。 不赞成在入门期同时学两门同类技术,因为精力有限,技术无限。人与人的差距来源于 8 小时以外。 工作重要,爱好先别管。 通了一门技术,再学另一门类似的技术其实是很 easy 的。web 开发就是 http、html/css、js、前置请求处理、db、cache、orm 等等,在这之上掺点语法糖、注解、元编程、动态运行时、COC、DSL 等等等。难点其实都在类库和生态环境。 建议你先成为公司的专家,之后不管转战什么方向都是游刃有余的。 另外,rails 框架也就那样,不需神一样来膜拜。 当然,最重要的一条准则是:什么理由都比不过兴趣,因为兴趣是最好的老师。

你是做.net 的,就用.net 搞。以最快的速度做出你那个对你以后影响很大的项目,发财了再回过来随便玩玩吧。

#4 楼 @tedeyang 呵呵,非常谢谢你的回复,很有启发,你说的很有道理也正是我之前一直考虑的东西。 #3 楼 @lincank 用 ASP.NET 的优秀网站还是不少的,比如http://stackoverflow.com/ http://www.cnblogs.comASP.NET的平台局限性确实大了点^_^等等,不过感觉

#5 楼 @hhuai 呵呵,哪里有那么容易发财啦^_^ ~其实也没有那么夸张啦,只不过通过独立完成项目能够更好的理解而已,毕竟在公司都是模块化分工,没有自顶而下。

工作的时候你可以继续用 asp.net 呀,可以把 Rails 作为兴趣,当然尽可能在工作中推用 Rails 开发,就算不成,也可以将 Rails 里面某些优秀的做法在 asp.net 里面实践。

其实老板不会太在乎你用何技术实现需求的,只要是结果是好的就行了。

如果楼主喜欢 geek 文化,rails 确实比较契合,当然 geek 文化重在折腾,呵呵。

#8 楼 @huacnlee 这个估计很难,因为现在公司的整体架构完全在.NET 上,而且大大小小项目有一几个,对于老板来说完全是不会考虑的(从风险、资金上说)。不过借鉴 Rails 的优秀设计倒是必须的。正如@tedeyang 所说的,精力是有限的特别是对于我这种上不上下不下的人来说,专精才是目前所需要。所以才会更多的考虑专研那一块。

#9 楼 @itsvoid 是的,我正是非常喜欢 geek 文化所以才会特别喜欢 RoR~^_^

我觉得这两方面最主要区别在于 Ruby 是一门非常不错的语言,可以从这方面考虑!

#12 楼 @kevin__liu ,严重同意,ASP.NET MVC 已经很努力的再学 Rails 了,可以 C# VB.NET 木有 Ruby 这种 Sexy 啊

做 Web Rails 综合的优势 大于 ASP.net。 Ruby的语言也很强大,不过和C#相比,重构能力比较弱,但是其它方面都很强。 我是从 C# .net winform wpf 转到 Rails 上的。 我建议你去找一家专门做 rails 开发的公司, 因为利用业余时间学习,精力有限,进步的很慢了。

#13 楼 @huobazi #12 楼 @kevin__liu 我也真是因为 Ruby 而喜欢上 Rails 的。Ruby 给人一种很直观很唯美的感觉,能快速真实的把程序猿心中的想法实现出来。

#14 楼 @ery 我也考虑过这个,真心觉得 RoR 做 Web 更贴合,不过在珠海相关的招聘网上面真没见到过招 RoR 的,感觉 RoR 最大的劣势就是找工作难。。。

#16 楼 @CoffeeDeveloper 你可以考虑去 北京 上海 杭州 等 Rails 公司比较多的地方,如果你因某些原因不能离开现在的城市,那么只能建议你自己利用业余时间学习 Rails 啦。

我觉得你可以兼修,同时学习两种,了解两种的同异,这是一种美妙的事情。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号