必须有许多旨在与服务器通信的应用程序.我的问题只是关于安装在iOS设备上的App +服务器端服务交互.Web应用程序不是我所说的,并且根本不应该涉及这个讨论的网页.典型的例子是像Instagram和Twitter这样的应用程序,其中App和服务器之间交换的大多数信息只是String,Image和Integers(用JSON或XML包装)等数据,不需要网页显示.
我的问题是:如果您是一名独立的应用程序开发人员,并且您从头开始设计这样的应用程序而没有任何现有的网站API,数据库结构或应用程序(因此您不受任何现有API或数据库结构或应用程序协议的限制),什么是最有效的方法?
服务器方面需要做的是:
接收App发送的数据;
用设计逻辑处理数据;
与数据库交互(如MySQL);
进行必要的数据挖掘和分析 - 这可以是一个持续运行的服务或App客户端请求的一次性任务;
根据请求或自发地将数据发回应用程序;
在不同App客户端之间/之间交换或广播数据(即:组聊天室和对等消息);
据我所知,有3个明显的选项来实现服务器端:
PHP
蟒蛇
Ruby on Rails
(请随意添加更多选项)
我的问题是:
哪一个是实现服务器端最合适的选择?
如果App专注于自然人类语言/文本搜索,分析和数据挖掘,哪一个是最佳选择?我听说Python在这方面做得很好.
有关数据库选择的任何建议吗?我现在正在使用MySQL,我发现它对我的目的非常强大,我听说Twitter正在转向Cassandra.开始时难度太大了吗?
对于服务器端,如果您需要构建服务器管理界面,作为管理员来管理和监控社区,成员资格,数据等,是否有任何现有的解决方案或框架或工具?什么是最有效的方法?
如果一个新的程序员没有经验,你建议他/她从哪个开始?
在我们可以学习的上下文中,服务器端是否有任何好的参考资料或示例代码?
我知道Stackoverflow上有很多非常有经验的专家,但我看到更多的新手刚进入iOS开发区,对服务器/数据库编程经验不太了解.我希望这个线程可以帮助那些正在考虑设计具有服务器/客户端结构的应用程序但不知道从哪里开始的人.
ps:我会不断更新这个问题主题并在此主题上添加我的发现,以帮助stackoverflow上的所有其他用户.:-)请尽量使您的答案信息丰富,易于理解和建设性.我猜这个帖子的大多数读者都是这个伟大社区的新成员.