java python nodejs 这三种语言各有特点,我建议都必须学习,不要只会一种,编程是程序员一辈子的活, 多学总是对的.
小结:
- 基本上高级编程语言在解决网络编程,web编程,文件编程和数据库编程GUI编程, 方面功能都差不多,会一种高级编程语言就足够了, 但是也有一些小差异;.
- 对于高级语言,没有必要过多考虑性能,因为高级语言主要是处理复杂框架和逻辑,写法优化以后, 性能差异不大,只要稳定就够了
- 例如:js 语言的异步编程模式与传统的多线程模式差异很大,初学者必须学习,否则无法理解异步编程
- 会js 语言, 再学习一下html css dom就可以进行前端编程了,相对一个其他web项目来说, 少学了一种语言
- 编程语言只是解决问题的手段, 我认为对于不同的问题需要用不同的语言处理,例如: 芯片编程,底层接口和对时序控制比较严格的场景更适合用c和汇编开发
- (C与C++更多的是底层开发, java,python,nodejs 都可以嵌入 c的模块)
比较项 | python3 | java | nodejs |
---|---|---|---|
跨平台 | 是 | 是 | 是 |
字节处理 | bytes,bytearray | byte | typearray ,uint8array |
直接对象处理 | {}[] | 无 | {}[] |
主要用途 | 数据分析,底层接口服务,数学计算, | 模型和框架建设 | 微服务,前端数据支持,区块链 |
多任务模式 | 多线程,协程,多进程 | 多线程,多进程 | 单线程,协程异步 |
入手难度 | 简单->难 | 难->简单 | 简单->难 |
组件加载 | pip | maven 等 | npm |
代码结构严谨性 | 一般 | 严谨 | 一般 |
解决问题的代码量 | 少 | 多 | 一般 |
移植性 | 容易 | 容易 | 容易 |
并发锁设计 | 需要考虑 | 需要考虑 | 不需要 |