...与 Python 作为后端服务的编程语言各有什么优劣?
快:这个快有两方面,第一是V8引擎快,第二是异步执行,Node.js
功能上是一个基于V8引擎的异步网络和IO Library,和Python的Twisted很像,不同的是Node.js的event
loop是很底层的深入在语言中的,可以想象成整个文件在执行的时候就在一个很大的event loop里;
npm:npm可以说是用起来最顺手的package management了,npm作为Node.js的官方package management,汇集了整个社区最集中的资源;不像Python经历过easy_install和pip,还有2to3的问题;
Windows支持:Node.js有微软的加持,Windows基本被视为一等公民来支持,libuv已经可以很好的做到统一跨平台的API;而Python虽然也对Windows有官方的支持,但是总感觉是二等公民,时不时出些问题。
Python优于Node.js的地方:
语
言:就单纯从语言的角度来说,Python写起来要比Javascript舒服很多;Javascript
设计本身有许多缺陷,毕竟当时设计的时候只是作为在浏览器中做一些简单任务的script,所以代码一旦庞大,维护还是有困难(不过Node.js的
module很大的改善了这个问题),不过用Coffeescript可以很大的改善Javascript,几乎可以和Python等同;
成
熟:成熟包括语言本身已经成熟,还有Framework和ecosystem也很庞大。Node.js的绝大多数framework都很新,有的API一
直在变,有的感觉已经不在维护,总之没有一个像Django那种百足之虫感觉的framework。Python的主流ORM
SQLalchemy也很成熟。
Python 和 Node.js 很难分高下的地方:
异
步Style:Node.js的异步Style是CPS,也就是层层callback,脊乎基搜野橡于event,和浏览器中的Javascript很像。CPS好
处是让熟悉浏览器Javascript的人能很快上手,学习难度也不大。缺点是逻辑一复杂,就变得很难维护,基本上需要通过async.js这种
library,或者用promise。Python的异步除了和Node.js很像的Twisted之外,也有基于coroutine的
gevent,coroutine让异步代码维护起来更容易,不过学习曲线陡;
应用场景:如果是一个CRUD的app,
那么想都不想直接是Python,Node.js本身不擅长CRUD的app(绝大多数Node.js都是直接裸在外面的,而不是有一个Nginx在前
面,否则websocket就不能用了,不过新版nginx开始支持websocket),代码又不好维护,世旁而Python的WSGI很适合,成熟的
stack也有很多。如果更偏向于real-time,比如一个chat room,那么Node.js实现更容易。这两个应用场景还是有差别的。
来源于知乎:https://www.zhihu.com/question/20961574
2021-09-14 · 每时每课,给你新机会!
Python的学习内容还是比较多的,我们将学习的过程划分为4个阶段,每个阶段学习对应的内容,具体的学习顺序如下:
Python学习顺序:
①Python软件开发基础
掌握计算机的构成和工作原理
会使用Linux常用工具
熟练使用Docker的基本命令
建立Python开发环境,并使用print输出
使用Python完成字符串的各种操作
使用Python re模块进行程序设计
使用Python创建文件、访问、删除文件
掌握import 语句、From…import 语句、From…import* 语句、方法的引用、Python中的包
能够使用Python面向对象方法开发软件
能够自己建立数据库,表,并进行基本数据库操作
掌握非关系数据库MongoDB的使用,掌握Redis开发
能够独立完成TCP/UDP服务端客户端软件开发,能够实现ftp、http服拿喊务器,开发邮件软件
能开发多进程、多线程软件
能够独立完成后端软件开发,深入理解Python开发后端的精髓
能够独立完成前端软件开发,并和后端结合,熟练掌握使仔帆用Python进行全站Web开发的技巧
能够使用Python熟练编写爬虫软件
能够熟练使用Python库进行数据分析
招聘网站Python招聘职位数据爬取分析
掌握使用Python开源人工智能框架进行人工智能软件开消戚野发、语音识别、人脸识别
掌握基本设计模式、常用算法
掌握软件工程、项目管理、项目文档、软件测试调优的基本方法
②Python软件开发进阶
③Python全栈式WEB工程师
④Python多领域开发
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,中博软件学院、南京课工场、南京北大青鸟等开设python专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。