`
robbin
  • 浏览: 4836856 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
377a9ecd-1ea1-34ac-9530-9daa53bb2a7b
robbin谈管理
浏览量:138057
社区版块
存档分类
最新评论

谈谈我为什么要学习ruby on rails

    博客分类:
  • Ruby
阅读更多
挺有意思的现象
记得过去还没有创办JavaEye的时候,在技术社区里面推广Hibernate(也算不上是推广,只是和别人交流Hibernate),就有一大批人酸酸的跳出来说,你们今天学习这个明天学习那个框架,全都是跟风,这些框架都是浮云,真正JDBC这种基础知识才是实力的,我就用JDBC,我用的一直很好,我完全没有必要去学习Hibernate......

每当看到这种话,我就觉得特别好笑,用一个我发明的说法叫做“牛逼哄哄的露怯”。没有人逼你学习Hibernate,你不乐意关心Hibernate,那就继续用JDBC好了,这个世界从来都不是非黑即白的。

其实这种人的心态很有意思。他一方面眼红人家学习新的技术,另一方面自己又不想花时间和代价去学习,所以恨不得所有的人都不要去学习新技术,这样他心里就感觉很安全了,正因为如此,他就总是要时不时跳出来打击一下别人,表面上很牛逼,其实虚弱的内心挣扎一览无余。

如果想把技术作为终身职业,那么对于技术人员的起码要求就是不能固步自封,要始终以开放的心态接受新技术。

打好基础知识固然重要(重要到根本无需你一遍又一遍的祥林嫂),但是不接触新技术,新思路,新的理念,很快就会被淘汰掉。

当然学习新技术也不是盲目的什么都学习,什么流行学习什么,而是根据自身的需要,有选择的学习。例如Java Web框架有很多很流行的,Struts,Webwork,Spring MVC,Tapestry,JSF,主流的就有5个,盲目的学习者就是人家说什么他就学什么了。而聪明的学习者应该对这些东西都去接触一下,从中选择一个值得自己投资时间成本去学习的框架。例如对这五个框架我都涉猎过一遍,最终我把时间花在了Webwork上面,事实也证明我当初的投资是正确的。

我学习ruby on rails有很现实的需要,其实即便抛开现实的需要,我也认为如果有空,Java开发人员有必要学习一下,原因是:

1、ruby语言和rails框架的社区力量正在以惊人的速度增长,甚至已经进入爆炸式繁荣的前夜,这不是昙花一现的现象,而是一个时代开始的象征。

2、从我这段时间学习的情况来看,ruby语言有足够的学习深度,我原来以为自己一个很快速的上手,然后就很精通了,但是ruby不像PHP那种方便面,其知识的广度和深度都让我感觉这是一个完整的知识体系。也正因为如此,ruby生命力会很长。

3、 ruby和rails是非常非常Unix-like的东西,经常和操作系统提供的功能有深度的依赖,这和Java这种不依赖操作系统,什么基础设施都自己卷起袖子自己创造的理念相比,非常非常的不同。这样做会带来一个很大的好处,很多在Java里面解决方案很复杂的问题,在ruby方案中就很简单可以搞定,相比之下,让Java显得颇为大而无当。

不过ruby和rails也树立起了一堵墙,这堵墙就是Unix操作系统,要学好我,你就先跨越Unix这堵墙吧。呵呵,这也是为什么rails core team清一色的MacOSX的原因了。

不过我觉得这是好事,我本人是Unix fans,乐意见到这种现象,况且凭借我多年深厚的Unix功底,在ruby fans中,我又站在了一个很高的起点上领跑了。

想学好ruby吗?先在你的电脑上面安装MacOSX/ubuntu作为开发环境咯。
分享到:
评论
6 楼 Julien 2006-09-14  
rails出来之前我玩过RpgmakerXP,那个的引擎就是ruby的
那个整个是一个游戏引擎,很多类和对象协作,出一个rpg的效果(底层封装了win的directx)。
注意那个引擎里面完全完全没有考虑插件或者外接的接口。

但是那个引擎出来之后大家就有很多其它的想法要在上面实现,比如说那个战斗是平板的,但是爱好者想要做出放缩,近大远小,显示血条之类的效果。
于是他们去写类AOP的类方法重定义,结果是出来很多脚本,每个脚本对应一个功能,相互之间基本不干扰。加入和抽掉都很方便。
我自己也做了一些功能发布出去,那个时候我就记住了ruby干这种事情有多强,一个完全没有插件体系的系统能够那么轻易的插入和修正功能,不是简单的修正,有的插件把整个系统都变掉了,原来的战斗是回合的,结果给他改成了时间轴的。完全不懂编程的玩家下载一个脚本放到游戏脚本表的最后就能出各种效果。
5 楼 flyingis 2006-09-14  
如果老板有项目可以基于ruby on rails就爽了。至于开发环境,ubuntu可以,不知道Debian行不行?
4 楼 刑天战士 2006-09-14  
好玩就行,一种语言玩腻了,换另一种,什么语言有深度学什么,什么语言能令我换一种方式思考我就学什么,永远不盲目崇拜一种语言,反正就1,2个星期的事……
3 楼 ddd 2006-09-14  
ruby是unix-like?那偶倒有点兴趣了。
ubuntu一般认为是个人桌面吧,做开发环境不知道是否适合,不过他是debian-like的,并且对于一般的开发,这些linux也没啥太大区别,不清楚ruby到底怎么开发的,也许这些发行版在ruby这方面有区别。
2 楼 buaawhl 2006-09-14  
Ruby的历史已经很长了。
和Java一样,都是95年推出第一版。但是命运截然不同。
IBM放弃Smalltalk,开始大力支持Java。
Ruby还只是局限于一个人的宗教,一个小圈子。

Rails出来了,Ruby才窜红。人们才发现Ruby的语法这么好。
Rails = PHP的迅速敏捷 + Java的清晰构架
(虽然我保留这样的看法,认为Rails仍然不够好,没有完全发挥Ruby语法的优势,但是对于PHP, Java的主流framework,足够成为Killer了)


1 楼 zingers 2006-09-14  
不管什么开发环境,有一套瑞士军刀都很重要
比如java有jodd和jakarta commons
当然跨平台的很多麻烦逃不掉

相关推荐

    RubyonRails4_jb51.rar

    《Ruby on Rails 4 Tutorial》是一本针对初学者和进阶者深入理解Rails框架的经典教程。Rails是基于Ruby语言的一款强大的Web应用框架,它遵循“约定优于配置”(Convention over Configuration)的原则,使得开发者...

    Scrum Poker in Rails5, docker-compose

    Scrum Poker是敏捷开发中常用的一种估算方法,用于团队成员就任务的工作量达成共识。在Rails5框架下实现Scrum Poker应用,可以...通过学习和实践这些技术,开发者不仅能提升自身技能,还能为团队带来更流畅的开发流程。

    sample-rails-gsap-prompter:带 gsap 的演示提示器

    在Web开发领域,Ruby on Rails(Rails)是一个强大的全栈框架,它以Ruby编程语言为基础,致力于简化开发流程并提高开发效率。这个名为"sample-rails-gsap-prompter"的项目,就是将Rails与GSAP(GreenSock Animation ...

    awesome-ruby-security:很棒的Ruby安全资源

    "awesome-ruby-security"是一个专门针对Ruby和Ruby on Rails的安全资源集合,旨在为开发者提供一个全面的学习和参考平台,帮助他们构建更加安全的应用程序。 首先,我们来谈谈Ruby的安全性。Ruby是一种面向对象的...

    PA-2.0:个人助理2.0项目

    Ruby on Rails,简称Rails,是Ruby的一个Web应用框架,遵循MVC(模型-视图-控制器)架构模式。在PA-2.0项目中,Rails简化了数据库交互、路由设置和视图渲染等复杂任务,极大地提高了开发效率。Rails的“约定优于配置...

    howto:如何在Internet上处理事情

    本文将围绕如何高效地在互联网上处理事情,结合标签中的技术关键词,如Ruby on Rails、Swift、Markdown、Vagrant、Elixir、Phoenix框架以及数据分析,来探讨相关知识点。 首先,让我们从Web开发的基础——**Ruby on...

    jruby-lab:JRuby的实验室是jruby内容的存储库。 带有示例和参考

    JRuby的主要传播网站- Wiki和文章一点JRuby历史 JRuby Wiki以及开始使用JRuby进行学习的方式 JRuby on Rails的Wiki部分 有关在JRuby中进行编程需要什么的文章 该参考资料显示了从Ruby类到Java类的转换 JSR-292和...

    资料库名称:勤闲システムの开発実践チュートリアル

    接下来,让我们谈谈Ruby。Ruby是一种面向对象的、动态类型的编程语言,以其简洁、易读的语法而受到开发者喜爱。在开发勤闲システム时,Ruby将作为主要的后端语言,用于处理业务逻辑和数据库交互。Ruby on Rails...

    redis-server下载

    首先,让我们谈谈Redis在Rails(Ruby on Rails框架)中的默认缓存。Rails内置了多种缓存策略,包括动作缓存、片段缓存、页面缓存等,而Redis可以作为其后台缓存引擎。通过配置`config.cache_store = :redis_cache_...

    writingthroughmaterial

    "writingthroughmaterial" 是一个基于Ruby on Rails(RoR)框架构建的网站应用,它专为内容管理和在线展示设计。这个应用允许管理员便捷地管理各种类型的材料,包括音频、文档和图像,以便于用户访问和学习。 首先...

    初识前端后端UI交互,初学者必看

    常见的后端技术有Java、Python、Node.js、Ruby on Rails等。数据库,如MySQL、MongoDB、PostgreSQL,存储并管理应用程序所需的数据。后端开发者还需要关注服务器配置、安全性、性能优化等问题。 **UI交互**,全称...

    flatwhite:https的端口

    而Ruby on Rails(简称Rails)则是一个基于Ruby语言的开源Web应用框架,遵循MVC(Model-View-Controller)架构模式,使得开发Web应用更加高效。 在压缩包子文件的文件名称列表中,"flatwhite-master"可能是指...

    跨站脚本漏洞(XSS)示例

    5. 使用最新的安全框架和最佳实践:许多现代Web开发框架提供内置的安全机制,如Ruby on Rails的protect_from_forgery或Django的CSRF middleware。 总的来说,理解和防范XSS漏洞对于任何Web开发者来说都至关重要。...

    miladrahimi.github.io:Milad Rahimi的网站。 软件工程师,后端开发人员和Web设计师

    后端开发人员通常使用技术如Node.js、Ruby on Rails、Django或Spring框架来构建应用程序的逻辑,同时与前端进行交互,通过API(应用程序接口)传输数据。数据库管理和优化也是其职责之一,例如使用MySQL、PostgreSQL...

    A_E31190672_Elyas_Agus_Suhadak

    此外,还有后端框架,如Express.js(Node.js平台上的Web应用框架)、Django(Python的全栈框架)和Ruby on Rails,它们为服务器端提供了结构和便利,帮助快速构建Web服务。 回到Elyas Agus Suhadak的项目"A_E...

Global site tag (gtag.js) - Google Analytics