前言

本人主要从事Android开发,也做过微信小程序,有时还会在Java那边客串一把(谁让Android是用的Java呢@~@),最近在自学Python,已有半月有余。因近年来,技术迭代快速,前端更是层层爆发,单纯的Android或者IOS开发已经不足以应对市场变化,在这技术大潮下,成为一个复合型开发者就显得尤为重要,所以又去进行了微信小程序开发。然而,如果想要在一个项目中更彻底的了解项目架构与核心,那么接触后端是必不可少的,所以就开始了本次的Python之旅。

为什么不学Java后端

其实,如果要接触后端的话,对于Android开发来说,Java应该是更好的选择,并且本人大学那会也是主修Java,还是有一定的后端基础的。但是说实话,Java这门语言实在是太繁琐了,开发效率确实不是很高。之前用Kotlin重构了一个线上的Android项目,与Java的体验能感觉到明显的差别。另外,随着大数据、AI、机器学习的火热,Pyhton的洗脑无处不在,并且Python本身的应用领域也比较广泛,所以可以算是为了顺应这个大潮+个人的兴趣爱好,选择了从Python开始深入学习。

学习Python时的感受

说实话,一开始学Python的时候,因为深受Java的影响,Python的语法给我一种太过于灵活,以至于到有点混乱的感觉。Python的语法与Java的语法两者做个比喻的话,Python就像是江湖武林人士,自在逍遥,奇淫巧计杂多又深不可测;Java就像是朝廷正规军,规章制度明确,一招一式都有迹可循,严谨大气。但是在学习了一段时间后,代码写的多了,遵守开发规范,Python给我的感觉就完全变样了,像是一只轻装简行的轻骑兵,灵巧多变,直击要害,没有多余的其他动作,而Java就感觉是一只重型步兵,虽然是大气磅礴,但是行军太慢。这时,才是真正体现出Python的优雅、简洁的特性的时候。

另外,很多人都说Python入门容易,不知道这个是怎么得出来的(可能是某个大佬阅遍多种语言后得出的),但如果光从语法上看,Python是要比Java难的。就如同上面的比喻,因为Python的奇淫巧计很多(骚操作太多了),想要吃透Python基础是要多费些功夫的(特别是很多学习教程和文章在一些Python的特性上都讲的云里雾里的,玄而又玄),而Java一招一式都是明明白白,简单直接。但是如果从项目实际开发上来看,Python却是要比Java更容易,Python在项目中的可阅读性与简洁性远强于Java,而开发相同的项目,Java相对Python来说更复杂,代码量更大。

Python的优势

Python火起来总是有它的特殊之处的。Python的语法特别简洁,开发效率极高(我身边经常有人说,一个Python开发可以顶两个Java,感觉有点夸张了,但是确实比Java的效率高),拥有着丰富且强大的第三方库。Python虽然经常被人拿运行速度太慢说事,但是一般使用Python开发,主要考虑的不是速度,而是Python强大的可阅读性、可维护性与可扩展性。一般来说,90%的开发者开发的90%的项目的性能瓶颈不是在语言上,所以你根本不必在意这个。若很幸运,你占据了这两个10%,那么Python的创始人也说过,决定程序速度的代码只占20%,你完全可以用C/C++来写这20%。

Python能做什么

我们学习Python总是希望可以在某一领域大展身手的,那么Python可以做什么呢?Python常见的几个发展方向如下:

web开发:一些大网站例如知乎、Youtob,用的就是Python。有的人说知乎不是在用go语言重构吗?那只是当中的推荐模块使用go重构而已,整体大架构还是Python。但凡一个大体量的应用,绝对不会仅仅使用一种语言的,在不同的模块中使用不同的语言很正常。

机器学习:这个就不用说了,Python就是因其才在最近几年勇攀高峰的,Python是AI领域的王者

爬虫:Python用来写爬虫是非常给力的,强大的第三方库和简洁的语法,使Python可以快速构建一个爬虫程序

运维:Python作为一个脚本语言,在运维中也是占据广泛的市场的

小结

最后,送给所有对Python感兴趣的开发者一句经典语录:人生苦短,我用Python!

python安卓开发-一个Android开发者自学Python的心路历程相关推荐

  1. 一个Android开发者自学Python的心路历程

    前言 本人主要从事Android开发,也做过微信小程序,有时还会在Java那边客串一把(谁让Android是用的Java呢@~@),最近在自学Python,已有半月有余.因近年来,技术迭代快速,前端更 ...

  2. python后端开发技术论坛_自学 Python后端开发 到什么程度可以找工作?

    前两天,在群里收到一个群友(强哥)跳槽成功的消息.真心为其感到高兴.为了找到一个更好的平台,为了拿到更理想的薪酬.他在面试前期做了相当多的准备(机会永远是留给有准备的人,这一点值得学习),写了很多关于 ...

  3. Android安卓-开发一个android桌面

    从0开始 开发一个属于自己的桌面程序 最近在开发一个新项目,需要把应用改成桌面,并引导用户设置为默认桌面,完成后的效果如下图: 1.添加XML <activity android:name=&q ...

  4. 用python快速开发一个实用的socket服务器

    用python快速开发一个实用的socket服务器 - 吴尔平 - 博客园 用python快速开发一个实用的socket服务器 首先,要明白不是所有的socket服务都需要高性能.如果要求高性能,使用 ...

  5. 用Tkinter打造自己的Python IDE开发工具(6)Python多文件共享变量与智能插件设计

    用Tkinter打造自己的Python IDE开发工具(6)Python多文件共享变量与智能插件设计 在Python中实现多个文件共享变量,即又可以获取变量值,也可以修改变量的值.有两种方式. 一是作 ...

  6. python前端开发招聘_web前端和python学哪个出来工资高?

    展开全部 题主的意图说得很明显了e68a84e8a2ad62616964757a686964616f31333433646436,就是为了更好的就业,获得一份不错的薪资.那么我们首先来看一下Pytho ...

  7. android中的插件开发框架,设计并开发一个 Android 的插件化框架

    结合动态加载系列文章的分析,现在开始设计并开发一个 Android 的插件化框架,命名为 Frontia.Frontia 有 "前端" 的意思,寓意着 Android 插件能像前端 ...

  8. 从开发者到讲师的心路历程

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  9. 如何用 Python 快速开发一个区块链数据结构?

    作者 | arjuna sky kok 整理 | Aholiab 出品 | 区块链大本营(blockchain_camp) 根据IEEE此前的一项调查,Python已成为最受开发者欢迎的语言之一.由于 ...

最新文章

  1. 11CSS框架协助前端布局
  2. 九齐NY8B072A单片机使用笔记(二)TIMER1/2/3定时器
  3. 关于某些人和某些事的断想
  4. 《深入理解Elasticsearch(原书第2版)》一2.3.3 把查询模板保存到文件
  5. Android之back键拦截处理
  6. 做了几年Java开发,你必须重视这一点
  7. 【数据结构、算法】八大排序算法概述(算法复杂度、稳定性)
  8. 解决int和Integer不能互转
  9. 开源社交系统ThinkSNS+和ThinkSNS V4区别在哪里
  10. 枚举算法:试统计正整数n的阶层n!=1*2*...*n尾部连续零的个数。
  11. 无法下载php怎办,php无法下载大文件怎么办
  12. win8计算机修改mac,快捷MAC地址修改器
  13. vs2019安装和使用教程(详细)
  14. 学习大数据参加培训班,大概需要多长时间?
  15. Confusing Problem
  16. oracle执行计划相关
  17. Vue开发仿京东商场app
  18. Win10 如何显示所有任务栏图标,不进行隐藏
  19. Linux 文件系统(目录介绍)
  20. 堰流实验报告思考题_堰流流量测定

热门文章

  1. 新华三交换机密码重置
  2. C# 一键获取本机的详细IP信息
  3. 定时限过电流保护整定计算
  4. 智慧校园:校务助手微信小程序端源码
  5. Linux操作系统下的权限设置
  6. hbuild无法与这台计算机上的,HBuilderX无法连接网络
  7. Everypixel –图库图片设计师的搜索引擎
  8. 芯宇宙通用仓库管理系统V1.0说明书
  9. 结构化数据和非结构化数据的分析
  10. Excel无法完全显示超过11位数的数字?超简单方法1秒教给你!