按使用的语言来总结一下2017年。
TypeScript
用TypeScript写了:
- 一个React前端项目
- 一个React + Electron的桌面应用
- 一个后端API项目
Redux、React都有完善的类型声明,编写TypeScript代码体验很好,具体可以看 用connect连接react组件和redux怎么理解 里的写法,不用再纠结组件的props类型不对等问题。但是前端状态管理是个大问题,Redux写得尤其繁琐,我也没继续深入弄其他解决方案了。
第三个后端API项目,还算比较成功,上线了大半年,没有明显的性能问题,做修改也是非常容易。印象最深刻的一次是紧急增加了个小需求,没有去看代码和文档,一路用VS Code自动补全,直接用原有的模块完成了一个接口。
还用了一个Docker集群去做部署(先是阿里云的集群方案,后是Swarm),集群监控、日志采集、配置管理等等都没少弄。
PHP
写了:
- thank-you-stars:给composer依赖加星的小程序
- strip-bom:去UTF8 BOM的小程序,比sed、tail快
- 自动为每个分支部署docker容器的小项目,用了一段时间就没有维护了
还有就是对旧项目的维护,没什么有趣的。
Pony
写了:
- pony-websocket:一个符合RFC6455的WebSocket服务器
- pony-cpuprofiler:Google的 cpuprofiler绑定
因为比较关心性能,所以写了IACA、ETW,顺便了解了SIMD和LLVM。
Rust
用Rust写了:
- php-stacktrace:一个看PHP堆栈的小程序
- 一个任务队列,管理ffmpeg转换任务
期间也遇到不少lifetime、ownership的问题,因为我也没怎么考虑性能,clone一下也能应付过去。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。