`
sunnyshuhai
  • 浏览: 40519 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

重新认识Ruby和Rails

阅读更多

 

     从接触Ruby和Rails已经有两年时间了,说实话还是挺喜欢这个语言和Web开发框架的。但是一直由于工作中没有用到这些东西,学得不是特别深入,只能了解一下大致情况和发展趋势。今年给我的感觉是Ruby和Rails没有去年那么火热了,也可能是过了刚开始的浮躁喧闹阶段了(个人观点)。一种技术刚开始是的时候都会从概念和所谓的技术优势上进行宣传或者说炒作,但是技术如果解决不了企业的需求,没有一定规模应用,那么这个技术就是没有前景的技术。

 

      从国外的一些统计数据显示,Ruby的使用者数量在明显的增加,基于Rails的项目也增加很快,国内也有不少公司在招聘这方面的开发人员,但是还是没有Python的用户群体那么庞大。一方面是因为没有一家实力雄厚公司的鼎力支持,比如Python就和Google的支持和应用分不开的。另一方面也是Ruby相对来说还是比较年轻的语言,它的突然流行和Rails框架的强势崛起有很大的关系,好多人都是通过Rails认识的有一门优雅的动态语言Ruby,本人就是这样,呵呵!

 

       Ruby和Rails社区的表现也是令人瞩目的,Ruby的版本更新相当快,Rails也从刚开始的1.0到现在2.2,有很多的可用性和性能方面的优化,一些资源和库的整合,使得语言更加高效,更容易使用。但是这里边也有其不好的一面,一门技术如果更新的过于频繁,会使得开发人员的步伐跟不上,让人比较沮丧..... 比如微软的.Net Framework 就是这样有些开发者还在使用2.0,它的3.0,3.5,4.0已经出来了。虽然改动不是特别的大,但是也增加的一些新手学习的难度,不利于技术的推广。总的来说就是要有一定的稳定性,来扩大Ruby和Rails的应用面,而不会让开发人员和用户不知道该如何选择。

 

       动态语言是未来语言的发展趋势,这点从很多的技术厂商都在增加各自平台对动态语言的支持就能看的出来。因此,对于开发人员来说,掌握一门动态语言是非常有必要的。因为相对于静态语言来说,动态语言更灵活轻便开发速度更快。 前段时间一个项目,需要获取Google Analytics 和Google Trends 的数据。但是用程序去取的话就遇到要登录和URL重定向的问题,网上搜不到如果用C#解决的比较好的方案。后来用Python就很轻松的解决了问题,十几行行的代码:

 

        self.login_params = {
            'GA3T': _random_id(11),  
            'GALX': _random_id(11), 
            "continue": 'https://www.google.com/analytics',
            'nui': '1',
            'hl': 'en-US',
            'rmShown': '1',
            "PersistentCookie": "yes",
            "Email": username,
            "Passwd": password,
            'service': 'analytics'
        }

        self.headers = [("Content-type", "application/x-www-form-urlencoded"),
                        ('User-Agent', 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'),
                        ("Accept", "text/plain")]
        self.url_ServiceLoginBoxAuth = 'https://www.google.com/accounts/ServiceLoginBoxAuth'

        params = urllib.urlencode(self.login_params)
        self.cj = CookieJar()                           
        self.opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cj))
        self.opener.addheaders = self.headers
        resp = self.opener.open(self.url_ServiceLoginBoxAuth, params)
   

 

       这也是Python的一些应用库进行了更高层次的封装,但是这对与每个月之运行一次的脚本程序足够了!

 

       总的来说还是看好Ruby和Rails的发展。。。。当然做为开发人员也更看重这些能给我们带来的利益,所以还是希望Ruby 和Rails能在企业应用里边有大的发展!

3
0
分享到:
评论
1 楼 fl1429 2009-02-24  
我们公司已经用了ruby on rails开发企业级应用了!

相关推荐

Global site tag (gtag.js) - Google Analytics