服务端的比对
- Web框架性能排名
- 一些观点
- Web框架性能有差,学习曲线、熟练程度、团队技能要求也有差
- 在兴趣和好奇下可以去追求极致的性能
- 在业务和发展下要追求稳定性、可用性、安全性和性能的平衡
- 数据库排行榜
- 一些观点
- 优先把MySQL或PostgreSQL搞明白
- Nosql可以深入研究一下Redis和HBase
- 当然根据自身需求学习:能用(80%)->用好(20%)->用到极致(4%)->自制(0.8%)
服务端的技能点
- 计算机常识(必须懂得的概念)
- 定义
- 作为计算机从业人员,必须掌握的概念
- 内容
- 算法+数据结构
- 操作系统
- 数据库
- 网络
- 编码
- 定义
- 编程语言(必须深入了解一种)
- 常见的选择
- Java/Kotlin(推荐👍)
- 技术体系完善
- 岗位最多
- Go(推荐👍)
- 编译速度天下第一☝️
- 并发简单易用且高效
- 生态也不错
- Python(推荐👍)
- 强大的第三方库资源
- 语法简洁
- 性能不够,C++来凑
- .NET
- C/C++
- 速度天下第一
- 适合对于性能要求很高的系统
- Rust
- 性能接近C/C++
- Node
- 优势在于密集IO
- 在较高的并发和尽可能的节省内存
- PHP
- 小站用的比较多
- Ruby
- 国外用的比较多
- Swift
- ⚠️ 纯粹为iOSer们自娱自乐
- Java/Kotlin(推荐👍)
- 一些观点
- 编程语言本身就是一组实现了的数据结构和算法的结合体
- 编程范式是构建和执行代码的思想
- 编程语言本身各有千秋
- 编程范式的支持
- 性能差异
- 语言生态差异
- 学习曲线差异
- 学习的意见
- 接纳不同,不设限制
- 用其所长,发挥价值
- 编程语言本身就是一组实现了的数据结构和算法的结合体
- 常见的选择
- Web框架
- 语言自成体系
- Java
- Spring系列
- Spring 是核心引擎
- Spring MVC
- 基于Spring的MVC框架
- Spring Boot
- Spring下的一组开发包(包含Spring MVC)
- Sprint Cloud
- 微服务解决方案(包含Spring Boot)
- MVC & Boot
- Boot & Cloud
- Dropwizard
- Spring系列
- Go
- Python
- C/C++
- Rust
- Node.js
- PHP
- Ruby
- Swift 看看就得了,权当尝试
- Java
- 语言自成体系
- 数据库
- 关系数据库
- NoSQL
- 操作系统
- 开发环境
- Windows
- MacOS
- Linux(还有很多)
- 部署环境(不仅限于此)
- 开发环境
- 网络工具
- 应用层协议
- DNS:解析域名
- SMTP:邮件发送
- POP3:邮件接收
- MQTT
- HTTP
- FTP
- P2P
- SSH
- 传输层协议
- UDP
- TCP
- SPX
- 网络层协议
- IP
- IPX
- RIP
- OSPF
- 数据链路层
- SDLC
- HDLC
- PPP
- STP
- 帧中继
- 应用层协议