ホームページ > バックエンド開発 > Python チュートリアル > 打算做一款 Android APP,想了解一些移动开发中服务器端开发的技术,如果用python开发采用哪个框架及相应的技术?

打算做一款 Android APP,想了解一些移动开发中服务器端开发的技术,如果用python开发采用哪个框架及相应的技术?

WBOY
リリース: 2016-06-06 16:23:34
オリジナル
2098 人が閲覧しました

本人对服务端的开发了解的比较少,不知道大侠们推荐学习些什么技术,看些什么书,或者是好的建议?
还有目前的主流的app的服务端都用的是什么技术、框架,如果用python开发采用哪个框架及相应的技术?
先谢谢各位的回答!

回复内容:

一般App都是需要和服务器交互的,App开发者特别是个人开发者是需要掌握一门服务器端编程技术的。
常见的服务器端编程技术有.net Java php python 等等
既然题主提到Android App,你不如去学习Java服务器端编程。
先系统的学习一下Servlet,安装运行Servlet的容量Tomcat
还得学习一下数据库,推荐MySql,练习简单的增删查改语句
学习Java连接数据库的方法JDBC
服务器与App交互数据推荐使用JSON
PS:手机打字,先说这么多,要是有疑问,请评论留言 我不是大侠,以下是个人拙见,欢迎批评指正:
首先,服务端开发涉及到的东西比较多:
1、操作系统
操作系统现在的情况是三分天下:unix、linux、windows。建议学习linux,主要是掌握基本的服务器管理与配置命令,能够编写shell脚本进行部署以及自动化管理等。
2、服务器
Nginx、Apache都是常见的服务器。这两个服务器各有各的特点,我这里不能说哪个一定比哪个好。网上也有很多对这两个服务性能的对比与讨论可供参考。
3、数据库
数据库有Mysql、Oracle、SQL server等这些都是关系型数据库,还有非关系型数据库:memcached、mongodb、redis等。建议了解各种数据库的特点,根据自己的业务模型,选择最优的搭配。
4、开发语言
开发语言有很多python、php、perl、c++、java...基本上大部分语言都可以开发后台。每种语言都有自己的特点与框架,像这些语言都有很多公司用。
据我所知,使用python作为后台开发的有知乎、豆瓣、quora,而且现在大部分的新型互联网公司都倾向于使用python作为后台的开发语言。
python作为后台开发主要是可以实现快速的开发,同时可供选择的开发框架也有很多,比如:flask、django、tornado、bottle等。建议了解这些框架的特点。
5、TCP/IP协议
了解基本的协议:HTTP、DNS、SMTP、SNMP。。。
6、数据交换格式
protobuf、json、xml。。。
这里面最节约空间与速度最快的是protobuf,一般使用json就好了,json的在空间与速度上都优于xml。如果是特别追求节约空间与速度就使用protobuf。
...


主流的app的服务端:
应该没有所谓的主流吧 - - 我只知道instagram使用了nginx、django、Gunicorn。。。
像instagram这么多用户的应用后台绝对不是这么简单。What Powers Instagram: Hundreds of Instances, Dozens of Technologies这篇文章是他们公布的架构,可供参考,另外网上也有一些逼人翻译与分析的文章。

最后说下我的用法:
目前使用nginx+uWSGI+flask
flask是python的一个轻量级框架,上面有介绍。
nginx主要是处理静态的请求,动态的交给uWSGI。
uWSGI是一个服务器,使用它可以很方便的部署python应用,而且处理速度也比较快。
网上可以找到很多关于nginx+uWSGI+flask的配置介绍。 你不说需求和应用场景,下面的回答也只能是告诉你一些「逻辑上完全正确但毫无意义的话」了。

我倒是有个建议,既然你打算做一个app,并且写后端的server,倒是可以先了解一下OAuth2.0, 然后 ***先写出详细的RESTFUL的API接口文档***, 后端找一个糙猛快的python框架实现你的接口,后期你的用户增加、服务压力增大,再考虑怎么让它变快。 做adnroid app 跟你了解服务器开发技术没有半点关系。
技术选型关键看2点:
1、从业务需求,得出技术架构。
2、你擅长的技术

我觉得你的问题上述2点都没涉及到,无法回答你的问题。

ps:干嘛聊python,如果node.js你擅长的话,完全可以搞定。 可以考虑 nginx+Tornado+mongodb这一个架构,在设置网页时,确保其响应性(能够适合屏幕大小自动响应尺寸以及布局),这样web和手机就可以通吃了。还可以考虑使用HTML5。 作为一个正在做Android APP科创的大学生,菜鸟我要第一次回答问题啦 首先不管是想要开发NATIVE APP还是WEB APP,服务器都是主要做HTTP响应的,都可以当成WEB 服务器来做,小型服务器推荐选择LINUX+Nginx+MariaDB+PHP开发,服务器要做的具体的话就是处理GET请求,或POST互传JSON数据。我们就是用PHP开发的,简单易用。Python的话不了解,不过据说效率低于PHP。 各位大侠,我是新手。但是我说一下我的意见,APP的开发分成2种不同类型的APP。一种类型是native app,一种类型是 c/s 架构的类型。顾名思义,Native APP是完全运行在操作系统上的一种软件,不涉及到开发相关的类库和网络协议,就如同office软件运行在weindows操作系统上一样。c/s架构的APP与Native app是不同的,因为这种APP 在手机客户端只是相当与一种UI界面,只是调用一些操作系统提供的网络协议方面的服务,至于其他的是不提供的!!所以APP的的开发和我们实际的c/s上面的开发是没有多大的区别的,主要是要明白则那样那个的业务和需求是最关键的!!!
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート