为什么你们要选择 TypeScript?

2021-05-06 14:45:03 +08:00
 BoringTu
我只是不明白为啥这么多人会选择 ts ?理由是啥啊? ts 出来的那年我就关注了,但所有的理由在我看来都是莫名其妙的观点,但这些年怎么还用的人越来越多了?
咱就说脑回路很神奇的把本身弱类型为优势的 JavaScript,套了一层强类型的壳的这步操作我就看不懂了,这是图啥呢?这样代码写着不难受么?那你直接用 Java 写然后编译成 JavaScript 不好么?
网上有很多人说,用 ts 可以减少因类型导致的错误。大哥,你是个程序员,你连自己写的代码是怎么跑的都不知道的话,转行好吗?我十一年的程序员了,js 写了 11 年,js 的其他高级语言我也都研究过,包括 ts,但现在只用 es6 和 coffee2,我怎么就一次都没碰到过我连变量背后的值类型导致的 bug 呢?
24473 次点击
所在节点    JavaScript
303 条回复
zzlatan
2021-05-06 17:36:35 +08:00
@jeffwcx 倒也是。。
blindie
2021-05-06 17:42:24 +08:00
@kop1989
“但你又不希望你招来的员工在上班时间划水。”
结果导向的老板:我希望我的员工能给公司带来价值,只要能够尽可能多地给公司挣钱,我才不管他 /她划不划水。
一般的老板:叫爸爸。

结果导向不在意这些,爹味浓厚那自然又当又立。那作为员工是不是在能有选择的时候选择给正常的老板打工,如果不能那是不是应该想方设法给自己换老板呢?
所以唯一的上进的解还是努力提高自己,厚着脸皮在爹味浓厚的公司划水(学习)。
littlemcdull
2021-05-06 17:42:46 +08:00
@BoringTu 拜托看下我的回答的点赞数,夏虫不可语冰
BoringTu
2021-05-06 17:46:22 +08:00
因为回复太快被禁言 30 分钟,每次重新发都会重置这个 30 分钟,吐了。。所以这个回复可能会长一点。。

@nnnToTnnn 缩进语法我贼稀饭~ 所以只要我管理的项目里,技术栈就是 coffee + pug + sass (手动抠鼻

唉,我也就是吐个槽,但其他都不说,但就是 ts 的市场这一点,我就怎么着都得入 ts 的坑,咋说也得吃饭啊。。

@xd199153 哈哈哈,没有没有

@wangxiaoaer 我大概讲讲我的系统使用历程吧
刚用电脑的时候,那必然是 windows (哦行吧,是 DOS 。。),95 、97 都用过,然后是很长一段时间的 xp,后面试过 vista,但众所周知的难用,又回 xp.后来出了 7,卧槽真好用就一直都是 7 。试过 8,一样,又换回 7 。前面说的这个期间,我顶多是后期知道除了 win,还有很多其他系统,比如 OS X,比如各种发行版的 Linux,但因为对未知的恐惧,所以一直没换,也所以我当时手里的 macbook 买了就装了 win 7 。后来突然觉得自己是个傻 x,买了 mac 结果装 win ?所以我就强行装回 OS X,逼着自己去适应不用 win 。有一说一,前期真的难受,但那种难受只是因为不适应,因为快捷键和触摸板手势不了解,因为 windows 惯性思维而已。我忘了是多长时间之后,OS X 用的越来越顺手,这时候再用回 win,就变成 win 用着难受了,因为从人性化 从易用性角度来说,win 在 OS X 面前是没有任何发言权的。
所以我没有其他意思哈,但针对你说的 [我每次用 mac 都想死,用 win 的时候感觉要起飞。] ,我给你的答复是,最起码截止目前来说,你还不会用 mac 。就像上面我回复另外一位的时候说的,因为孩子的原因,我很久没碰我家的 windows 那台电脑了,也所以,我也很久没碰过鼠标了~ 我们可以反过来看这件事,如果 mac 难用的话,我这段时间是咋过来的~

@3dwelcome 你这个统计不能说明任何问题啊,只能说明字面上的使用占比而已啊
如果只聊 win 和 OS X 的话,原因是这几方面:
1. win 从出道开始跟 IBM 的捆绑销售,到后面的绝大部分市场电脑的捆绑销售(以及 win 盗版系统的猖獗
2. Apple 官方是不支持 OS X 装到非官方电脑上的(而且黑苹果就没遇到完美的,就算是黑苹果,你也一样需要硬件支持,比如最起码你得弄一块苹果的触摸板吧?还是要花钱
3. 之前我说过的思维惯性,因为 1 和 2,导致非 IT 行业的人绝大多数只听说过 windows 。既然没有选择,那就只有 windows
所以你能拿 windows 的 82.96%说明什么问题呢?

@g00001 你挺能杠啊兄 dei 。看看上面我说的,能回答你一部分问题,至于你说的 [怎么有时间上 V2 忙活一天不去多陪陪孩子] ,你上班能把孩子抱公司来?还是说你是自由职业?看你杠都杠不到点上,都替你着急。。

@xd199153 诶嘿,你还去看我代码啦~
是啊,文档复制啊,思路上肯定是:我现在需要获取这个蓝牙设备的所有特征值 -> 查文档对应的接口是什么 -> 查到了,复制,粘贴
如果我连接口名都不知道,我怎么知道是 getB 开头呢?你这命题本身就不成立啊,这需要一个前提,我有一个模糊的印象,而且这个模糊的印象里包括开头是 getB 。

@yohole 哈哈哈,这个问题问得好。。
Imindzzz
2021-05-06 17:49:17 +08:00
@yohole 这个确实,我有时候去搞 java c++,也是有很多工具链上得问题卡主(比如 maven)。

但这个其实只是熟练度的问题,去任何一个新的领域都会这样的。 因为不常用所以不知道怎么搞。

可以强制自己先跑起来,再说如何优化。


具体到前端这个来说
1 、装 node/npm
2 、装上 npm 源解决网络问题 ,推荐安装这个一劳永逸 https://www.npmjs.com/package/mirror-config-china
3 、用脚手架初始化
vue https://github.com/vuejs/vue-cli
react https://github.com/facebook/create-react-app

4 、npm i , npm run start
BoringTu
2021-05-06 17:51:44 +08:00
@wangsyi13 兄 dei,你怎么得出的结论?
wang48ql
2021-05-06 17:52:01 +08:00
有类型提示和没有类型提示的区别,按理说有写过 ts 就没这个疑问了啊
BoringTu
2021-05-06 17:55:57 +08:00
@littlemcdull 你好像有那个大病?
你习惯性俯视踩踏别人被我给怼了,然后你跟我说你点赞数?以你这种逻辑思维,你是怎么当的程序员?工作不如意来网络上找存在感来了?
yunyuyuan
2021-05-06 17:58:09 +08:00
你这语气就像引战一样,ts 的名字不就说明了它的用处吗,就是给 js 加一个 type 。
用不用的上,因项目而异,因人而异
littlemcdull
2021-05-06 17:58:20 +08:00
@BoringTu 你开心就好
lonelymarried
2021-05-06 17:58:45 +08:00
现在都流行出第二语言,类似 oc 出个 swift,java 出个 kotlin 。js 再出个 ts 。话说我真的学不动了,语言转换不过来了,最近经常写 oc 、js 、dart 、java,疯了。
LancerComet
2021-05-06 18:00:20 +08:00
我来说一个 TypeScript only 的特性,TS 带一个能力很弱的反射,我平时在项目里用这个特性实现两个东西,一个是接口字段映射 + 类型安全的 Serializer,一个是在 Model 上做注解的表单验证器,这两个东西让切图也可以像其他语言一样以 Model 为中心;另外还有一个是服务容器,要实现一个根据类型注入实例的服务容器,只能用 TS
LancerComet
2021-05-06 18:01:17 +08:00
@LancerComet 但对于这个东西,我认为楼主的疑问应该载入,明明是个切图项目,还搞这些花里胡哨的玩意,不应该动态弱类一把梭吗
BoringTu
2021-05-06 18:02:22 +08:00
@yunyuyuan 看起来像引战的原因是,这个话题本来争议性就大哇~

但我问这个问题是真不能理解 ts 存在的价值(当然,形势所趋,我必然也得入 ts 的坑

你要是看了前面我回复别人的话你就理解为啥我会问这个问题了,我 java 入行,就是因为看到 js 的弱类型的优势,所以甘愿大幅降薪转做前端从零做起,因为 js 好玩,工作是生活的一部分嘛,总要让工作有点乐趣。结果 ts 还把弱类型这个特点给堵上了。。
BoringTu
2021-05-06 18:05:02 +08:00
@LancerComet 哟西,我研究一下这几个东西~
Justfakemoz
2021-05-06 18:05:36 +08:00
活活浪费了 11 年
yunyuyuan
2021-05-06 18:06:56 +08:00
@BoringTu #134 我 python 入门的,和你一样看 js 弱类型才玩的,也不喜欢用 ts,但是 ts 也不赖啊,命名时设一下类型,IDE 会自动补全使用部分的
BoringTu
2021-05-06 18:08:00 +08:00
@Justfakemoz 你好像跟上面的某位一样有点那个大病?
BoringTu
2021-05-06 18:09:46 +08:00
@yunyuyuan 嗯。。我只是思想上挣扎一下。。
然后上面看到一位大佬说了几点 ts 的优势,我去研究研究
不过不管咋说,就算因为市场原因,就算 ts 没什么优点,我肯定也得入 ts 的坑,毕竟要养家糊口。。
wemadecode123
2021-05-06 18:12:56 +08:00
代码如果是你一个人写,随便你怎么搞。考虑下下一个接手的人,考虑下大型团队合作开发。现代语言越来越重视 [类型] 这个概念,没有 [类型] 大型项目可持续迭代举步维艰。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/775169

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX