阅读更多

6顶
2踩

编程语言

原创新闻 开发一个社交网站,使用PHP还是Ruby?

2012-09-07 14:14 by 副主编 wangguo 评论(25) 有24699人浏览
关于使用何种语言来开发一个网站或应用,似乎一直在困扰着广大的开发者。如果开发者只会一种编程语言,就不存在这种问题了。但问题是,大部分开发者往往都掌握两种甚至更多种语言,这种问题就产生了。或者,在一个公司中,不同的开发者擅长不同的语言,就更容易引起争论。

因此,Hacker News中也有大量关于语言之争的话题,比如“开发大型web应用,你会选择什么作为后端语言?

近日,又有一个相关话题出现:
引用
想开发一个社交网站,纠结于PHP和Ruby,哪个更适合?需要考虑扩展性、性能、容易度、相关支持、托管……


以下是一些有才的回复:

Lazare 写道
任何语言都可以扩展,且都可以表现很好。哪种语言对于开发来说更简单且支持更多你应该知道。对于托管PHP和Ruby应用,都比较简单、容易且便宜。如果你已经掌握PHP、Ruby中的任何一个,那就使用它吧;如果不是这样,那就使用Ruby,这是一个更好的语言,并且同样有一个成熟的生态系统。

扩展和性能主要是架构的问题,在很大程度上取决于你所要实现的功能。你可以使用varnish/nginx/memcached作为基础,并使用CDN来服务静态资源。实际上,语言只是一个小枝节,因为没有语言足够快,所有的都需要预计算和缓存。

如果你对这两种语言都不熟悉,那你会发现Ruby更容易学习、更容易用于生产。此外,你还需要选择和学习一种框架,这会增加一些开销。

大部分(不是所有的)同时使用PHP和Ruby的程序员,会比较讨厌PHP,喜欢Ruby。但是,你会发现,PHP开发者容易聘请。


anujkk 写道
选择一个开发起来更舒服的语言。框架的选择也是比较重要的。如果你擅长PHP,可以选择codeigniter或symfony这样的框架,如果你使用Ruby,那就选择Rails。

我已经使用PHP、Ruby、Python开发了一些应用,我个人最喜欢Python/Django或Python/Flask。

如果你想使用第三方的API(如Facebook API),请确保它有针对你所选择语言的官方SDK。


shanelja  写道
我两个都用过,但更喜欢PHP。

我不说Ruby更好或PHP更好,这实际上取决于你使用的水平。但我在开发过程中发现,PHP更容易扩展,性能更好,更容易托管(实际上也有大量的Ruby主机)。

对于语言支持,PHP更好一些,因为它有一个更大的使用群。但是,无论使用哪一种,你都能从Google获得帮助。

你应该根据个人喜好来定,例如,我发现编写Ruby代码更加有趣,但调试起来很不爽。而我已经使用PHP这么久了,那些错误信息对于我来说就如同母语一样。


eclipse31 写道
这两种语言我都会,但我更倾向于PHP,因为:

  • 熟悉的语言
  • 广泛的支持,托管无处不在
  • 不受Rails规范类似的限制
  • 经过验证的可扩展性
Ruby,恕我直言,是远远优于PHP的,但你必须学习一个框架,如Rails、Sinatra或其他的,以便构建和运行你的应用。使用Python也是如此。尽管PHP也有大量的框架存在,但你不使用也能很容易地创建一个原型。


timurtamerlan 写道
我建议你考虑:

  • 劳动力成本。解决同一级别的任务,Ruby开发者的费用可能比PHP开发者贵两倍。
  • 劳动力供应。当你需要时,是否可以很容易地找到PHP程序员或Ruby程序员。
对于我来说,绝对是PHP。Ruby程序员太贵了。


borplk 写道
讨论这些没有意义,就如同问:苹果和橘子,你更喜欢哪一个?

你会发现每个人都有一套自己的标准和选择,你需要自己尝试。如果你已经知道如何使用PHP创建一些东西,那么重新使用Ruby来开发没有太大的意义。


相信对于这个问题,各位也都有一套自己的选择标准。
6
2
评论 共 25 条 请登录后发表评论
5 楼 fjjiaboming 2012-09-07 19:08
Ssala
4 楼 依然任逍遥 2012-09-07 18:24
想多学习就用Ruby吧,好玩。
3 楼 pppqqq800 2012-09-07 18:07
删帖速度好快~~~~
2 楼 输入法 2012-09-07 17:11
bing_zz 写道
问:苹果和橘子,你更喜欢哪一个?
答:喜欢咖啡

噗~
1 楼 bing_zz 2012-09-07 16:06
问:苹果和橘子,你更喜欢哪一个?
答:喜欢咖啡

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • spacebuilder v3.2.0.2 安装版.zip

    Spacebuilder是一款基于asp.net mvc业内领先的web2.0建站平台。结合博客、群组、论坛、微博、分享、相册、文件、活动、投票、资讯等应用模块(此外还提供问答、招贴、招聘等扩展模块),可以一站式快速的搭建具有SNS特征的在线社区。借助SpaceBuilder平台的服务(私信、邀请、权限、审核、隐私、积分、通知、动态、标签、分类、附件、全文检索…),二次开发者可以快速的增加新的应用模块或者对现有的应用模块进行定制。   SpaceBuilder(简称SPB,软件著作权登记号: 2008SR14027)诞生于2007年, 是asp.net技术中最为强大的社区产品。作为国内最早的web2.0社区产品,SpaceBuilder始终专注于web2.0在国内的应用创新,竭尽全力为社区的发展做出自己的贡献。使用预置的博客、群组、论坛、微博、分享、相册、文件、活动、投票、资讯等应用模块,用户可以一站式快速搭建具有sns特征的社区网站。此外,为站点运营者考虑还提供了问答、招贴、招聘等扩展应用模块。     SpaceBuilder采用了"平台 应用"的设计理念,依托SpaceBuilder平台的服务(私信、邀请、权限、审核、隐私、积分、通知、动态、标签、分类、附件、全文检索...),二次开发者可以快速添加新的应用模块。 面向高端,为客户站点的飞跃式发展保驾护航,一直是SpaceBuilder孜孜不倦的追求。通过数据库优化设计、分页算法、全文检索,SpaceBuilder可以轻松处理千万级以上数据。借助于当前最优的分布式部署方案,SpaceBuilder已经在多个客户站点验证了万人同时在线的性能目标。     Spacebuilder v3.2与上个版本相比,主要有以下重要改进: 1. 集成QQ和新浪微博账号,可以直接使用新浪微博和QQ账号进行登录。 2. 微博进一步增强,v3.2中的微博功能已经可以与新浪微博、腾讯微博媲美,并尽量保留了这些主流微博的使用习惯。v3.2的微博主要增加了以下功能: 1) 发布微博时可以同步到新浪微博,方便两个微博的维护(需要绑定新浪微博账号); 2) 可以对关注的用户进行分组,并且可以根据分组查看进入自己时间线的微博; 3) 可以创建特色话题,通过图片、文字加强话题的展现; 4) 可以创建微博大屏幕,尤其可以在活动、会议中吸引更多人参与互动; 5) 加强了微博显示的即时性,在“我的首页”、“大屏幕导播室”、“广场”等位置基本没有页面刷新也会即时得到最新信息; 6) 可以对感兴趣的微博进行收藏,以便以后随时查看。 3. 新增了4套频道皮肤和2套空间皮肤; 4. 其他改进: 1) 增加发布公告功能:管理员可以在后台发布公告,并且可以控制在频道、空间、群组不同的区域显示;公告也可以是外链;可以设置公告标题高亮显示(颜色、加粗、字号);阅读过的公告不再提示; 2) 增加身份认证功能:管理员可以定义不同的身份名称及图标,管理员可以为用户赋予身份及身份说明,身份标识在用户的空间显著显示,并且同时在微博、动态中显示; 3) 增强邀请朋友加入群组功能,可以自己邀请站外用户加入群组; 4) 后台首页增加了管理员待处理事项,对于需要做哪些管理操作一目了然; 5) 重新优化全文检索,使搜索结果更加准确; 6) 修复了70多个bug。   注意:Spacebuilder v3.2采用asp.net mvc 2.0开发,服务器安装 .net framework 3.5 (建议安装.net framework3.5 SP1)或 .NET Framework4.0。 如果使用SDK版本还需要安装 asp.net mvc 2.0。开发工具可以使用vs2010或vs2008(vs2008必须安装 sp1补丁)。

  • 十大三维动画制作软件(转载)

    《侏罗纪公园》、《第五元素》、《泰坦尼克号》《终结者3》这些电影想必大家都看过了吧,我们为这些影片中令人惊叹的特技镜头所打动,当我们看着那些 异常逼真的恐龙、巨大无比的泰坦尼克号时,可曾想到是什么创造了这些令人难以置信的视觉效果?其实幕后的英雄是众多的三维动画制作软件和视频特技制作软 件。好莱坞的电脑特技艺术家们正是借助这些非凡的软件,把他们的想象发挥到极限,也带给了我们无比震撼...

  • PSPACE

    First Let us review what is P, NP and NP-complete. How to prove one problem is NP-complete? Just need to show that the problem of interest can be reduced from other NP-complete problem. Example: Sho...

  • DSB,ISB,DMB指令

    转载:   http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204hc/CIHJFGFE.html http://www.softwarehistory.net/h/Cortex_M3_DefinGuide/29.php 4.11.9. DBG、DMB、DSB 和 ISB 调试指令、数据内存屏

  • 26个开发者常用必备网站汇总推荐

    本文给大家推荐一些程序员经常使用的网站,也是我经常上的一些网站。

  • 使用Ruby来编写访问Twitter的命令行应用程序的教程

    Twitter 只允许用户发布不多于 140 个字符的内容,谁能够想到,这个过去毫不起眼的小网站如今却价值十多亿美元,拥有数百万用户,Twitter 平台上已构建了大量的应用程序,并且不断有新的开发人员准备投入这一浪潮中...

  • 使用 Ruby 开发代码生成器

    使用 Ruby 开发代码生成器使用 Ruby 开发代码生成器高 尚, 软件工程师高尚是一名软件开发工程师,具有 6 年的软件从业经验,在 Java 开发和财务软件方面积累了一些经验,对编译技术和 Java 技术具有浓厚兴趣,在...

  • 程序员的必备网站 - 合集(找资源?看我一个就够了)

    程序员、必备、资源、学习、网站

  • 2018年php框架,2018年的7个热门网站开发框架

    为您的下一个项目寻找新的框架?继续阅读以查看PHP,Python,JavaScript等的一些最佳框架。那里有各种各样的框架。所以做出选择可能会很棘手。这篇文章并不是出类拔萃的,而是从客户和开发人员的角度编写的。动机是...

  • flex builder 4 注册码可用破解

    破解flex builder 4的方法只需两步: 1. 注册码 我这里提供一个flex builder 4的注册码:1424-4884-4630-8952-4819-8520 并且提供一个注册机,下载地址:http://download.csdn.net/source/2295939 2. 修改HOSTS文件 然后在你的HOSTS文件中添加如下内容: 127.0.0.1 activat...

  • 什么是ISBN码及如何制作

      国际标准书号(International Standard Book Number),简称ISBN,是专门为识别图书等文献而设计的国际编号。采用ISBN编码系统的出版物有:图书、小册子、缩微出版物、盲文印刷品等。2007年1月1日起,实行新版ISBN,新版ISBN由13位数字组成,分为5段,即在原来的10位数字前加上3位EAN(欧洲商品编号)图书产品代码“978”。在联机书目中ISBN可以作为一个检索字段,从而为用户增加了一种检索途径。   第一组号码段是978或979。第二组号码段是国家、语言或区位

  • 如何成为一名网站开发工程师

    第一步(选择你的方向): 前端(包括构建交互式网站,设计它们并提供功能) ...您将学习如何使用Web技术(即HTML,CSS和JavaScript等)构建和开发网站和应用程序,这些技术将在各种类型的设备的Web浏览器中运...

  • Perl、PHP、Python、Java和Ruby的比较

    ◆ Perl、Python、Ruby和PHP各自有何特点? ◆ 为什么动态语言多作为轻量级的解决方案? ◆ LAMP为什么受欢迎? ◆ Ruby on Rails为什么会流行? ◆ 编程语言的发展趋势是什么? 讲解 “剩下四种动态语言,我们将之归为...

  • 3个最好的PHP框架的Web开发

    它需要PHP开发到一个全新的水平。 Laravel通过为登录身份验证和基于URL的路由的冗余任务提供内置支持来处理开发人员的典型噩梦。它配备了Laracasts,这是一个伟大的资源参考,以及学习。基于作曲家的管理允许与外部...

  • Ruby-on-Rails开发人员的主要技能和能力

    想象一个很难找到的金块,但是当您获得它时,付出的努力是值得的。 而且,如果Ruby是一颗宝石,那么RoR是一种切割工具,由于具有大量的时间效率和代码重用因素,因此RoR使其成为各种Web应用程序的理想框架。 自行...

  • 高级Java开发人员最常访问的几个网站

    原 高级Java开发人员最常访问的几个网站 ...

  • java开发抽奖系统源码-symphony::musical_notes:一个用Java实现的现代化社区(论坛/社交网络/博客)平台。Amoderncommunity(f

    包括一个供用户分享、交友和玩游戏的社交网络 聚合独立博主、构建和共享优质资源的能力 和100%开源 欢迎来到 Sym 官方社区 - 了解更多详情。 动机 Sym 诞生的原因如下: (真的) 很多系统界面还是老样子,跟不上...

  • 同质化严重定制直播系统开发如何脱颖而出呢?

    专注解决用户问题,没有哪个网红直播系统开发在一开始就能把功能设计的,视频直播系统app制作也一样,都是上架市场后不断的升级改善。 增加用户的参与,对于视频直播平台系统来讲,其自身的特点是用户可以在平台上...

Global site tag (gtag.js) - Google Analytics