所以我知道此前有人问过: How to start facebook app?
但我仍然认为它有点老了,也希望我有一些更具体的问题。所以这里:
我想建立一个基本的Facebook应用程序,这需要一个基本的数据库,一个简单的首页,显然能够通过Feed分享/喜欢。现在我主要担心的是我想快速轻松地做到这一点,而不必处理尽可能多的平凡细节。
因此我将CakePHP和Ruby on Rails视为框架。但是,我不熟悉这些技术的 (我确实有软件背景,但主要是C / C ++ / Java)。那么你认为哪个最适合我接受这个项目,这将使我能够快速,轻松地为Facebook“构建”这样的东西?
(另请注意,我需要一个免费的托管服务提供商,因为我现在没有钱来资助这个业余爱好,因此我需要知道哪些托管公司免费支持这些框架。)
感谢任何帮助!
答案 0 :(得分:10)
Rails,当然,有无限更多和更好的资源可供学习,你可以在Heroku上获得梦幻般的免费托管(适用于小型应用程序,以及便宜的扩展)。
要开始使用,请参阅:
我和去年秋天的情况相同,我知道相当多的PHP,但之前从未使用过MVC Web框架。我试着学习CakePHP,挣扎了一段时间,然后以为我只花了一个周末给Rails一个机会。我以前从未接触过Ruby,但是我对Rails很好奇,我拿起了Beginning Rails 3的副本,我想我只需要一个周末,看看学习一些基本的Ruby是多么困难并得到一个关于Rails如何工作的想法。
我想进入那个周末,即使框架更适合我,也无法学习一门全新的语言。我是这样,很高兴我给了它一个机会。 Ruby非常棒,它背后的社区非常出色,而且文档,截屏,教程等的数量都超出了这个世界。 Ruby也很有趣,而且非常容易学习。 Try for yourself,看看你的想法。
Rails绝对是最佳选择(至少与CakePHP相比)。
答案 1 :(得分:4)
到目前为止,答案只是划伤了表面!
CakePHP是PHP的Rails是什么。从一开始,CakePHP就是为了模仿事物的“Rails”方式而开发的,到目前为止做得非常好;但如果你从头开始;你需要记住你必须:
已经在CakePHP和RoR中开发 - 如果你没有Web开发背景而且你正在寻找开始;潜入其中。老实说,这对你来说也是一样的学习曲线!您将在CakePHP中更轻松地找到设置,学习,开发和部署 - PHP是最流行的语言之一。如果你想学习一门语言和框架也是为了提高你作为程序员和开发人员的技能,那么你想要RoR - 它有严格的约定会扭曲你的想法但是一旦你掌握了它,就没有回头看了(这些与CakePHP试图为PHP世界带来的约定相同!)。
两者的官方文档非常好,他们有惊人的(并且非常活跃!)社区,即使是最愚蠢的问题也能得到解答。还有一些优秀的(免费)托管平台,可以使用Git并快速部署(PHPFog和Heroku)。
值得一提的是,RoR被认为是现场的新人,时尚的框架带来了很多开发方法的快速变化,而且RoR开发人员的需求也非常高。
另外 - 考虑到应用程序的简单性 - 您是否考虑过使用Sinatra(一个非常小的Ruby框架)?您可能会发现这是最简单的,如果您以后想进入Ruby on Rails,它将成为一个很好的垫脚石。
答案 2 :(得分:3)
好的,这个帖子在我写这篇文章的时候已经有一年半了。但是我希望为任何发现这个问题的人添加一些内容,就像我在RoR和CakePHP上搜索一样。
根据Google Trends,到目前为止,在过去的12个月中,RoR的趋势大约是CakePHP的3倍。现在,这只是RoR vs CakePHP。
当我加入Facebook时,RoR / Facebook仍然是CakePHP / Facebook的3倍左右,但如果你看看过去3个月,CakePHP / Facebook会下降到零。 Link
目前,Facebook应用程序的趋势语言是C,Java和& C ++。 Link
答案 3 :(得分:2)
如果您对C / C ++更熟悉,那么您很可能会发现PHP的学习曲线不那么陡峭了:)
对于类似Facebook应用程序且已经知道C的东西,我会研究CakePHP。如果你将来有时间看看RoR,因为它是一个了不起的平台。
答案 4 :(得分:2)
别误会我的意思,我喜欢CakePHP。但是如果你没有Web编程的背景(特别是PHP),那么甚至CakePHP也需要相当长的时间才能熟悉。我想,RoR将处于相同的学习曲线上。
此外,要处理facebook API,你必须在'基础'级别与它进行交互(我的意思是,框架对它没有多大帮助)。那么“快速,轻松地'为Facebook构建'这样的东西?”我觉得这很不可能。
无论如何,如果你仍然想要这样做,CakePHP对你来说会更容易,因为PHP语法类似于C和Java。但是如果你有时间花在它上面,Ruby是一种有趣且独特的语言。