音声書き起こし
1. オープニング
Guest
それではこんにちはこんにちはえ、今週もイテンサイドやっていければと思います。はいえ、まず初めにこのポートキャストについて説明させてい
Guest
いただきます。このポッドキャストは、ユーザーインターフェースと、テクノロジーを愛するエンジンが、毎週最新のフロントエンドの動向について語る為のポッドキャストです。
Guest
最新のweb標準の動向や開発、フレーム枠の変遷、またまたurやuxに関することまで、最新のトレンドをキャッチアップすることを目的としております。
Guest
今回はですねえ、up所属のjsであるえ、私はたえ、ポテトfdとともにですね。ゲストとしてと、タイプスクリプト周りで。ちょっと有名なうさんが。えと、弊社の新卒ですので、お話を聞いていければと思いますよろしくお願いいたしますはい、よろし
Guest
お願いいたします。
Guest
はいというわけで、今回うさん初出演って話になりますけど、ちょっと軽く自己紹介してもらってもいいですか。はい、
2. ゲスト紹介
Guest
自己紹介させていただきますはいま先ほど紹介いただいた通りうひと申しまして、まあ、去年2019年の4月にま新卒でLINEに入社しました。
Guest
で、入社してからずっと、まあ、LINEのフィナンシャル系の部署に配属されていまして、
Guest
具体的には、LINE証券というアプリのフロントエンドを担当しています。で、私のことは例えばキーなんかを熱心に読まれている方は、タイプスリフトとか、イマスクリフトの記事よく書いてますので、それで、私のことをご存知という方も
Guest
いらっしゃるかもしれ、
Guest
あとはあれですかね。イベントのトークとかであった、安全性の極北から見るタイプ、スクリプト。
Guest
そうですね、これは、2019年の10月に
Guest
タイプスクリフトミートアップさんというイベントで登談させていただいた時のタイトルなんですけど、まあ、安全性に直振りした観点から、まあ、タイプスクリフトってものを論じてみようみたいな、そういったタイトルの失礼、そういった
Guest
内容の話でしたね。
5. Q. Compiler Option どうする?
Guest
今日はですね、そんなLINE証券で、まその極北から見るLINE証券の現状とか、まあ、仕事での状態とかどんな感じなんだろうなっていうのを私聞きたいなと思って、ちょっと全然
Guest
l証券の話。私詳しくないんですけど、聞かしてもらえればと思います。じゃあ、お願いします。
3. LINE Financial Tech Stack
Guest
これ、お聞きの皆さんが炎証券て何っていう方もいるかもしれないので、ちょっとだけ基本の情報の話をさせていただきたいんですけど、
Guest
まあ、名前を見てわかると、今LINEで株が変えるなっていう。まあですね、まみさんのLINEアプリのオトタブの中に、証券っていうのがあります。
Guest
これ、リリースが去年の8月で、比較的新しいプロダクトなんです。
Guest
技術的には、タイプスクリフトと、あとリアクトを使ってるま、いわゆるspaっていうやつですね。
Guest
このLINE証券は、ま、LINEのspaの中でも比較的ま大規模なものだと思います。
Guest
ま、コードの量で言うと、タイプスクリットのコードが10万行くらいはあるあるみたいです
Guest
でも、結構な量ですよね、そうなんで
Guest
それなので、ま、結構チームのメンバーも多いんですよ。ま、フロントエンドだけで、全部で13人のメンバーがめちゃ
Guest
めちゃめちゃめちゃいますよね。そうなんで、
Guest
証券にがっつりコミットしてるメンバーみたいな感じですかね。
Guest
そうですね、LINE証券だけ、フルでコミテしてるメンバーが13人めっちゃいますねえ、
Guest
それはもう完全にワンチームって感じでやってるんですか。
Guest
そうですね、ワンチーム同じリプ1人でまプリわれたら、まあ誰でも見るし、まあ、レビューもするという状態ですね。はい
Guest
じゃ、結構なんかあのなかなか活発そうだけど、一方で結構かしそうな感じもしますね。
Guest
ですね、結構本当に大きいプロジェクトなので、まあ、チームの統制っていうんですか。はいていうこととか、あと、それこそ高度の品質をどう保つかなみたいなことを最近は考えて
Guest
と、そのコードの品質といえば、tsの話かなと。今日は思いますので、ええ、技術的な方も聞いていきましょうかね。じゃあ、まずなんですけど、まこの去年8月にリリースした新しいプロダクトっていう話
Guest
えだと思うんですけど、結構あそこってまだ方を完全に書ききってはない。プロダクトま、その完全な定義でやってるわけではないプロジェクトなのかなっていう風に見てる人も多いかなと思う。
Guest
ですけど、はい、その初見の技術選定とか、走り出しがどんな感じのえものだったかっていうのを聞かしてもらってもいいですかね。
Guest
はい
Guest
ま、LINE証券を最初作り始めた時は、チームのメンバーはまタイプスリ人未経験の人が実は多かったんです。初期のメンバーの中では、1人だけタイプスリ人の経験者がいたらしいんですけど、はい、他の人はもう
Guest
これまではsnjavascriptで、spaとか作ってきたっていう人たちです。私は新卒なので、そのそれを直接聞いていたわけではないんですけども。まず、タイプスクリフトを入れるかどうかっていうことは、結構議論したらしいんです。そうなんですね、
Guest
ま、結構議論をしたらしくて、ま、その当時の異臭とか見るとですね。や、我々にはタイプスクリプトなんていらないんじゃないか、
Guest
そのジャガスクリフトでも、ちゃんと書けるでしょう。みたいな、そういった議論もされていたんですけど、まあ、新しいプロダクトということで、まあ、開発にスピード性が求められる状況なので、まあ、タイプスクリプトっていう。まあ、ちょっと慣れてないものをか
Guest
ことで、スピードが低下してしまうっていうのが、多分懸念されてたことだと思います。
Guest
最終的には、なんかどんな感じで、tsに導入に至ったって感じだったんです。
Guest
まあ、とりあえずtsでやってみようかっていう感じで、ひとまずま仮にって言っちゃなんですけど、本気も本気ではない形で、タイプスクリプトの導入がされた
Guest
ということだと思います。タイプスクリットの特徴で、まいざとなれば、結構簡単にjavaスクリストに戻せるっていうのもありますので、
Guest
まあ、それもあって、とりあえずタイプスクリプトをやってみたってことですね。
Guest
じゃ、まずは、ちょっと技術的にチャレンジしてみようかっていうところで、まあ、その元々はちょっと議論が色々あったけど、まあ、ひとまず入れてみるのは入れてみようかって感じだった
Guest
そうですね。ま、とりあえず、チャレンジっていうのが本当にその通りだと思います。最初の頃とか見てると、あんまり型の注射がしっかり書いてなかったりするんですよね。はい、
Guest
まあ、割とsnojavascriptに近い形で書かれている
Guest
ま、それがま時代が進むにつれて、やっぱりみんなタイプスクリットに慣れてきたんでしょうね。ま、あとは、タイプスクリットの
Guest
もたらす、安全性っていうんですか。はいはい、はい、ちゃんと気づいてきたことで、次第にちゃんと型を書こうかなという意識が高まってきたんじゃないかな、というのは、
Guest
まあ行動ま読んでいると見て取れるとい
Guest
なるほど、なるほど、ありがとうございます。結構じゃあ、初期の方はjavaスキリットらしい行動のが、まだ結構初期の方に書かれた行動は多いって感じなんですかね。え、
Guest
そうなんです、実は最近まあ、そういったコードにちょっと苦労させられたりすることもあるんですけど、はいはいはい、
Guest
なるほどなるほど
Guest
ま、最近は本当にまタイプスクリプト
Guest
にかなり慣れてきたので、もうタイプスクリットを最初にまあ入れてよかったなというふうに、チームのみが感じていると思います。
Guest
それは、めちゃめちゃ技術的な挑戦として、結果としてもいいことですね。
Guest
そうですね、もう大成功と言っていいと思。
4. React/TypeScript の運用状況
Guest
今のリアクトtsの運用状況とかっていうのも、ちょっと聞いてみたいんですけど、はい、ちょっと教えてもらってもいいですか。
Guest
そうですね、私がまず今我々のコードベースに感じているのは、
Guest
なんか自由だなっていうことをですね。ま、いい意味でも、悪い意味でも、なんか自由なコードベースだなっていうのを感じていて、例えば1つは
Guest
リアクトってよくステット管理、ライブラリと一緒に使われるじゃないですか、有名なところで、リラックスとか、
Guest
実は我々のアプリで、そのステート管理、ライブラリがほとんど使われてないんですよね。実は多少使われてるんですけど、基本的には、リアクトのリボルトのステート
Guest
の機能、コンポーネントだったら、リゾットステートとか。最近はまあ、リアクトの腹を中心的に使ってるので、ユズステート、あと、ユーズリデューサーとか、
Guest
そういうのを使っても、例えばページ単位とか。はいはいのステートが全部管理されているんです。ああ、なるほど、
Guest
じゃ、コンテキストとかも使ってないって感じですかね。
Guest
テキストは必要に応じて使われますけど、はい、あんまりどこでも可でも使われているというわけではないですか。
Guest
なるほど、最小限に抑えてって感じでやってるんですね、どうしても影響範囲を大きくなりがちなんで、こうあえて使わないっていう選択肢も。ま、それこそ、フックスの文脈とかで、最近は増えてきてるような印象もそうありますね。
Guest
なので、まあ自由と言ったのは、まあ、割と各々が好き、勝手な書き方をしている部分がちょっとあるんですよね。まあ、
Guest
あんまり無理に縛るようなコーディング規約がないって言ったら聞こえはいいですけど、まあ、悪く言ってしまうと、まあ統一感がないっていうことではあるんです。
Guest
はいはいはい、どのコードベースもそれぞれの文脈に合わせて考えて書かれてるけど、別にプロジェクトとして、こういう書き方だよねっていうのがあるわけではない、みたいな。そう
Guest
そうですね、結構書いた人によって、多少なんか書き方が違ったり、なんてことも実はあったりします。
Guest
タイプスクリプトの会話だと、なんか、タイプとインターフェースの使い分けみたいなことが度々議論されてますけど、まあ、うちのチームでも1回議論したんですよ。
Guest
タイプとか、インターフェースに統一すべきかなみたいな。はいはい、でも、結局まあ
Guest
どちらかに統一するま、とても強い理由付けっていうのが結局ないんですよね。好みによると
Guest
コロナそうですね、
Guest
じゃあ、うちのチームの場合、ま好みによるんだから、好みに好みに寄っとけばいいんじゃないか。実害もないし、はい
Guest
はいはい、
Guest
なるほど、そういう結論になりがちですね、うちのチームだと、ま、そういう意味でま、自由っていうんですかね。はいはいを感じています
Guest
ただ、まあ自由と言っても、まあクオリティが低いわけではないな、という風に感じています。
Guest
あ、さっきちょっとまあ、チームで議論したんですって言いましたけど、いま、ちゃんと議論ができることが
Guest
ま、チームとして、とてもいい点だなっていう風に思っています。まあ、何も考えてないで、自由にやったらもうひどいポートレースができてしまうんですけど、
Guest
ま、考えた上で自由にやるってのは、そんなに悪いことじゃないなって、最近は思っています。
Guest
それぞれのちゃんとオピニオンをはっきりした上で、議論してやっていけるなら、まあ、そんなにその
Guest
ガチガチなコーディング契約で、みんな同じように書く必要もないんじゃないか、みたいな。そうですかね、
Guest
確かに、その議論ができるしっかりとパワーがあって、みんなおニもあるチームだと、そういうのは結構面白いかもしれないですね。
Guest
ええ、
Guest
なんか、ほかに今の運用状況とかで特徴的なとことかあったりします。
Guest
そうですね、私、新卒入社の後、5月くらいに
Guest
LINE証券に配属されたんですけど、とりあえずまず配属されたら行動を読むじゃないですか。そうですね、私、最初にどこ読みに行ったかとかわかったりしますか。
Guest
どこに行ったんすか。
Guest
そうですよね、タイプスクリプトって、tsコンフィグドト、ジェイソンがあるじゃないです。はいはいはい、タイプスクリプトのコンバラのセッティング書いてあるんですけど、はい、とりあえず、最初にそこを見に行ってみたんですよ。そ
Guest
ま、うちのチームのコンパイラーオプション、どんな感じなのかなって見たんですけど、ま
Guest
ちらっと見たら、ストリクトトゥルーって書いてあったんですよね。ま、ストリクトってのは、まあ、タイプスクリプトのま厳しめのチェックをオにするっていうことなので、
Guest
あ、これは素晴らしいと思ってね。
Guest
見て、その下の魚を見たら、ノ。インプリシットにフォールズって書いてあって、そこを見た瞬間に色々考えが派遣に巡りましたね。あれ、これって、javascriptから移行したプロジェクトだっけと、かま、ちょっとショックを受けましたけど、
Guest
まあ、そんなものかなって思いましたね。
Guest
まあ、新しいプロジェクトであったので、まあ、ノーインプリシットインにスルーにしようと思えばできたと思うんですけど。は、いま、
Guest
前のプロジェクトメンバーが関わっていた前のプロジェクトとかから、ちょっとコードを流用しようかななんて思ったら、
Guest
あ、そのコードはjavaスクリプトなので、まあ、ノーインプリシットウィニーがツルーだと。なんかエラーがたくさん出てしまって、ちょっと辛いところがある
Guest
ので、ま、それが1番おっきな理由で、まあ、ャガスクリフトのコードベースから持ってきたコードでも、すぐにコンパイルが通るようにっていうことで、
Guest
ノーインプレジット、エデンオフォルスにしたんじゃないかなって思います。確かに、
Guest
既存のコード資産を使うっていう意味では、jsからtsだと、そこは
Guest
結構
Guest
バイルエラーが出そうなとこではありますよね。そうなんです
Guest
ですよ、タイプスクリットで新規開発って言っても、ま、そういうことがあると実質まjavaスクリストから移行したのと、また状況になるんですね。
Guest
そこに関して、なんかチームでこうやってやっていったみたいなとかってあるんですかね。
Guest
そうですね、私、配属されて、1ヶ月くらいはちょっとこう様子を見てたんですけど、え、このチームはどんな感じなのかなって、
Guest
まあ、さっきも言ったようにま、議論ができるチームだなみたいなことを思ったので、まあ、ノインプリシットニートにしたらいいんじゃない。っていうことをちょっと言ってみたんですよね。
Guest
まあ、そしたら結構簡単にチームでは。あ、そうだね、ノインプリショイトルにした方がいいよねっていう空気にはなったんです。はいはい
Guest
でちょうどその頃って、まあ忙しさが人段落していた段階でこうノーインプリシットウィニのれエラーを
Guest
あのインプリシットウェニアをツルにするとま追加のコンパイルエラーが出ますので、はいはいはい、そのエラーをちょっとリストアップして、手分けして直して見ようとしたんです。はいはい
Guest
はい、潰していこうみたいなフェーズですよね。がっつりそうなんですけど、はい
Guest
まあ全部エラー消せればノインプリシットエデンをツインできるんですけど、まあ、結果としてはそれは断念してしまったんですね。
Guest
ま、エラーが多すぎて、しかもちゃんと選直そうと思うと結構辛かったりするんです。ま、じゃ、バスクリプト的なやり方にべったりなところだと、タイプ作る人とちょっと合わなかったりもするので。そうですね。
Guest
まあ、そういうことがあって、やってるうちにちょっとまた忙しくなってきたのもあって。ノインノインプリシット、エニのエラーを全部消せずに、
Guest
結局まツルーにはできなかったんです。はいま、そこで実は次の手を打ったんですけど、は、いま、それこそが。実は私が
Guest
2月の22日の
Guest
tsコンフjpですね。ノ。インプリシット、ニースルーニはできなかったんですけど、それでも、ノインプリシットニーの恩恵をチームとして受けたい、
Guest
なんとか進出を向上したいということで、ちょっと手を振ってみたんです。
Guest
そうですね、ノインプリシートに長期戦を挑んだ話。
Guest
あ、さっき言った。ちょっとみんなで選直そうとしてみたってのは。まあ、どちらかというと、短期決戦という感じですね。はいはい
Guest
ま、それでは残念ながらうまくいかなかったので、もう長期的に進出改善に臨んでいこうというのが次のプランでした。ああ、なるほど、なるほど、
Guest
これは現在も進行中なので、まあ、結構皆さんにも役立つ話にはなっていると思いますので、まこご期待というところですね。
Guest
すいません。そんな感じで、色々タイプ、スケプト運用の現状を聞かしてもらって、ありがとうございました。
Guest
じゃあ、ちょっとですね、それとはまた別にちょっと証券の話も含めて、私
Guest
こう。
Guest
スクリプトランをタイプス、スクリプトでしていくってのもできる言語ではあると思いますし、ポテンシャルはすごいあるからこそ、みんな結構最近
Guest
あの色々挑戦してると思うんですけど、一方で、ま。あの、今回のノンインプリシットニーの話みたいに、どうしてもまプロジェクトの都合によって有効ができないよね。とかま、その機能は全部使いきり
Guest
着るのって難しいよね。みたいなこととかあると思うんで、どこまで、そのtsをプロダクト開発で、ディープに使うかみたいなのを聞きたいなと思ってて。なるほど、
Guest
あの、いくつか聞かせてもらってもいいですかね。はい、ちょっと私の方で持ってきたんで、
Guest
1つ目がまちょっと、もうなんか全部って言われたらそうですね。ってなるんですけど、あの、なんか、コンパイラのオプションってまいっぱいあるじゃないですか。今みたいに、
Guest
その結構ピアってオプトインというか、その自由に色をどんどんしていけると思うんですけど、ま、これって別にそのあのストリクトじゃなくて、一部ずつ音することもできると思う
Guest
で、その辺で、そのチームの状態に応じて変えられるっていうのも1つの魅力かなと思うんですけど。プロダクトで初めてtsを導入しようって場合とか。はいまあ特に。じゃあ新規で今からj
Guest
普通のメンバーだけだけど、ts入れたいんだよね。みたいな場合とかって、どっから抑えていくといいですかね。
Guest
まあ、新規にタイプスクリプト
Guest
を導入しますという場合は、話は簡単でま全部オンにしてください。それかりですけど、ですよね、そうですね、ただ、
Guest
スレクト系のオプションで1つだけ毛色が違うのがさっきも話題にな出ました。ノーインプリシット、エニですね。はいはい
Guest
をま補助するためのコンパイラーオプションみたいなところがあります。
Guest
これがフォルスになってる方がより、snjav作る人に近いコードにもコンパイルが通るようになりますので、マイグレーションの途中は、これをオフにするのはいいかなと思います。はいはいはい。
Guest
ただ、やっぱり新規開発では、マイグレーションとかないので、基本的にはノインプリシートにもツルーにするのがおすすめですね。
Guest
そうですよね、あの、インプしてによォールスにして運用するのと、トゥルーにするけど、tsegのは使うのだったら、どっちがましなんですかね。
Guest
うん、難しい質問ですね個人的にはtsegのははあんまり使わないですね、
Guest
ts行くのは、使う時はなんでしょう。結構、ファイル事をまとめて、無視してしまうことが多いんですか。
Guest
はいはいはい、そうですね、
Guest
なんかそこで、まあ、ノーウィンとシトニンはトゥルーにしたいけど、どうしても無理なところはtsnaでやるのか、なんか、それとも、みたいな考えるとどっちがいいのかなと、ちょっと
Guest
気になった感じですね。
Guest
そうですね、
Guest
まあ、tsegノアよりはノインプリシュトイニはォールスにする方がまだ制御が聞きやすいかなっていう風に個人的には思います。
Guest
了解です、ありがとうございます次の質問に入りたいんですけど、はい、あの、
6. Q. 「型パズル」してる?
Guest
いわゆる型パズルってやつあるじゃないですか、ありますね、あの、あれって
Guest
まあのぶっちゃけあれって読める人読めない人いると思って。そのですし、あの、あの書いた瞬間は覚えてるけど、後から読むのしんどいとか普通にあると思って、なんか
Guest
あの、それも含めてどれぐらい現場でやってんのかなみたいな。だから、そのぐちょに書くやり方もあるし、がっつり書いて、
Guest
あの実はこれがこういう式になって、こういうコンディショナルタイプスが書かれてて、こうなんだよっていうところを、みんなでこう取りながらやる方法と、どっちもあると思うんですけど、
Guest
どんなふうにやってんのかなっていうのを聞きたかったんですけど、どんな感じですかね。
Guest
はい、我々のプロジェクトだとは、いま、昔はそういった類いのものは全然なかったですね。
Guest
まあ、私が入ってからちょっと私が個人的にそういうのが好きなのもあって、
Guest
まあ、スキーを見ては型パズルを混ぜようとするはいいようなところはありました。最初はやっぱり
Guest
ま、チームメンバーが型パズルを見てんなんだ、これは全くわからんぞってまあななるんですよね。はいはい。
Guest
なので、最初はなかなかコードベースにカパズルが混ざっていかなかったんですけど、まあ
Guest
根気強く。まあ、私はまあ、説明をちゃんと書くとか。はいはい、コメントでちゃんと説明するとか、あとなんでしょう。
Guest
こう比較的簡単なマジックから使っていってこうチームのみんなに慣れていってもらうと、
Guest
はいはいはい、
Guest
そういったことをしていましたね。例えば、タイプスクリフト特有で比較的難しいけど、その中では入門レベルの方として、toブ型っていうのがはいはいあります。
Guest
最初はキ用型もほとんどコードベースに使われていなかったんですけど、
Guest
ま、私がちょっとずつあ、ヒロがここ使えば便利かな。みたいな。はい、場面で使っていって聞かれたら、
Guest
こ、これって何。って聞かれたら、ちゃんと説明することによって、まあ、チームのまあ、カパズル力がちょっとずつ上がって
Guest
行きまして、今ではto型くらいはチームメンバーみんな読めるし、使いこなせるという状況にはなってます。
Guest
個人的には、もうちょっと難しいようなパパズルもやっていますね。それこそ、マップとタイプとか、コンディショナータイプをちょっと南業かに渡って、
Guest
まあガチ名っていうんですか。そういうのも、実は何か所か
Guest
使ってまして。なるほど、なるほど、
Guest
そういうのをやるときは、本当にコメントをきちっと書くようにはしていますね。
Guest
それで、あとまあ私の型パズル力ですか。に対するチーム内での信頼がちょっと気づかれてきたことも、あ、
Guest
それはめでたいこと
Guest
ま、それもまあ、ちょっと認められるようにはなってきたところですね。
Guest
運用とか含めて、なんか、カパズル的なことをやるときに気をつけてることとか考えてることってどういうのがあります。
Guest
そうですね、まあ基本的にはまあカパズルでも普通のプログラムでも同じなんですけど、はいこう適切に分割することが1番大きいですね。
Guest
ま、それこそ1回書いてしまえば、あんまり変更しなくてもいいようなユーティリティを作るとか。はい、あと、それに
Guest
当たって、ちゃんとま、債務の責務の境界をはっきりして、こうなんでしょう。コメントで、適切に説明することによって、まあその
Guest
少なくとも使い方は皆さんに理解してもらえてい、
Guest
あとは、スキムがしっかりしてることによって、まあ、読解のパズルの読解の頼りにもなるま、そういう書き方を目指してますっていうのが1つとはいま、あと、
Guest
結構アプリケーションレベルに近いところでも、カパズル的なことが発生したりするんですけど、
Guest
ま、そういう時はまいざとなったら捨てられるようなものを書くこと、
Guest
心がけています。うんていうのは、ま型パズルをやる時っていうのは、はいま、具直にもできるけど、
Guest
まあ、カパズルを使うことによって、まよりスマートでま片パズルが分かりさえすればま、メンテナンスも楽である。
Guest
はいはいはい、
Guest
そういう時に使うんですけど、
Guest
逆に考えればそういうのはまいざとなったらぐ着な方向に戻しやすい。はいはい、あぐちょな解決策も存在しているので、そういうところは、まあ、
Guest
難しい方をちょっと入れてみ入れてみるのに、適してるんじゃないかと思います。なるほど、なるほどございます
Guest
じゃあ、なんか別にその片運用するのがしんどい場合は、愚辱に戻してもいいようなところっていうのを意識してやってるって感じですかね。そ、
Guest
そうですね、幸いにしてまだ戻されたことはないんですけど、はいはいはい、まあ、もし全然これ分かんなくて、誰もメンテできないぞってなったら、コメントを頼りに、
Guest
まあ、具直な元の姿に戻せるようにっていうことを意識しています。ありがとうございます
Guest
いや、結構この辺ってまそうは言っても、ああいうのはなんかなんでしょ。
Guest
それこそ、パズル的にちょっと面白いからやってるけど、普通に帰ったらしんどいよねって人も結構多いかなと思ってたんで、なんか、チームとしてやってるみたいな面白いですね。
Guest
そうですね、個人的にはま利点があるからこそやってるんだよっていう立場を取っていきたいな、という風には思っています。
Guest
まあ、意味もなく分かりにくいのではなく、まあ、それなりのメリットが
Guest
あるんだよっていうことですね。はいはい、分かりにくささえ克服してしまい、してしまえば、まあ、いい書き方だっていう、そういう方パズルですか。を目指しています。
Guest
ちなみに、この間ソーシャル見てたら、あんまりカパズルって言葉が好きじゃないみたいな話もされてましたけど、なんかその辺って理由があるんですか。
Guest
そうですね、今、今回型パズルで自分で連行しちゃってて、あんまり説得力が説得力がないような気が
Guest
忘れてしまったみたい。
Guest
パパズルもまあ、1つはさっきの繰り返しですけど、まあ、意味なく芸術的なことをしたいのではなくて、ちゃんとまあ、カパズルさえ理解できれば、ちゃんとメンテナンスの利点があるとか、そういうことをやってるので、
Guest
まあ、ちょっと難しい。プログラムの言語機能を使うのと、そんなに本質的に違うことではないな、という風には思ってるんですよね。
Guest
旗の世界に限らず、難しい組み込みメソットとか、難しい文法とか
Guest
を使うのが何でもかんでも拒否すべきっていう考え方は、自分は違うなと思っていて
Guest
ま。同じことは、まあ、肩の世界にも当てはまるんじゃないかな、という風に思っています。
7. Q. 外部の型定義の修正どうしてる?
Guest
ちょっと次もう1個聞きたいんですけど、はい、
Guest
外部のエコシステムの型定義とかって、なんかまない時と、あと、怪しい方の時っていう2つのパターンがあると思うんですけど、ま、それこそアトタイプで
Guest
その追従されてないとかもあると思いますし、そもそも緩めの方とかあると思うんですけど、そういうのって、なんかその
Guest
信頼性が悩ましい時とかって、どうや
Guest
てる感じかなっていうのが気になってて、ま。そもそも片手がないライブラリは使わないとかっていうのもあると思うんですけど、なんかどういう基準で、そのtsフレンドリーな
Guest
パッケージを探したりだとか。あと、間違った片手はどうやって直しているかみたいなの聞いていいですかね。
Guest
なるほど、そうですね、やっぱり外部のパッケージを使うとき、
Guest
1番理想的なのは、まあ、タイプスクリフトの片定義がこう自前で同根されてるやつなんですけど、
Guest
ま、そういうのは結構作者さんがタイプスクリと分かってることがま、比較的期待できるかなということがあって、
Guest
片定義の中身も信頼できることが多いので、ま、それが1番いいんですけど、でも、実際そうはうまくいかないんですよね。
Guest
まあ、作者の人がタイプスクリプトをやっていない時は、片手なんで入っていないので、ま、そういう時の事前作はアットタイプですよね。我々のチームでは、アットタイプのを使うのは、普通に許容してます。
Guest
もう、バンバンatypeをインストールしていますね。ま、それであんまり困ることはないです。まあ、
Guest
本当に困った時っていうのは、今までま数えるくらいしかいなくて、
Guest
なんでしょう。関数の片定義は、そもそも全く書かれていないと、ああ、なるほど、なるほど、返す方が実態と全く会っていないと、はい、
Guest
返す方が演技になってるみたいなことはあるんですけど、まあ、それは比較的まあ、可愛い方って感じですね。
Guest
いになってる以外だと何があるんですかね。
Guest
まあ、そもそも関数が全く足りていなくて、関数呼び出そうとしよう。
Guest
はいはい、そういう時とかって、どうやってどうやって来ました。
Guest
まあ、アトタイプスの場合、1番理想的なのはまあ、アディフィニティタイプにコントリーベルとして直すことですよね。
Guest
あ、うちのチームでも2、3回これは実際にやっています。はいはい、
Guest
まとはいえ、ちょっとあれですよね。あの、結構よく悩みがちなのが間違ったやつ正すプリて出すけど、ええ、マジされるまで、その
Guest
現場の問題が解消されないみたいなは結構あるかなと思ってて、そういうのってどうしてます。
Guest
そうなんですよね、まあまあもちろん待つんですけど、その間、ビルがビルドが通らないというのは、さすがに困るので、
Guest
ま、一時的に自前の片手を書いてごまかすっていうんですかね。はいはいはい
Guest
ま関数が足りなかったら、自前のモジュール定義をちょっと別のところに書いておいて、はい、その関数だけ宣言しておくとか、そういうので乗り切ります。
Guest
それ書くときって、そのコードベース上で、そのそのものをキャストするんじゃなくて、ちゃんとデクレアモジュールで書いとくみたいな感じですかね。
Guest
そうですね、それができる時はそうしています。たまにそれだと直せないようなやつもあって、その時は1回陰謀として、
Guest
なんかかいいかつけて、エクスポートし直すみたいな中間モジュールを作ったりするんですけど、
Guest
それはさ、どっちかっていうと、最終手段ですね。
Guest
まあまあまあそうですねなるほど、ありがとうございます。結構この取り扱いとかもなんか
Guest
だから、一旦適当にキャストしちゃうみたいな人も結構多いかなと思うんで、そのあたりは確かにそうですね。一旦陰謀としてエクスポートするオの間にかましてくと、最悪、それを
Guest
その治ったら消したらいいだけなんで、そう
Guest
そう結構汎用性の高い対応方法かなと思います。これは普段
8. これからの抱負について
Guest
じゃですね。ま、今、ちょっと色々なゲスト上の話を聞いていきましたけど、ちょっと最後にですね。初見と初見のチームでの学びもあると思うんですけど、一方でうさん自身も結構そのds
Guest
のあと、それこそ。私の印象に残ってるやつだと、あの、いく以上の要素が持っている配列の方の定義方法とかも紹介してると思うんですけど、
Guest
なんか外向けにでのその学びみたいなので。ま。今ってうさん自身、結構チームの方ではそうやって、あのpsの
Guest
の使い方についてのデリを発揮されてると思うんですけど、なんか、どういう取り組みとか、外向きにやっていきたいなみたいなとこあったりしますかね。
Guest
そうですね、まあ、まだまだタイプ作る人をしていきたいな、という風には思ってます。まだ、タイプ作る人の会話でっていうんですか。はい、できることは
Guest
あるだろうなって思います。その中で、まあタイプスクリットがこう普及してきましたよね。だいぶそうです
Guest
ね、それは
Guest
ごめんなさい、あいやったりするそれは非常にいいことだと思ってます。
Guest
ま、tsmイトアップの第2回で、ミリスさんがやってた発表で、もうフロント、エンゼルタイプ、スクリットを使わない理由はないですよ。という話があって
Guest
ま、それはとても共感しました。
Guest
そうですね、ま、徐々に消え使っていきたいよねっていう、もうあの、今まで使ってなかったプレイヤーの人たちも使っていきたいよねっていうのがま、結構合意形成が取れてきた感じはあるかなとは思いますね。
Guest
はい、ま、ただそれで終わりじゃなくて、まだ次のステップがあるんじゃないかと個人的に考えていて
Guest
ま。それが私がずっと前から言っている安全性の意識っていうところで、はいはい
Guest
ま要するに、まあ、厳しめにタイプする人を使うっていうことなんですけど、ま、その方向でこれからも結構発信してきましたよね。
Guest
まあ、それは多分これからも続けていかなきゃいけないかな、という風に思ってます。まあ、まだまだ続けていけばま、皆さんの意識が
Guest
もっと高まっていくんじゃないか、という風に考えています。もちろん、安全性にこだわるのが、まあ、唯一のやり方じゃないとは思っているんですけど、
Guest
あ、まだ現状はその安全性を高くするっていう方向に意識が向いている人が、そんなに
Guest
ま大勢いるわけではないなという風に感じていて、まあ、そういう意識を共有、皆さんに皆さんに共有してあげるだけでも、まあ意味があるんじゃないかなと思います。
Guest
まあ、厳しいやり方をやるっていう選択肢をまず皆さんに持ってもらうということですね。
Guest
確かに、tsって結構ま、昔は逆にきっちり書きたい人だけ使ってて、そうじゃない人js使うみたいなところだったのがま、結構やっぱ会話の普及とかもあって、
Guest
だんだん緩くてもダイブスト使っていいよみたいな流れでみんな導入するようにはなりつつあったが、一方で、また、そこで
Guest
下が下がった分のハードルからま、その厳しさみたいなのを高めるみたいなところは、多分まだ全然ないと思うんで。ええ、まあ、次はそこって感じですかね。
Guest
そうですね、もっと皆さんに
Guest
まその厳しくやりたいなと思った時のまやり方をちゃんと見を用意してあげるっていうのが1つ大事なことなんじゃないかなと思っています。
Guest
なるほど、ありがとうございます。
Guest
現場にとりあえず入れても、原理主義者みたいな人に叩かれづらくなったみたいなのは結構いいかなと思いつつも。ただ、それより先は
Guest
ま、それによって、その全体的なリテラシーが下がってるみたいなところは多分あるんだろうなとは思ってて、ええ、まあ、そこが結構
Guest
ウルさんみたいな人が押していくっていうのはま、その会話もそうですし、業界全体にとって結構プラスになりそうな気はしますよね。
Guest
そうですね、まあ、タイプスクリットはまあ、色々な使い方があるんですよね、まゆく使うの厳しい使うの
Guest
まなんでしょうか。最初は緩く使ってもらっても構わないんですけど、まあ、厳しくもできるんだよってことだけでは、まずわかってもらえるといいかなっていう思います。
Guest
いや、ありがとうございます
9. クロージング
Guest
というわけでですね。今結構長らくえうさんにえ、LINE証券の話だとかまts。実際どうしてるみたいなのとかまチームでの取り組み
Guest
と、あと、まあうさんの個人的なこれからのpsの話しいってのを聞いてきましたけど、ちょっとなんか、うさんの方からも宣伝があるらしいんで、prさしてください。
Guest
そうつい。私のtwitterを見てた方は、もうご存知かもしれないんですけど。まあ、実は商業紙でタイプスクリプトの入門書を今書いておりまして、
Guest
非常にうまくいけば、まあ、今年の終わりに出るかもしれない。ほうほうほうほう。まあ、私の執筆が遅ければ来年になるかもしれないんですけど、ま、そういったスケジュール感で、実は
Guest
タイフスクリプトの入門書を書いております。
Guest
おめでたいで
Guest
はいで、このタイプスクリットの入門書の内容なんですけど、まあ、プログラムを全く未経験な人は残念ながら、ちょっと代表から外れてしまうんですけど、も
Guest
ま何らかのプログラミング言語をやっている人向けに。まあ、フロントエンドは未経験でも大丈夫なんですけど、
Guest
ま、そういった方々向けにま。タイプスクリフトに入門できる本という中身の予定です。
Guest
まあ、もうちょっとだけ専念しておくと、まあ、個人的にはまごまかさない内容の本にしようかなって思ってます。なんか、用語がなんか
Guest
ちゃんと厳密にするとか。はいはい、あるいはなんか適当なごまかすような説明じゃなくて、ちゃんと正確にま。できれば、ロジカに説明を入れるとか
Guest
ま、そういった内容で書いています。って思います
Guest
は、ほんとに純粋なタイプとオンリま労働環境って感じですかね。
Guest
おそらくま学習環境はノードになると思います。ウェブブラウザ
Guest
のまドムの独特のAPIとか、あと、フレームワークみたいなものは入らない予定です。
Guest
なるほど、じゃあ、純粋にtsという言語だけをま、フロントエンドとかのコンテキスト抜けで学べるっていう感じ。そうですね。
Guest
ぜひ、お楽しみにはい
Guest
では、10月か来年かみたいな感じみたいなんで、
Guest
はいまた
Guest
続報を楽しみにできればと思います。はい、お楽しみ
Guest
えというわけでえ、本日はですね。えうおさんとともに、LINE賞金におけるタイプスクリプトの運用のえ、話っていうところと、え、tsのえ、実際プロダクトで運用するとき、どうするんだっけ。みたいな話をえしていきました。
Guest
LINEのですねUITではですね、このようなえ、jpスクリプトやフロントエンドに関する話題についてえ、日々議論が行われています。え、先週はですねえあ
Guest
例えば今なんかですと、先週え、ポッドキャストとして公開させていただいたえ、ビル3。勉強会の話とかがえ、特にそうかなと思いますけど、え、あんな形でですねえ、内部で勉強会みたいなものを開いてですねえ、知見をえ、
Guest
お互いに発信したりだとか。あと、ギットハブの一周とかを作ってですね。え、ま、こういったえ、話題があるよっていうところをえ、議論するとろがあったりします。
Guest
またですね、そこで話題になった内容などにつきましては、え、podcastでとりあげていきますので、え、ぜひぜひえお聞きいただければと思います。
Guest
その他ですね、このポッドキャストについて、ご意見やご感想もお待ちしております。
Guest
ファッシュタグシャープUIT、アンダースコアインサイド、え、シャープUIT、アンダースコアインサイドでついていけます。と、今後のコンテンツ作成のえ、参考にさせていただきますので、え、ぜひぜひついていただければと思います。
Guest
というわけでですね、今週はですね
Guest
えうさんとともにえ。LINE証券におけるタイプスクリプト、アクトタイプ、スケリプトの運用について話していきましたうさんありがとうございましたはい
Guest
はい、ありがとうございました。