タオルケット体操

サツバツいんたーねっとでゲームとかガジェットのレビューとかをします

TypeScript

PROのためのスーパー型が付くReactフォームライブラリをつくった

GitHub - hachibeeDI/mayoiga hachibeedi.github.io つまりReactフォーム界のHANAMASAということ。 良い特徴、あるいはReact Hook Formとの違い 1. refに依存していない 自作するとわかるのですが、Formの状態管理(およびバリデーション)は素朴な実装だと…

型はみんなの心の中に存在しているんじゃない?

はじめに まずインターネットのお気持ち記事で「型がある」とか「型がない」とか言い始めたら、書き手がどういった意図でそのような言葉を選んだのか警戒しなければならない。 全部を語るとそれだけで5記事分くらいの分量になりそう*1なので割愛するが、世間…

GoogleのTypeScript Style Guideについてのお気持ちスタンダード

なんか話題になってて、なんかおみこしwasshoiする流れになってたのでお気持ちを書き残したくなった。 先に結論 こういうのを作って公開するのは誉れある組織 ですが 内容的にはfor TypeScriptというよりはfor ES nextといった感じで、特に型周りに関する言…

NestJSちょびっとだけ触ってみた所感

ここ数年まともにサーバーサイドをやっていないなぁとかおもいつつなんやかんやあってNestJSを数日ほど触ったりドキュメントを読んだりしてたので初心を忘れないようにメモ。 いちおうTypeORMだけは出始めにちょっと使ってた。 理解度が高まったら気分が変わ…

不要なクラス宣言、やめちゃおっか?

今回のエントリは特定の言語に向けて書いているわけではありませんが、関数をサポートしていない言語では必然的にクラスをベースに実装していくことになるのである程度は対象となる言語は絞られます*1。 また特に説明がなければサンプルはTypeScriptで書きま…

TypeScriptで関数型プログラミングしたい勢に推したいPipeline operatorの良さ

前置き Rubyで一瞬だけ湧いて出てきて消えたPipeline風演算子については忘れてください。あれはメソッド呼び出しの演算子であって今回取り上げるPipeline operatorとは似て非なるものです。 JavaScripterでも、Ramda.jsやRxJSを普段から使っている人には既知…

TypeScriptで既存の関数の引数と返り値の型情報をコピーする方法

TypeScriptにはType infer in ConditionalTypeという便利機能があり、それを利用すると既存の型定義から柔軟に特定の方を取り出すことができます。 そして利用頻度が高そうなものについては組み込みの型定義がいくつか存在します。 関数の型定義から引数を取…

React HooksとTypeScriptを使ったRedux再実装で理解度を深める試み しましょう

React Hooksでましたね。 これでクラスを使う必要がなくなってみんなハッピーです(公式で再三書かれてますが、既存のコードをHooksで書き直す必要性はないです)。 それはそうとして、useReducer という新しい仲間が増えました。 ちょっと前に追加されたCon…

TypeScriptのモジュールをnpmで公開する方法

はい。わたしです。 こちらは 2018年の株式会社LOB Advent Calendar になります。 前回書いた 書いたコードはチャンスさえあればパッケージに切り出して公開すべき という記事はお気持ちしか書いてないポエムだったので、じゃあ実際どうやればいいんだよって…

TypeScriptを導入する前に『覚悟』したほうが良いこと 4項目

補足:2021年6月 結構昔に書いた記事ですが、今でもたまにアクセスがある(ありがとうございます)ようなので使命感に駆られて追記。 本編の冒頭にもあるように、これは2018年の記事です。なので色々と書いてますが、2021年の人間の立場からTypeScriptの導入…

VimでTypeScriptの補完などを有効にして快適にエディット出来るようにする設定

いつの間にかVimプラグインが充実してきてたので、TypeScriptもVimで書くようになりました。 シンタックスハイライトとインデント 標準ではハイライトやファイルタイプの検出が存在しないので以下のプラグインを導入します。