ホーム

開発環境を見直してvimライクにした

ツール

概要 開発の効率化を図り、vimを取り入れ、開発環境諸々を刷新したのでまとめておく。 各ツールの細かい設定や導入しているプラグイン詳細などは省く。  エディタ Atom 開発で使うメインエディタ vimのキーバインドを使えるようにプラグインを導入 vim-mode-plus-ex-mode vim-mode-plus 画面分割やペイン移動などもvimっぽくできるようにキーバインドを少しいじった...

tmux vim Atom iTerm

tmuxコトハジメ

ツール

概要端末多重化ソフトウェアであるtmuxのコトハジメ キーバインドtmux起動tmux or tmux new-session セッション中での新規セッション作成prefix+:new セッション一覧tmux ls セッションのデタッチ(tmuxから抜ける)prefix+d セッションのアタッチtmux attach(a) 任意のセッションにアタッチtmux attach(a) -t 0(name...

tmux

UNIXという考え方

OS

UNIXという考え方を読んだ。 UNIXについての思想と哲学を150ページという短いページにまとめてある本。 この本ではコーディングに通じる考え方も学ぶことができる。 何かの設計を考えるときに普遍的に活かせるであろう思想が書いてあるので、設計に立ち向かうときに振り返りたい内容である。 ...

UNIX

N+1問題とは

データベース

概要N+1問題の説明と対応についてまとめる。 N+1問題とは 全てのレコードの取得に1個+レコード文だけのN個のSQLを発行してしまう問題 N+1というより1+Nと解釈したほうがわかりやすい 例 一覧表示用のデータを取得するケース 一覧用の全データを取得するSELECTを1回発行(Nレコード返ってくる) Nレコードの関連データ取得のためにSELECTをN回発行 対応 join SELECT...

N+1

OSメモ

OS

概要 OS周りの勉強をしている時に調べたこと。 swap メモリが足りない時にメモリの中身をハードディスクに移す機能のこと ページキャッシュとは CPUはストレージからデータを直接読み込みができない データは一旦メモリに読み込む必要がある メモリに読み込まれたデータはページキャッシュとして再利用できる ファイル単位でアクセスする時に使用されるキャッシュ バッファキャッシュ ブロックデバイスを...

os

ダック・タイピングとは

アプリケーション

概要ダック・タイピングについてまとめる ダック・タイピングとは 動的型付けオブジェクト指向プログラミング言語において、オブジェクトができることはオブジェクトそのものが決定する インターフェースの全てのメソッドを持つオブジェクトは、インターフェースを実装していなくともオブジェクトはインターフェースを実装しているとみなせる、ということ If it walks like a duck and quack...

ダック・タイピング

ソフトウェア開発の法則

アプリケーション

概要ポステルの法則 Jon Postel 送信するものに関しては厳密に、受信するものに関しては寛容に ポステルがTCPを規定したRFC793にて記載された1節が一般化されたもの インターネットの通信における原則 パーキンソンの法則 Cyril Northcote Parkinson 第1法則  仕事の量は、完成のために与えられた時間をすべて満たすまで膨張する 第2法則 支出の額は、収入の額に...

ソフトウェア開発

ポリモーフィズムとは

アプリケーション

概要ポリモーフィズムについてまとめる ポリモーフィズムとは Poly(複数の)Morphism(形状) 複数の異なる型に対し、共有のインターフェースを提供すること 引数を受け取ったインスタンスがクラスによって違う振る舞いをすること ポリモーフィズムの種類 アドホック多相 関数が異なる型の引数に対してそれぞれ異なる実装を持つ 多重定義、関数のオーバーロードによって実現 パラメータ多相 型指定の...

ポリモーフィズム

はじめて学ぶソフトウェアのテスト技法

アプリケーション

[はじめて学ぶソフトウェアのテスト技法](https://amzn.to/3UM7CJ9を読んだ。 テストの方法について書かれている本で、ソフトウェアテストの基本パターンを学ぶことができる。 テストコードを書いたことなければ最初に読みたい一冊。 ...

テスト

Road to Vimmer

ツール

概要Vimmerになるために覚えていったコマンドを書き連ねていく。 動機 GUIエディタのショートカットには慣れたもののテキスト編集の速度が頭打ちになった気がする 脱GUIエディタ依存(GUIエディタに依存したショートカットキーを覚えることと枯れたエディタであるVIMのショートカットキーを覚えることのどちらがコスパが良いか。viはあらゆるOSの標準エディタとして搭載されている) ショートカットや矢...

vim エディタ