Asana
的工程师是TypeScript
早期的粉丝,最开始是在2013年使用0.9.1
版本,且有超过一万个TS文件。
作者发现一个TypeScript
鲜有人知道的问题:TypeScript的怪癖和边缘场景产生了很多困惑。 TypeScript的编辑器中有大量特殊的场景和惊喜,留给工程师们抓狂。虽然这些行为单独没有多大影响,但是合到一起会让初学工程师更难继续精进。
作者列出来他最喜欢的三个让初学者持续困惑的惊讶:
- 大量属性的接口(Interfaces with excess properties)
- 类(名义上的类型)(Classes - nominal typing)
- 区别对待的结合(Discriminated Unions)
原文可以查看详细内容,文中还有针对TypeScript的一些思考🤔。