python移动开发
⑴ python移动应用开发
1、如果使用python语言,需要学习哪些知识?
python作为一门简单明了的语言,非常容易上手,语言层面不会太复杂,稍微有点难度的顶多就是装饰器、元类和少量函数式编程内容。要说学习的话,我觉得更多是一些编程方面通用的东西,比如:数据结构和算法、设计模式、操作系统、计算机网络之类的
2、选择什么样的python框架开发,这个框架的优势?
tornado,因为非阻塞io的原因,性能非常高,特别适合写后端API(App的后端应该都是rest风格的api),而且成熟稳定
3、如何部署服务器?本地服务器调试,以及公网服务器部署?
这个一两句说不清楚,涉及到运维、测试、开发诸多方面, 部署和测试推荐几个包:fabric、nose、unittest(python自带),版本管理推荐git,持续集成推荐使用docker+jenkins
⑵ 如何用python开发移动App后台需要掌握哪些技术
给一套我用过的解决方案,用来开发过web项目(网页 + ios)和手游项目(ios + 安卓),都是一套后台对应多种前端平台:
web框架:Django
Django 是一套相对全(zhong)面(yong)的框架,基本你要的功能都有,文档很细致,上手比较容易,开发效率比较高。自带 auth、session、orm、admin 等功能,尤其是 admin,如果要求不是太高,用自带的后台管理系统就能省下很多开发工作。
web server:nginx
相对 apache 较轻,简洁。用来部署 django 也比较方便,可参考 Setting up Django and your web server with uWSGI and nginx
数据库:mysql
这个不限定,看业务需求和开发者喜好。当然如果用了 django,自然最好选一个 orm 支持比较好的。
RESTful API:Tastypie
基于 Django 的 RESTful API。Django 本身作为一个 web 框架,返回的结果默认是渲染好的 html 文本。借助 Tastypie,可以比较方便的制作 json 数据格式的接口,将前后端解耦合。这样不管是网页、iOS 还是 Android,都可以用同样的接口。
再针对问题补充一下:
1、如果使用python语言,需要学习哪些知识?
python 语言本身,使用的框架,web 开发的通用知识,比如 HTTP 请求的处理流程、RESTful、OAuth 等。
2、选择什么样的python框架开发,这个框架的优势?
见上文。
3、如何部署服务器?本地服务器调试,以及公网服务器部署?
Django 自带本地调试服务,开发的时候用局域网地址调试即可。公网部署见上文。
4、如果使用python框架开发移动后台服务,在开发源码内使用哪种框架?mvc还是其它的,比如我返回json数据,每次json对象最外层有一些相同的东西,该如何处理?
Tastypie 可以处理掉生成 json 数据时的很多体力活。
5、python的后台服务最大能支持多大的pv量会严重影响用户体验性能?
这个没法给确切答案,具体情况会受机器硬件条件(CPU、内存、I/O)、网络带宽、代码质量、架构设计,甚至配置参数的影响。目前有较大型网站使用 python,并正常运作(参见 有哪些大型公司在使用 Python?有哪些知名项目是主要由 Python 写成的? - Crossin 的回答),所以 python 本身不是问题。实践时,做好压力测试和上线后的性能监控,找出瓶颈不断优化是王道。
6、如何兼顾 网页前端以及移动端 开发的后台?
通过 API,后台无需知道是什么平台在使用它。
7、有没用相关的案例,即用python开发的移动后台?有没有该问题的开源项目?
通常框架会自带测试案例。真实案例开源的暂时不知道。如果哪天我把之前写的开源了,再回来修改答案。
⑶ python有哪些特点和优点
显着的优点
Python 语言拥有诸多的优点,这其中,以下几个优点特别显着:
简单易学:Python语言相对于其他编程语言来说,属于比较容易学习的一门编程语言,它注重的是如何解决问题而不是编程语言的语法和结构。正是因为Python语言简单易学,所以,已经有越来越多的初学者选择Python语言作为编程的入门语言。例如,在浙江省 2017年高中信息技术改革中,《算法与程序设计》课程将使用 Python语言替换原有的VB 语言。
语法优美:Python语言力求代码简洁、优美。在Python语言中,采用缩进来标识代码块,通过减少无用的大括号,去除语句末尾的分号等视觉杂讯,使得代码的可读性显着提高。阅读一段良好的Python程序就感觉像是在读英语一样,它使你能够专注于解决问题,而不用太纠结编程语言本身的语法。
丰富强大的库:Python语言号称自带电池(Battery Included),寓意是Python语言的类库非常的全面,包含了解决各种问题的类库。无论实现什么功能,都有现成的类库可以使用。如果一个功能比较特殊,标准库没有提供相应的支持,那么,很大概率也会有相应的开源项目提供了类似的功能。合理使用Python的类库和开源项目,能够快速的实现功能,满足业务需求。
开发效率高:Python的各个优点是相辅相成的。例如,Python语言因为有了丰富强大的类库,所以,Python的开发效率能够显着提高。相对于 C、C++ 和 Java等编译语言,Python开发者的效率提高了数倍。实现相同的功能,Python代码的文件往往只有 C、C++和Java代码的1/5~1/3。虽然Python语言拥有很多吸引人的特性,但是,各大互联网公司广泛使用Python语言,很大程度上是因为Python语言开发效率高这个特点。开发效率高的语言,能够更好的满足互联网快速迭代的需求,因此,Python语言在互联网公司使用非常广泛。
应用领域广泛:Python语言的另一大优点就是应用领域广泛,工程师可以使用Python 做很多的事情。例如,Web开发、网络编程、自动化运维、linux系统管理、数据分析、科学计算、人工智能、机器学习等等。Python语言介于脚本语言和系统语言之间,我们根据需要,既可以将它当做一门脚本语言来编写脚本,也可以将它当做一个系统语言来编写服务。
不可忽视的缺点
毫无疑问,Python确实有用很多的优点,每一个优点看起来都非常吸引人。但是,Python并不是没有缺点的,最主要的缺点有以下几个:
Python的执行速度不够快。当然,这也不是一个很严重的问题,一般情况下,我们不会拿Python语言与C/C++这样的语言进行直接比较。在Python语言的执行速度上,一方面,网络或磁盘的延迟,会抵消掉部分Python本身消耗的时间;另一方面,因为Python 特别容易和C结合起来,因此,我们可以通过分离一部分需要优化速度的应用,将其转换为编译好的扩展,并在整个系统中使用Python脚本将这部分应用连接起来,以提高程序的整体效率。
Python的GIL锁限制并发:Python的另一个大问题是,对多处理器支持不好。如果读者接触Python时间比较长,那么,一定听说过GIL这个词。GIL是指Python全局解释器锁(Global Interpreter Lock),当Python的默认解释器要执行字节码时,都需要先申请这个锁。这意味着,如果试图通过多线程扩展应用程序,将总是被这个全局解释器锁限制。当然,我们可以使用多进程的架构来提高程序的并发,也可以选择不同的Python实现来运行我们的程序。
Python 2与Python 3不兼容: 如果一个普通的软件或者库,不能够做到后向兼容,那么,它会被用户无情的抛弃了。在Python中,一个槽点是Python 2与Python 3不兼容。因为Python没有向后兼容,给所有的Python工程师带来了无数的烦恼。
上述就是总结的Python语言的优缺点。总体来说,Python目前的发展还是非常不错的。借着人工智能时代的东风,Python开发人员的未来一定会很光明。
⑷ 如何用python开发移动App后台
用python开发移动App后台
可以做 "AIR" 应用.
用Python写服务 端即可
⑸ 怎样学习python学习python的话大概要学习哪些内容
可以报培训班去学习,也可以在网络上购买教程去学习,还是比较方便的,大概要学习,环境配置,语言基础,还是编程内置模型,Linux 系统,H5+C3,等等这些内容。
⑹ 如何用手机编程Python
手机下载APP
手机分为智能手机(Smart phone) [2] 和非智能手机(Feature phone),一般智能手机的性能比非智能手机要好,但是非智能手机比智能手机性能稳定,大多数非智能手机和智能手机使用英国ARM公司架构的CPU。智能手机的主频较高,运行速度快,处理程序任务更快速,日常更加的方便(例如:诺基亚n81主频有369兆赫兹);而非智能手机的主频则比较低,运行速度也比较慢(例如:诺基亚5000主频就是50兆赫兹)。
智能手机(Smart phone),是指像个人计算机一样,具有独立的操作系统,大多数是大屏机,而且是电容式触摸屏,也有部分是电阻式触摸屏,功能强大实用性高。可以由用户自行安装包括游戏等第三方服务商提供的程序,通过此类程序来不断对手机的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入的这样一类手机的总称”。从广义上说,智能手机除了具备手机的通话功能外,还具备了PDA的大部分功能,特别是个人信息管理以及基于无线数据通信的浏览器和电子邮件功能。智能手机为用户提供了足够的屏幕尺寸和带宽,既方便随身携带,又为软件运行和内容服务提供了广阔的舞台。很多增值业务可以就此展开,如:股票、新闻、天气、交通、商品、应用程序下载、音乐图片,游戏下载等等
手机类型顾名思义就是指手机的外在类型,比较常用的分类是把手机分为直板式、折叠式(单屏、双屏)、滑盖式、旋转式、侧滑式等几类。
要翻开盖才可见到主显示器或按键,且只有一个屏幕,则这种手机被称为单屏翻盖手机。市场上还推出了双屏翻盖手机,即在翻盖上有另一个副显示屏,这个屏幕通常不大,一般能显示时间、信号、电池、来电号码等功能。屏幕比较小,一般在2.2英寸或1.8英寸,处理器较慢。
⑺ python全栈开发是什么
全栈指掌握多种技能,并能利用多种技能独立完成产品。通俗的说就是与这项技能有关的都会,都能独立完成。
相关推荐:《Python视频教程》
python,因为目前很火,能开发的项目很多。例如:web前端后端,自动化运维,软件、小型游戏开发,移动开发(微信小程序等),大数据处理,AI(人工智能,最火的方向)等等,并且python是一门胶水语言,能和其他任何一门语言结合使用,并且跨平台(Windows,linux,MAC OS,Unix)等等,这些方向基本都会,并且基本都能独立搞定的,就算是python全栈工程师了。
但是目前来看,因为python能搞的太多,并且功能是可扩展的,方向不断在扩大,所以个人觉得,严格的说国内外python全栈的工程师并不多。
所以一般来讲,python全栈一般指利用python在linux/windows环境上自动化运维和web前后端以及一些项目开发的人,不过会这些的,已经是很厉害的人了。
⑻ python能开发游戏吗
能,但不适合。
用锤子能造汽车吗? 谁也没法说不能吧?历史上也确实曾经有些汽车,是用锤子造出来的。但一般来说,还是用工业机器人更合适对吗?
比较大型的,使用Python的游戏有两个,一个是《EVE》,还有一个是《文明》。但这仅仅是个例,没有广泛意义。
一般来说,用来做游戏的语言,有两种。一是C++。。一是C#。。
Python理论上,不仅不适合做游戏,而是只要大型的程序,都不适合。只适合写比较小型的东西,比如一个计算器,一个爬虫等。
主要有2个方面,一是速度慢,二是语法缺陷。
也许你一定觉得,Python的语法又干净,又优雅,怎么还有缺陷?但仔细想想,为什么别的语言没有这么干净?没有这么优雅?明明可以直接a=123 干嘛非要写成 int a=123;呢?难道是其他语言的设计者,都有强迫症吗?道理很简单,有得必有失。
如果数据类型,只有字符串和数字,省略掉声明变量的过程,当然不是问题。但只要逻辑一复杂,情况就完全不同了。。。游戏中,你用C#或C++写起来,大概会是这样。
技能 a=xxxx;
武器 b=xxxx;
角色 c=xxxx;
药水 d=xxxx;
音乐 e=xxxx;
而Python呢?大概是这个样子
a=xxxx
b=xxxx
c=xxxx
d=xxxx
如果你的代码很少,显然是Python比较方便。但如果你创建几百个对象,代码超过1万行。。。写到几千行的时候,遇到一个叫x的对象,你还知道它到底是个啥吗?是一把武器?还是一瓶药水?还是一张图片?一段音频?一盏灯光?一座房子?
不要以为1万行代码很多。。。。1万行连个《斗地主》都写不完。。
用Python写大程序的感觉就是,当你第一天,只写了50行代码,创建了3个类,5个对象。你会觉得太爽了,这绝对是世界上最好的语言。。。第二天,你又创建了2个类,5个对象的时候,就觉得有点晕晕的了。第三天,又创建了2个类之后,你会发现自己必须非常仔细的看一遍注释,否则就不会写了。第四天,你一整天都在看注释。。。。
这就是动态语言的劣根性。一开始代码量少,看不出任何缺点,各种省事,各种爽。代码量越多,脑子越乱。一般500行以上,效率就会被JAVA,C#之类的语言反超。。1000行,就必须要各种加注释才能看懂了。。2000行,注释比代码还多了。。5000行,注释已经完全不管用了,自己根本看不懂自己的代码,需要准备弃坑了。
⑼ python可以开发手机app吗
python可以开发手机app,因为这也是一款编程的软件,如果你用这款软件去开发手机APP的话,就有一点大材小用的感觉了。这也说明这款软件的强大性。