当我学习HTML时,我喜欢构建页面并按照我想要的方式安排所有内容的方式。
然后我转到CSS并了解到您可以快速交换设计而无需重新编码页面。只需几次CSS更改,您的HTML设计就可以从一个主题转到另一个主题,任何元素都可以成为任何其他元素!使用CSS,我可以设计看起来像图像的跨度!
从HTML迁移到CSS扩展了我的设计概念,实现了我后来学到的模块化事物 - 就像MVC一样。
我现在是一位非常称职的PHP程序员,正在考虑Ruby。我在google上提取的大部分内容都是PHP vs Ruby rants,它们并没有真正帮助我们。它们是两种不同的语言,从不同的角度来看它们的风格。 PHP看起来像C ++ strlen($string)
,而Ruby看起来像服务器端JavaScript。 str.len()
我想知道关于红宝石的前三件事情,它可以让我作为一名程序员真正打开我的眼睛,并证明我知道它需要时间来拾取并掌握一门新语言。
请不要提及抽象的东西 喜欢语言成熟,或者显而易见 图书馆就像AR一样存在于两者中 语言。
现在几乎每个网站都使用MVC 编程语言,所以它没有 算一算。它也不是 足够的自我 涵盖一切。 MVCLLCC (模型/视图/控制器/库/地点/缓存/配置) 更准确。
:UPDATE:
显然,与我使用的其他语言相比,Ruby中没有太多新内容。块似乎只是具有不同名称的函数。 procs似乎是带回调的块,就像一个钩子系统。 MVC,AR和其他所有语言已经在其他语言中。
但是,我相信我看到的最令人兴奋的事情是你可以在运行时打开类并添加新方法!这是一个非常重要的概念,真正消除了PHP的一些障碍。您不再需要扩展子类只是为了向父类添加一些方法。
答案 0 :(得分:4)
嗯,你删除了一些使Ruby非常有趣的东西,所以我认为任何剩余的列表都会有点武断。这就是我认为Ruby比PHP更好的原因:
map
和fold*
方法等函数。它还大量使用块(也称为“闭包”),它不仅开辟了一些非常好的编程风格,而且还允许您编写一些非常通用的代码,可以根据您的需要以非常具体的方式使用。 / LI>
String
课程只是为了添加rot13
方法。答案 1 :(得分:3)
我也会提名延续(callcc
),但它们似乎相对模糊(很遗憾),并且在1.9中消失了。
答案 2 :(得分:2)
我喜欢Ruby的三大优点:
很难在3点停下来,但也许其他人可以增加更多。
最好的事情是为自己尝试一些代码。祝你好运,玩得开心。
答案 3 :(得分:1)
至少有一个适用于我的理由(也许你也是这样):ruby处理面向对象编程的方式在我对编码和体系结构的思考方面已经“释放”了很多。 Everything 是一个带红宝石的对象......
答案 4 :(得分:1)
我想试一试。我曾经是PHP编码器,然后切换到Ruby,从不回头。唯一的缺点是PHP中的文档明显更好(我甚至会说PHP有最好的文档之一)
答案 5 :(得分:1)
以下是我非常喜欢的三件事。 我不会谈论语言本身,而是谈论我喜欢的红宝石世界。
测试
有很多框架可供使用。如果发现它们很简单。比我在JAVA尝试的任何东西都容易得多。 ruby社区非常以测试为中心,您可以找到非常好的截屏视频和教程来帮助您入门。 它改变了我编码的方式。
滑轨
我相信我开始了(似乎很久以前:))。使用Html +表格然后是CSS然后是PHP等。 2年前我发现了Rails。我真的认为这是一个了不起的框架。 从我的角度来看,如果你进行Web开发,它是迄今为止最好的。
我很好奇所以我看过其他的东西,比如django,CakePHP,Zend等,但我找不到像rails一样好的东西。当然这是一个品味问题,但我强烈建议你尝试一下。
Rails不仅仅是一个MVC。这是一个易于使用的MVC。
Ruby!= Rails。 但是,随着Rails
可读语法
exit unless "restaurant".include? "aura"
您可以尝试this interactive online tutorial(15分钟),看看您是否喜欢这种语法。
答案 6 :(得分:1)
答案 7 :(得分:0)
Ruby相对较新。
因此,大多数使用Ruby的教程都使用最新的最佳实践。
它与其他语言有很多不同的东西,所以它是你爱或恨的语言。我个人并不喜欢它,我相信Ruby粉丝很快就会出现并提供一长串优势。不久之后,这个问题将被视为主观的。
答案 8 :(得分:0)
Ruby块非常棒!
您可以在其上创建DSL并提高无法通过匿名功能实现的代码可读性。一个微不足道的例子是这样的:
def it(expect)
yield expect
end
it 'should do as I want it to be' do |this|
puts this
end