このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

typescript

網羅性のチェック

本編の追記に書いたが、 http://d.hatena.ne.jp/m-hiyama/20180117/1516157225 網羅性のチェックにnever変数への代入というトリッキーな方法がある。この方法は、次のページにあった。 https://basarat.gitbooks.io/typescript/docs/types/discriminated-uni…

TypeScriptモード

割とVSCode使ってるが、emacsの場合: c-indent-level, c-basic-offsetは効かない。 tab-widthは効く。がそもそもタブは使いたくない。 indent-tabs-modeをnilにすると、タブは使わなくなる。 c-tab-always-indentという変数もある。たぶん効かないが、これ…

宣言空間

TypeScriptでは、名前空間とは別に宣言空間というのがあって、そこに名前が登録されるらしい。例えば、型名は「型の宣言空間」内に名前を持つ。 http://developer.hatenastaff.com/entry/2016/06/27/140931 だが、これってやっぱり名前空間だと思う。型の名…

TypeScriptコンパイラ、ひろい読み

src/services/transpile.tsあたりから読む。 コンパイラホスト(CompilerHost)というのがいて、OSファイルシステムを抽象化、便利化している。コンパイラはコンパイラホスト上で動き、コンパイラホストの実体はinterface CompilerHostを実装していれば何で…

TypeScriptコンパイラのソースを読む

まず、次を git clone でローカルに持ってくる。 https://github.com/Microsoft/TypeScript.git でかいリポジトリなので、それなりに時間とディスクは食う。vscodeでディレクトリを開く。どうなっているか知らんが、vscode自体がTypeScriptで実装されている…

TypeScriptコンパイラとそのAPI

コンパイラのソースを見ているが、 /src/compiler/types.ts の export const enum SyntaxKind に、構文範疇が列挙されている。機能性に直接影響しない構文範疇をトリビアと呼んでいる。 SingleLineCommentTrivia, MultiLineCommentTrivia, NewLineTrivia, Wh…

Vue.jsの仕掛けの図

*1 *1:記事 https://v1.vuejs.org/guide/overview.html#Reactive-Data-Binding画像 https://v1.vuejs.org/images/mvvm.png

Vue.js

TypeScriptつうよりVue.jsだが、 Vueインスタンス: new Vueで生成したオブジェクト オプションオブジェクト: new Vueに渡す引数 広義のVueインスタンス: コンポネントなども含む。ツリー状に配置される。 ルートVueインスタンス: 広義のVueインスタンス…

TypeScript環境

古いnode.jsは削除、標準のアンイストーラー nodistはまともに動いてない。が、アンインストール方法もない。グズだ。手で消す: まず、PATHから除外する。 環境変数NODIST_PREFIXを消す。 ディレクトリを消す。 https://nodejs.org/en/download/ より node-…

テスト・デバッグ

なんか分からんが、名前が出てきたモノをリスト should : https://shouldjs.github.io/ Chai : http://chaijs.com/ Mocha : https://mochajs.org/ Jasmine : https://jasmine.github.io/ power-assert : https://github.com/power-assert-js/power-assert je…

描画ライブラリ

JavaScriptのライブラリだが、型定義があればTypeScriptからも使えるだろう。 https://modeling-languages.com/javascript-drawing-libraries-diagrams/ ↑比較記事だが、読んでもわからん。で、参照先を見た。 JointJS https://www.jointjs.com/ 有償商品。 …

構文とか機能とか 2

内部モジュールってあったけど、今でもあるのか? あるようだ。名前空間としてのオブジェクトの使い方を組織化しただけだが、使い勝手はいい。 同じ名前の内部モジュールを複数回書けて、それらがアペンドされるって仕様はどうよ? 内部モジュールのimport構…

構文とか機能とか

本編では、けっこうTypeScriptについて書いているんだな。 随伴のニョロニョロ関係をTypeScriptで確認する - 檜山正幸のキマイラ飼育記 クロージャなんて貧乏人のオブジェクトだろ - 檜山正幸のキマイラ飼育記 お手軽で実用的なジェネリックスへの道は遠い -…

TypeScriptやってみよう

VSCodeを使う動機があんまりないから、VSCode上でTypeScriptを使うことにしようかと。TypeScriptでは、既存のJavaScriptライブラリにおける型を定義した *.d.tsって型定義ファイルが必要なのだが、 TypeScriptをインストールしたディレクトリのlib/に、lib.*…