Тёмный

Language every javascript developer should learn:TypeScript 

JamesKool
Подписаться 67 тыс.
Просмотров 31 тыс.
50% 1

Follow我的telegram以即時收到更新:t.me/imjamesku
instagram: / jameskugm
部落格:tw.jamesku.cc
効果音 : OtoLogic

Опубликовано:

 

1 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 72   
@chun-lunghuang5530
@chun-lunghuang5530 2 года назад
對於大型 project,使用 Typescript 要確保團隊的所有人都擁有一定的水平把 type 定義正確… 至少要懂 generic type 和 function type 曾經遇過有些 project 用了一堆 any, type union, @ts-ignore,真的是一場惡夢,還不如直接寫 js… 另外,typescript 搭配 eslint, prettier, jest, … 都需要額外 dependencies 和 configuration,遇過很多次 @types/… 更新後不兼容或是版本衝突的問題… 大型 project 每次更新 dependencies 一定要非常非常小心 現在很多人都在提倡 Typescript,但建議不要在不了解之前就跟風。每項技術都有他的優缺點,一切都是 trade off
@leonode
@leonode 2 года назад
学习了
@cccgao1680
@cccgao1680 2 года назад
你是真正的明白人,太多人跟风了,ts要是用不好,维护起来开销大得多。
@manyes7577
@manyes7577 Год назад
觀念正確 沒有什麼是絕對的好 都要面臨取捨
@jcfawerd
@jcfawerd Год назад
真的,見過不少小白用了一堆Any
@jasonj3952
@jasonj3952 Год назад
搞笑的是这个TS还是专门为大型项目准备的,中、小项目根本没有必要。
@jak4079
@jak4079 2 года назад
其實強型別也是有好有壞,不過typescript未來勢在必行啊
@wongtszhin
@wongtszhin 2 года назад
不敢苟同, 既然都寫了typescript等強類別, 但編譯後不見的更快 何不直接使用rust或go等wasm, 行得更快 感覺ts 很雞肋
@armaggedomfinal1872
@armaggedomfinal1872 5 месяцев назад
我用go 寫後端,vueJs(Ts模式)寫前端,定義API時Go設計完struct後,直接貼到前端(兩邊struct& interface語法87%像),對開發速度和減少bug有很大幫助,個人經驗
@yk7697
@yk7697 Год назад
TypeScript 變麻煩 更難用
@soshows
@soshows 2 года назад
写代码 重要的不是过程,而是对机器友好高效!技术思维者写出一堆垃圾...
@ken-js3xu
@ken-js3xu 2 года назад
我覺得TypeScript最有用的是在vscode裹可以用 ctrl+空白鍵 就可以有完整的提示字, 在用library的時候不用一直去看doc, 特別是在用react nextjs就顯得更加有用, 按ctrl+空白鍵就可以看到要什麼props了, 所以根本不會想用javascript.
@JkeyKong
@JkeyKong 2 года назад
我这样说,如果你对javascript 非常了解了,这其实还需要 typescript 吗?如果再使用 typescript 不是很费时吗?个人开发应该不太需要,团队最好是使用typescript
@james-kool
@james-kool 2 года назад
我自己的經驗跟感覺是,就算是只有自己一個人在開發,你還是不可能100%記住你所有寫過的code。程式碼一龐大起來,回頭去看很久以前寫的地方,常常就需要重新讀一次,就算是自己寫的。所以TypeScript我覺得還是很有幫助的 使用typescript我覺得是一開始多投資一點時間,但可以減少未來維護、更新所需的時間,可以減少debug的時間,也可以減少未來要重複使用之前程式碼閱讀所需的effort跟時間,就是先苦後甘的感覺 不過實際上會多花費多少時間我也不知道,這只能實際測過才知道。
@JkeyKong
@JkeyKong 2 года назад
​@@james-kool ​ 我是没有所谓的,不了解自己写的代码,可能我写的没那么复杂,所以可读性高,如果做游戏的话,复杂性高,也许需要 (也可能framework 是我自己写的+基本 library) 我只知道我用 PHP 使我可以同时有8个项目的收入,工作时间是用8-10小时,也让我 9年无需回去打工。 巅峰时期 4天复制系统+修改的,价格 15k 马币 (PHP代码,2016年)
@james-kool
@james-kool 2 года назад
​@@JkeyKong 感覺以這樣的個人經驗討論沒什麼意義,我應該沒辦法說服你使用statically typed language比較好,有些東西還是要親自使用後比較有感覺。當然你可能已經使用過statically typed language了才得到這個結論,而就算使用過,每個人看法也不一定一樣,這邊有個討論串就有人在討論這件事了:www.reddit.com/r/javascript/comments/bfsdxl/if_you_dont_use_typescript_tell_me_why/ 裡面討論的內容就涵蓋了兩方的看法了,大概就這樣XD
@JkeyKong
@JkeyKong 2 года назад
typesctip, vue, python, flutter 使用过了,code 是漂亮,但是就影响赚钱的速度,还蛮纠结的,都38岁人了,也是想为自己铺后入,我8个月学的区块链技术已经可以卖钱了,接下来对游戏开发比较感兴趣,因为想开发元宇宙,不懂行不行,需要多久时间开发,现在也在想是否 react+typescript+游戏+元宇宙(AR+VR)+区块链的结合在一起
@soshows
@soshows 2 года назад
典型的技术思维:本末倒置...程式的运行场景多,还是写代码的时候多?一切以运行效率为唯一出发点考量...
@AlvinYap510
@AlvinYap510 2 года назад
剛剛學用Typescript寫React,寫到差不多要吐血 🤣
@Maifumei
@Maifumei Год назад
ts更适合小项目,大项目还是算了
@AlvinYap510
@AlvinYap510 Год назад
@@Maifumei 為何呢?
@jaredsun7728
@jaredsun7728 2 года назад
自从用了TS,真心感觉爽!
@SeaRich
@SeaRich 2 года назад
除非是很小的项目,不影响未来重构。否则,尽早采用TS。 另外,如果需掌握多种语言,那更是要尽早熟悉TS。不熟悉type , 是很难有发展的。就算是python 也是需要考虑写上type. 如果这个项目的未来并不明朗,写少点code就能跑起来,那就无所谓。
@SunShiNnneEee
@SunShiNnneEee 9 месяцев назад
從Scala 轉JavaScript 一開始超難受 後來用了typescript 只有讚
@ArisHuang-m5h
@ArisHuang-m5h Год назад
我原本主要都寫後端,也就是C# C++跟JAVA那些,而JS主要是很棒的互動工具,尤其整合一些WC或者框架。 不過JS的問題常常匪夷所思,TS至少消失了,但是強型別與一些應用,我覺得太過C# 造型,那勢必會遇到很多硬核的缺陷,如果他能更像python就好了。 當然,有很多時候JS還是好用很多,尤其你的應用不一定非給掛上其他框架,只需要jQuery或WC驅動一些小互動的程式時,過去寫得古老的JS Libary直接用就不錯,至於TS的那個轉換工具,其實還沒做到無痛轉換,所以也是個坑,真的需要看狀況用。
@kit00001
@kit00001 7 месяцев назад
和我一樣都很喜歡python是吧,那pyscript.js完全可以試試呢
@kkklilili499
@kkklilili499 2 года назад
1. 請問你知道微軟有一篇論文指出 ts 只能抓到大概 15 % 左右的錯誤嗎?如果你本身有用 linter 會更少,但開發效率會降低不知道幾個檔次 2. 一堆人說使用 ts 讓他們更安心少更多 BUG,真的嗎?現在有哪家公司敢說它們改用 TS 少很多 BUG 的?但是開發效率看幾個有名的 repo 的 commits/release 次數就略知一二了ㄎ 3. ts 的錯誤訊息跟大便一樣,花了好多好多時間在看大便,真正的 feature 都沒做,換來的是沒有 Completeness and Soundness 的 type XDDDD 4. libs 的問題影片提過了,所以你要逼任何一個用 js 寫 lib 的人都給我寫一份 ts 嗎XD,ts 使用者真的好棒棒大家都要配合你
@kkklilili499
@kkklilili499 2 года назад
5. 不知道寫 ts 的是用三大框架哪一種?react 配上 ts 是惡夢中的噩夢 -_-
@james-kool
@james-kool 2 года назад
1. 不知道,不過單看只能抓15%錯誤我覺得有點太片面了。 2. 這個問法有點誘導式。每個公司的code都會有bug,沒人敢做這樣的宣稱。但如果typescript只有降低效率的效果,怎麼會這麼多公司使用? 3. 訊息的確不理想,不過通常查一下是可以解決問題的,看久了也會知道,從後面往前看會比較快找重點 4. 何來要大家都配合一說?沒人強迫你用 5. 個人是用react,不覺得是惡夢
@kkklilili499
@kkklilili499 2 года назад
@@james-kool 1. 太片面了?你是說微軟自己發的論文片面嗎 2. 很多公司 or 那些引進 ts 的人做了很多宣傳可以解決很多 bug 阿XDD 事實上有嗎?為什麼敢做這樣的宣稱?只是型別帶給你的幻覺而已,ts 有利有弊,這麼多公司使用不代表它是一個很好的東西,這幾年社群鼓吹用ts=讚,但真的好嗎?還是大家只是在跟風而已? 3. 所以你查了很多資料讓 ts happy 而不是真正的功能 (而且還不一定真的安全,甚至有時候還要用 workaround 解 ts 的智障型別) 4. 很多 js 的 repo 被使用者要求寫 type 因為他們 ts project 不能用阿XD
@nathanxu92
@nathanxu92 2 года назад
TS是趨勢呀 JS開發dapp的話,誰知道回傳的資料是什麼類型的😆 光是省去確認數字的類型就省心多了
@james-kool
@james-kool 2 года назад
@@kkklilili499 1. No 我是說從15%這個數字跳到ts沒有這個幫助這個結論太片面了。要知道15%代表是什麼,前後文是什麼。還有很多其他因素 2. 什麼公司宣稱,然後後來他們後悔了嗎,或是覺得js比較好嗎?我覺得你有點在立稻草人? 3. 有遇過那種情況,不過很少見,整體上覺得ts是有幫助的 4. 使用者本來就可以要求。maintainer也有權力決定要不要實作
@kuokuo33
@kuokuo33 Год назад
剛學TS的時候很討厭,用了不久就愛不釋手
@Maifumei
@Maifumei Год назад
typescript? NO
@willywang5253
@willywang5253 11 месяцев назад
只有我覺得音效很大聲嗎QQ
@silverghost
@silverghost 2 года назад
Vielen Dank! "用就对了"
@黃先生-d7o
@黃先生-d7o Год назад
Good~ Thanks~
@Yueyelongbob
@Yueyelongbob 2 года назад
非常好,用就对了hhh
@可達鴨-w7o
@可達鴨-w7o 2 года назад
經果你的解說跟整理,容易理解多了。
@可達鴨-w7o
@可達鴨-w7o 2 года назад
太優了
@可達鴨-w7o
@可達鴨-w7o 2 года назад
原來如此,謝謝。
@happycoding5162
@happycoding5162 3 года назад
您好!我們是快樂學程式,致力於推廣工程思維,提升數位能力。 想與您合作下班後讀書會系列主題,相關內容已在IG私訊您了,麻煩幫我留意下 感謝😊
@kelwong116
@kelwong116 2 года назад
謝謝分享!
@leonode
@leonode 2 года назад
我想想tsc有个watch模式是不是就可以实时看到js的增量效果
@jcfawerd
@jcfawerd Год назад
是,但會燒你的 CPU
@syutengu
@syutengu 2 года назад
显然如果有型极其重要,原生js就不会无型。既然可有可无,为什么要自寻麻烦,多此一举。原生最高,ts必亡。
@billchen8113
@billchen8113 3 года назад
還是覺得 python 的佛系 typing 比較好用 XD
@miniappletheapple
@miniappletheapple 2 года назад
python添加靜態型別沒這麼必要,因為python是強型別,很多時候可以讓代碼自己出錯
@ArisHuang-m5h
@ArisHuang-m5h Год назад
python 好用非常多
@KnifeLin
@KnifeLin 2 года назад
如果只是減少 debug 的難度, 那表示, 只是減少而已, 並非完美解決, 真的要解決, 應該要從專案分工時大家協同工作時, 介接的規格書做起, 這才是完美的方案, 但在台灣有受過這種規格書教育的人, 幾乎都是6 年級生以前的人, 現在的新生代, 幾乎沒有寫這個規格書的人, 我真的覺得累的點是, 現在的分析師或架構師, 真的不太懂重點不在你怎麼規劃 spec, 而是你有沒有寫出 design spec, 很多自以為本課系的高材生連這些 design spec 到底長什麼樣子都沒看過.. 不可思議
@jedywei
@jedywei 2 года назад
TDD 才是正道。 strong type 並無法保證 功能正確。
@KnifeLin
@KnifeLin 2 года назад
我實在有點看不太懂為何有人會認為 strong type 是有用的東西, ....也許有一些特點, 但成本太大, 而且將 strong type 和零 bug 綁架了, 真是沒看過世界...
@jedywei
@jedywei 2 года назад
@@KnifeLin 完全同意
@KnifeLin
@KnifeLin 2 года назад
@@jedywei 樓主還說 typescript 未來勢在必行咧, ... 不過就是語言而已, 台語, 國語, 以前也有人說台語就要沒人用了, 現在呢? 只要找到語言能發揮的地方, 都有人會開始用
@ArisHuang-m5h
@ArisHuang-m5h Год назад
真的TDD才是王道。我開發後端經驗,其實強型別的成本是遠遠超過弱型別,學習只是基本成本,真正成本事從設計到維護,你都需要更加注意這些型別的影響。他們是維護的高成本項目。很多時候,好處僅止於剛開始使用時,後面如果客戶有大量變動需求,你的設計都會變得需要額外考量,那並不事個簡單的事情。 不過TS跟風趨勢應該事難擋,即便很多公司用了以後發現還是Any。
@amigochan
@amigochan 2 года назад
在影片 0:52 提到 TypeScript 如果需要先做語法轉換為 JavaScript,我想請問有在使用的工程師網友: 1. TypeScript 是不是像早期的 C++ 需要先用編譯器轉換為 C,再用 C Compiler 編譯呢? 2. 承上,這樣會導致無法使用 IDE 除錯原始的 C++ 程式碼,所以後來被 C++ Compiler 取代。你們是如何克服呢? 3. 請問目前有在發展原生支援 TypeScript 的瀏覽器套件與 JIT 嗎? 還請各位不吝賜教,謝謝!🙂
@james-kool
@james-kool 2 года назад
1. 基本上是,雖然現在有些runtime可直接執行ts,但都不是主流,且瀏覽器應該都只支援js 2. 沒研究細節是怎麼運作的(印象中是用map之類的東西,等大神補充),不過vscode就有支援typescript的intellesense,也有debugger 不過還是希望早日native支援typescript成為標準~
@jcfawerd
@jcfawerd Год назад
2. 可以用 source map 解決
@jcfawerd
@jcfawerd Год назад
@@james-kool Javascript 已經有proposal 會為 javascript 引入 types definition,但不會做 type checking,跟 python 現行的 types system 一樣
@只是一个路过的
@只是一个路过的 2 года назад
说真的,我很少直接动到原生的js了,使用前端框架例如react都直接用jsx。前后端一体的语言/框架(php,asp.net,springmvc/boot)这些也没必要直接使用js,前端大部分时候只会动到html tag和css... 虽然知道强类型的好处(性能提升【细化类型让内存占用减少】,编译器实时报错【不用在run的时候才报】),但问题是js虽然很棒【啥领域都能掺一脚】,但真正在网页写js运行的场景也少。用的时候基本都是框架了,但问题是大部分框架也不在编程阶段用原生js了,而且尴尬的是框架也没多少直接支持ts的吧...
@jcfawerd
@jcfawerd Год назад
其實我現時用的npm dependencies有99%都已經有 typescript types,四大 library / framework 都 support typescript
@只是一个路过的
@只是一个路过的 Год назад
@@jcfawerd 这倒是我孤陋寡闻了😂 我在发这个评论好一两个月后确实发现typescript兼容性意外的好,很多情况下js源码可以无痛转型 而且敲代码的时候,有时想要查看我自己的jsx文件有什么函数还是功能的,Ctrl错文件很多次(主要还是文件太多,Ctrl省事)。然后每次不小心ctrl到第三方库大部分都是ts
@aginlo
@aginlo 2 года назад
現在只會js的 frontend 根本已經不合格了
@manyes7577
@manyes7577 Год назад
不然還要會什麼
@aginlo
@aginlo Год назад
@@manyes7577 至少要會ts 及一種框架
Далее
Don't learn these dying technologies
11:34
Просмотров 178 тыс.
#kikakim
00:10
Просмотров 12 млн
Лучше одной, чем с такими
00:54
Просмотров 654 тыс.
10 JavaScript Interview Questions You HAVE TO KNOW
13:41
Programming is hard. How should you start?
13:04
Просмотров 152 тыс.
Being Competent With Coding Is More Fun
11:13
Просмотров 85 тыс.
5 JavaScript Concepts You HAVE TO KNOW
9:38
Просмотров 1,4 млн
Microservices are Technical Debt
31:59
Просмотров 388 тыс.
TypeScript Origins: The Documentary
1:21:36
Просмотров 289 тыс.
#kikakim
00:10
Просмотров 12 млн