Vim scriptのautoloadについて

本日の爆音駆動BGMはこちら♫ open.spotify.com それなりに規模の大きいVimのプラグインを見ているとautoloadディレクトリが見つかることが多いと思う。 今回はautoloadの挙動を軽くまとめます。 仕様確認 とりあえずhelpで仕様を調べる。 help autoload auto…

Vim scriptでファイル探索

本日の爆音駆動BGMはこちら♫ open.spotify.com 最近Vimプラグインを実装しはじめました。 実装をしている際に現在開いているファイルから親ディレクトリをどんどん辿り、任意のファイルを探索し、見つかったファイル内の文字列リテラルで囲まれた文字を抽出…

IEEE754における浮動小数点数の2進数表現

10.75という10進数の数値を倍精度数(64bit)の2進数で表現するとどうなるでしょう。 結果は以下のようになる。 010000000010010110000000000000000000000000000000000000000000000 まずIEEE754という標準規格についてまとめる。 今回は倍精度数に焦点を当てる…

gRPCのデバッグにはevansを使うと便利

gRPC client: evans 先日会社のエンジニアブログでgRPCに関する以下の記事を書いていた。 blog.engineer.adways.net blog.engineer.adways.net gRPCを使うメリットや実装方法に関することを書きまとめ、ある程度の知識も得られたと思っている。 ある程度gRPC…

LWJGLの環境構築

LWJGLはJVM系言語で使用できる軽量OpenGLライブラリ。 ちょっと触ってみようと思ったので、環境構築手順を記述していく。 環境構築 GradleやMavenでプロジェクト管理をするならすぐ構築できる。 以下のサイトから必要なものを選んでダウンロードする。 LWJGL…

TypeScript2.8のConditional typesについて

先日(2018-03-27)TypeScript 2.8が正式リリースされました。 今回のリリースで搭載されたConditional typesという条件付きの型宣言構文についてまとめる。 Conditional typesについて A extends B ? C : D 構文は上記の通りで、型Aが型Bに割当て可能ならC、…

TornadoFXでデスクトップアプリ開発 <実装編>

導入編に続いて、今回はTornadoFXでUIと内部ロジックの実装をしていきます。 JavaFXにはUIを記述する方法がいくつかあります。 FXMLというマークアップで記述し実装側でレイアウト系のクラスを継承したクラスと紐づける コードでcontrol系のインスタンス(ボ…

TornadoFXでデスクトップアプリ開発 <導入編>

Kotlinは主にアンドロイドアプリ開発で使用される言語ですが、最近ではサーバーサイドやAPI開発に使用されるようになってきてます。 デスクトップアプリもKotlinで作ってみたいと思っている方の参考になれば幸いです。 TornadoFXとは Javaの標準ライブラリで…

Vue.js & Typescript構成でのPWA環境構築

直近仕事でPWAを実装する機会がありそうなので, 少しづつ習得していこうと思います。 プロジェクトの初期化 PWAのセットアップにはvue-cliを使います。 $ yarn global add vue-cli PWAの初期化。 $ vue init pwa progressive-web-app $ cd ./progressive-web…

TypescriptとFlowどちらを採用するべきか

僕は普段フロントエンドフレームワークと共にTypescriptを使って開発をしています。 ReactやVue.jsの内部実装にはFlowが採用されていて、AngularやRxJSはTypescriptを採用しています。 今後開発を進めていく上で両者はどのような開発現場でメリットが最大化…

Hyperapp & Typescriptを試す

最近流行っているHyperappに興味を持ったのでTypescriptと組み合わせて実践してみようと思います。 メインでVue.js, 趣味ではReactも触れているのでこの辺との違いについても言及できたらと思ってます。 まずHyperappが提唱するコンセプトがこちら。 Minimal…