新闻中心

如何用python开发移动App后台?需要掌握哪些技术

  1【专注:Python+人工智能Java大数据HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】

  python作为一门简单明了的语言,非常容易上手,语言层面不会太复杂,稍微有点难度的顶多就是装饰器、元类和少量函数式编程内容。要说学习的话,我觉得更多是一些编程方面通用的东西,比如:数据结构和算法、设计模式、操作系统、计算机网络之类的

  tornado,因为非阻塞io的原因,性能非常高,特别适合写后端API(App的后端应该都是rest风格的api),而且成熟稳定

  这个一两句说不清楚,涉及到运维、测试、开发诸多方面, 部署和测试推荐几个包:fabric、nose、unittest(python自带),版本管理推荐git,持续集成推荐使用docker+jenkins

  4、如果使用python框架开发移动后台服务,在开发源码内使用哪种框架?mvc还是其它的,比如我返回json数据,每次json对象最外层有一些相同的东西,该如何处理?

  MVC什么的,一般的框架都差不多的,tornado也是支持的,返回json有相同的东西,写个修饰器就完了

  5、python的后台服务最大能支持多大的pv量会严重影响用户体验性能?

  youtube、reddit、豆瓣、知乎这样的大流量网站都是python写的,觉得你的App的规模不太可能遇到性能问题,即使有也应该不是python的问题,而是任何语言都会有问题。毕竟web后端不是计算密集型,而是io密集型的,python和其他语言的区别不会太大吧,大量的pv是可以靠堆服务器堆出来的,如果是计算量比较大的任务,你可以考虑用c或c++写

  用python写的API,网页和移动端都是可以调用啊,让前端学学React,就可以轻松解决前后端分离这个问题(PS: facebook 就是后端php + 前端React,淘宝也有在用nodejs做前后端分离)

  7、有没用相关的案例,即用python开发的移动后台?有没有该问题的开源项目?

  这个应该比较少,App后端开源的不常见,而且大部分是rest风格的api,很多时候会涉及到自身的业务和敏感信息应该不会开源的吧(又不是bbs或者博客程序)

  就是Python语法、Python的一个Web框架及其他Web开发的知识(如数据库,缓存等),对初学者,架构方面一本 《大型网站技术架构:核心原理与案例分析(接地气的网站架构经验,网站生存技术心要,应对大数据挑战的干货分享!)》(李智慧...)【简介 就可以了。

  无论是Django、Flask、Pyramid等主流框架都可以作为后端Rest API服务的选择,选择哪个看团队开发者对框架的熟悉、对框架的设计哲学是否认同、框架的周边(也就是第三方扩展)环境是不是足够满足需要。

  Tornado确实好,但是它其实作为web服务器时候才是异步IO的网络模型,并不是使用了Tornado作为web框架就是异步非阻塞了,但是以我的工作经验来看,有很多团队还是同步阻塞的在用,呵呵。其次tornado的周边一般,在复杂的业务场景下,Tornado需要造的轮子远比django和flask多。

  Tornado的优势主要在于对大量Comet长轮询连接的维护上,我们先分析下app后台和web后端的区别之一是手机有电量限制和流量(贵啊),我们作为有节操的程序员,要尽量的给用户省电,不要做大量的网络请求,用tornado保持长连接是什么心态?

  小型规模使用fabric甚至几个shell部署脚本即可。产品线服务器达到一定规模(个人觉得超过50台)可以选择配置管理工具,如Saltstack或者Ansible(当然也可以选择ruby的puppet)。部署无非是安装相关依赖,拷贝或者checkout最新的代码,重启服务(重启的服务可能有顺序要求),最后返回是不是部署成功。

  本地调试可以使用web框架自带的web服务器启动,可以每次都填充进来一些测试数据,或者直接连接到线上的数据库环境(不推荐)。

  测试,建议使用pytest,不要用nose。 nose已经停止维护好几年了。

  4、如果使用python框架开发移动后台服务,在开发源码内使用哪种框架?mvc还是其它的,比如我返回json数据,每次json对象最外层有一些相同的东西,该如何处理?

  MVC是一种软件架构模式,它是一种被验证有效的使程序结构更加直观的方法,和web框架有什么关系.....

  5、python的后台服务最大能支持多大的pv量会严重影响用户体验性能?

  影响用户体验的标准就是服务器响应慢(比如一个请求不应该超过200ms,结果3s才返回),这个响应时间和业务的架构,代码质量,数据库、缓存等的使用是不是恰当相关。一般和Python没什么关系。而且我一直认为除非是大型网站(豆瓣都不算,淘宝这种算),否者没有必要考虑到语言实现的层面:大部分公司活不到那天。

  现在的服务器要比开发者便宜,所以就算量大还可以把请求分发,让多个服务器一起来处理。

  JSON是一种倾向的数据交换格式,目前绝大多数编程语言都支持 JSON 格式数据的生成和解析,它既可读也方便生成,除非安全性要求极高的场景下使用自定义的二进制协议,否则直接让API返回使用JSON数据给各个平台就好了。

  并不是只有React才能解决前后端分离... 请不要看着新名词乱误导人好不好,React适用于包含复杂交互的单页面场景,有些人看着新的东西,一个简单地列表页也非要耗时耗力加上React,让人哭笑不得。

  7、有没用相关的案例,即用python开发的移动后台?有没有该问题的开源项目?

      澳门葡京,葡京娱乐,葡京平台




网站地图