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

本人对服务端的开发了解的比较少,不知道大侠们推荐学习些什么技术,看些什么书,或者是好的建议?
还有目前的主流的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上面的开发是没有多大的区别的,主要是要明白则那样那个的业务和需求是最关键的!!!
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Numpy数组与使用数组模块创建的数组有何不同?Numpy数组与使用数组模块创建的数组有何不同?Apr 24, 2025 pm 03:53 PM

numpyArraysareAreBetterFornumericalialoperations andmulti-demensionaldata,而learthearrayModuleSutableforbasic,内存效率段

Numpy数组的使用与使用Python中的数组模块阵列相比如何?Numpy数组的使用与使用Python中的数组模块阵列相比如何?Apr 24, 2025 pm 03:49 PM

numpyArraySareAreBetterForHeAvyNumericalComputing,而lelethearRayModulesiutable-usemoblemory-connerage-inderabledsswithSimpleDatateTypes.1)NumpyArsofferVerverVerverVerverVersAtility andPerformanceForlargedForlargedAtatasetSetsAtsAndAtasEndCompleXoper.2)

CTYPES模块与Python中的数组有何关系?CTYPES模块与Python中的数组有何关系?Apr 24, 2025 pm 03:45 PM

ctypesallowscreatingingangandmanipulatingc-stylarraysinpython.1)usectypestoInterfacewithClibrariesForperfermance.2)createc-stylec-stylec-stylarraysfornumericalcomputations.3)passarraystocfunctions foreforfunctionsforeffortions.however.however,However,HoweverofiousofmemoryManageManiverage,Pressiveo,Pressivero

在Python的上下文中定义'数组”和'列表”。在Python的上下文中定义'数组”和'列表”。Apr 24, 2025 pm 03:41 PM

Inpython,一个“列表” isaversatile,mutableSequencethatCanholdMixedDatateTypes,而“阵列” isamorememory-效率,均质sepersequeSequeSequeReDencErequiringElements.1)

Python列表是可变还是不变的?那Python阵列呢?Python列表是可变还是不变的?那Python阵列呢?Apr 24, 2025 pm 03:37 PM

pythonlistsandArraysareBothable.1)列表Sareflexibleandsupportereceneousdatabutarelessmory-Memory-Empefficity.2)ArraysareMoremoremoremoreMemoremorememorememorememoremorememogeneSdatabutlesserversEversementime,defteringcorcttypecrecttypececeDepeceDyusagetoagetoavoavoiDerrors。

Python vs. C:了解关键差异Python vs. C:了解关键差异Apr 21, 2025 am 12:18 AM

Python和C 各有优势,选择应基于项目需求。1)Python适合快速开发和数据处理,因其简洁语法和动态类型。2)C 适用于高性能和系统编程,因其静态类型和手动内存管理。

Python vs.C:您的项目选择哪种语言?Python vs.C:您的项目选择哪种语言?Apr 21, 2025 am 12:17 AM

选择Python还是C 取决于项目需求:1)如果需要快速开发、数据处理和原型设计,选择Python;2)如果需要高性能、低延迟和接近硬件的控制,选择C 。

达到python目标:每天2小时的力量达到python目标:每天2小时的力量Apr 20, 2025 am 12:21 AM

通过每天投入2小时的Python学习,可以有效提升编程技能。1.学习新知识:阅读文档或观看教程。2.实践:编写代码和完成练习。3.复习:巩固所学内容。4.项目实践:应用所学于实际项目中。这样的结构化学习计划能帮助你系统掌握Python并实现职业目标。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。