はじめに
いろんな場面でプログラミングをしていて、よく出てくる英単語を「単語」「意味」のセットで整理した自分用の備忘録です。
命名を読む際は 先頭動詞を先に確認する が良い感じです。
記載されている内容は、プログラミングの一般的な英単語とその意味のみであり、特定のシステム・社内情報・業務ロジック等は一切含まれていません。
目次
- メソッド名でよく使う動詞
- よく使う変数名
- 型・クラス名でよく使う単語
- 認証・認可・セキュリティ周り
- データベース周り
- AWS周り
- フロントエンド周り
1. メソッド名でよく使う動詞
データ取得系
| 単語 |
意味 |
get |
手元にあるものを返す(ローカル) |
fetch |
外部から取りに行く(通信・IO) |
find |
条件に合うものを探す |
search |
検索する |
retrieve |
検索・探索して取り出す(DB・ストア) |
load |
読み込む |
read |
読み取る |
query |
問い合わせる |
データ更新系
| 単語 |
意味 |
set |
値をセットする |
update |
更新する |
save |
保存する |
store |
格納する |
persist |
永続化する |
write |
書き込む |
put |
配置する・置き換える |
patch |
一部だけ更新する |
データ削除系
| 単語 |
意味 |
delete |
削除する |
remove |
取り除く |
clear |
クリアする |
reset |
初期状態に戻す |
purge |
完全に消去する |
destroy |
破棄する |
データ生成・変換系
| 単語 |
意味 |
create |
新規作成する |
build |
組み立てる |
make |
作る |
generate |
生成する |
convert |
変換する |
transform |
変形・加工する |
parse |
解析する |
format |
整形する |
serialize |
シリアライズする(データを文字列等に変換) |
チェック・判定系
| 単語 |
意味 |
is |
〜であるか(状態フラグ) |
has |
〜を持っているか |
can |
〜できるか |
should |
〜すべきか |
check |
確認する |
validate |
形式・ルールに合っているか検証する |
verify |
実際に正しいと確認する |
exists |
存在するか |
処理・制御系
| 単語 |
意味 |
handle |
処理を受け取って対応する |
process |
処理する |
execute |
実行する |
run |
動かす |
apply |
適用する |
invoke |
呼び出す |
dispatch |
処理を送り出す・振り分ける |
trigger |
起動する・引き金を引く |
emit |
イベントを発火する |
通知・連携系
| 単語 |
意味 |
send |
送る |
notify |
通知する |
publish |
発行する |
subscribe |
購読する |
register |
登録する |
unregister |
登録解除する |
初期化・終了系
| 単語 |
意味 |
init |
初期化する |
setup |
セットアップする |
boot |
起動する |
start |
開始する |
stop |
停止する |
close |
閉じる |
terminate |
終了させる |
dispose |
リソースを解放する |
2. よく使う変数名
| 単語 |
意味 |
result |
結果 |
response |
レスポンス・応答 |
data |
データ |
payload |
送受信するデータの中身 |
params |
パラメータ群 |
options |
オプション設定 |
config |
設定情報 |
context |
処理の文脈・コンテキスト |
target |
対象 |
source |
元データ・発信元 |
current |
現在の |
previous |
直前の |
next |
次の |
temp |
一時的な(temporary) |
buffer |
一時的に保持する領域 |
index |
番号・索引 |
count |
個数 |
total |
合計 |
limit |
上限 |
offset |
ずらし量・開始位置 |
flag |
状態を示すboolean |
error |
エラー情報 |
message |
メッセージ |
3. 型・クラス名でよく使う単語
役割語(接尾辞)
| 単語 |
意味 |
Manager |
管理者・管理クラス |
Service |
ビジネスロジックを担うクラス |
Repository |
DBアクセスを担うクラス |
Handler |
処理を受け取って対応するクラス |
Controller |
リクエストを受け取り制御するクラス |
Builder |
オブジェクトを組み立てるクラス |
Factory |
オブジェクトを生成するクラス |
Provider |
何かを提供するクラス |
Resolver |
解決・解析するクラス |
Validator |
バリデーションを担うクラス |
Converter |
変換を担うクラス |
Observer |
変化を監視するクラス |
Listener |
イベントを待ち受けるクラス |
Client |
外部サービスへの接続クラス |
Request |
リクエスト情報を持つクラス |
Response |
レスポンス情報を持つクラス |
Exception |
例外クラス |
Entity |
DBテーブルに対応するクラス |
Model |
データ構造を表すクラス |
DTO |
データ転送専用クラス(Data Transfer Object) |
Util |
ユーティリティ(汎用処理) |
Helper |
補助処理クラス |
接頭辞・接尾辞パターン
| パターン |
意味 |
Base〇〇 |
基底クラス |
Abstract〇〇 |
抽象クラス |
〇〇Impl |
実装クラス |
〇〇List / 〇〇Map |
コレクション |
〇〇Callback / 〇〇Handler |
処理の委譲先 |
4. 認証・認可・セキュリティ周り
| 単語 |
意味 |
authenticate |
身元を確認する |
authorize |
権限を与える・許可する |
authenticated |
認証済み(状態) |
authorized |
認可済み(状態) |
token |
認証情報を持つ一時的な文字列 |
credential |
認証情報(ID・パスワード等) |
permission |
個別の権限 |
role |
権限をまとめた役割 |
grant |
権限を付与する |
revoke |
権限を剥奪する |
expire |
有効期限が切れる |
encrypt |
暗号化する |
decrypt |
復号する |
hash |
不可逆変換する |
salt |
ハッシュに混ぜるランダム値 |
session |
ログイン中の状態管理 |
claims |
トークンに含まれる情報 |
verify |
実際に正しいと確認する |
verified |
検証済み(状態) |
unverified |
未検証 |
混同しやすい単語の整理
| 比較 |
意味 |
authenticate vs authorize
|
「誰か」の確認 vs 「何ができるか」の確認 |
validate vs verify
|
形式・ルールに合っているか vs 実際に正しいと確認されたか |
encrypt vs hash
|
復号できる vs 復号できない(不可逆) |
5. データベース周り
| 単語 |
意味 |
query |
DB問い合わせ |
transaction |
一連の処理をまとめる単位 |
commit |
変更を確定する |
rollback |
変更を取り消す |
migrate |
DBの構造を変更する |
seed |
初期データを投入する |
index |
検索高速化のための索引 |
constraint |
制約(例:NULL禁止、一意性) |
relation |
テーブル間の関係 |
foreign key |
他テーブルへの参照キー |
aggregate |
集計する(SUM・COUNT等) |
pagination |
件数を分割して取得する |
upsert |
あれば更新、なければ挿入 |
cascade |
関連データに連鎖して処理する |
schema |
DBの構造定義 |
6. AWS周り
基本概念
| 単語 |
意味 |
provision |
リソースを用意・確保する |
deploy |
環境に配置・公開する |
instance |
起動中のサーバー1台 |
cluster |
複数のインスタンス・コンテナをまとめた単位 |
container |
アプリを動かす軽量な実行環境 |
region |
AWSのデータセンターの地理的区域 |
availability zone |
region内の独立した物理施設(AZ) |
endpoint |
サービスへの接続口となるURL |
ingress |
外から中への通信 |
egress |
中から外への通信 |
throughput |
単位時間あたりの処理量 |
latency |
遅延時間 |
replica |
データの複製 |
failover |
障害時に予備へ切り替える |
snapshot |
ある時点のデータのコピー |
retention |
データの保持期間 |
lifecycle |
リソースの作成から削除までの管理ルール |
ネットワーク周り
| 単語 |
意味 |
VPC |
AWS上の仮想ネットワーク |
subnet |
VPCを分割したネットワーク単位 |
route table |
通信の経路を定義するテーブル |
security group |
インスタンスへの通信を制御するルール |
NAT gateway |
プライベートサブネットから外部への通信を中継 |
internet gateway |
VPCとインターネットをつなぐ出入口 |
load balancer |
通信を複数のインスタンスに分散する |
コンピューティング・デプロイ
| 単語 |
意味 |
scale out |
インスタンス数を増やす |
scale in |
インスタンス数を減らす |
scale up |
インスタンスのスペックを上げる |
auto scaling |
負荷に応じて自動的にスケールする |
stack |
CloudFormationで管理するリソースのまとまり |
template |
リソース構成を定義するファイル |
trigger |
Lambda等を起動するきっかけとなるイベント |
event |
サービス間で発生する通知・出来事 |
ストレージ・DB
| 単語 |
意味 |
bucket |
S3のデータ保存先の単位 |
object |
S3に保存されるファイル1つ |
key |
S3オブジェクトのパス・識別子 |
TTL |
データの有効期限(Time To Live) |
replication |
データを別の場所にコピーして冗長化 |
IAM・権限
| 単語 |
意味 |
policy |
権限を定義したドキュメント |
role |
AWSサービスやユーザーに割り当てる権限の役割 |
trust relationship |
roleを誰が引き受けられるかの定義 |
assume role |
roleの権限を一時的に引き受ける |
principal |
権限を与えられる対象(ユーザー・サービス等) |
監視・ログ
| 単語 |
意味 |
metric |
監視対象の数値データ(CPU使用率等) |
alarm |
metricが閾値を超えた際に発火する通知 |
log group |
CloudWatchでログをまとめる単位 |
log stream |
log group内の個別ログの流れ |
7. フロントエンド周り
コンポーネント・状態管理
| 単語 |
意味 |
component |
画面を構成する部品 |
render |
画面に描画する |
rerender |
再描画する |
mount |
コンポーネントがDOMに追加される |
unmount |
コンポーネントがDOMから削除される |
state |
コンポーネントが持つ内部の状態 |
props |
親から子へ渡すデータ |
hook |
Reactの状態・副作用を扱う関数 |
context |
コンポーネントをまたいでデータを共有する仕組み |
store |
アプリ全体の状態を管理する場所 |
dispatch |
storeへ状態変更の指示を送る |
selector |
storeから必要なデータを取り出す関数 |
DOM・イベント
| 単語 |
意味 |
DOM |
HTMLの要素をプログラムで操作できるツリー構造 |
virtual DOM |
実際のDOMと比較するための仮想的なコピー |
event |
ユーザー操作やブラウザの出来事 |
listener |
eventを待ち受ける関数 |
callback |
処理完了後に呼び出される関数 |
handler |
eventに対応する処理関数 |
emit |
イベントを発火する |
bubble |
イベントが子から親へ伝播する |
propagation |
イベントの伝播 |
prevent default |
イベントのデフォルト動作を止める |
非同期処理
| 単語 |
意味 |
async |
非同期関数であることを示すキーワード |
await |
非同期処理の完了を待つ |
promise |
非同期処理の結果を表すオブジェクト |
resolve |
promiseが成功した状態 |
reject |
promiseが失敗した状態 |
pending |
promiseが処理中の状態 |
ルーティング・画面遷移
| 単語 |
意味 |
route |
URLと表示するコンポーネントの対応 |
router |
ルーティングを管理する仕組み |
navigate |
画面遷移する |
redirect |
別のURLへ転送する |
params |
URLに含まれる動的な値(例:/user/:id) |
query |
URLの?以降のパラメータ |
描画方式
| 単語 |
意味 |
SSR |
サーバー側でHTMLを生成(Server Side Rendering) |
CSR |
クライアント側でHTMLを生成(Client Side Rendering) |
SSG |
ビルド時にHTMLを生成(Static Site Generation) |
hydration |
SSRで生成したHTMLにJSの動作を付与するプロセス |
スタイル・UI
| 単語 |
意味 |
layout |
要素の配置・構造 |
viewport |
ブラウザの表示領域 |
responsive |
画面サイズに応じてレイアウトが変わる |
theme |
アプリ全体のデザイン設定 |
variant |
コンポーネントの見た目のバリエーション |
transition |
状態変化時のアニメーション |
ビルド・開発環境
| 単語 |
意味 |
bundle |
複数ファイルを1つにまとめる |
build |
本番用ファイルを生成する |
compile |
コードを変換する |
lint |
コードの問題を静的に検出する |
format |
コードの整形をする |
hot reload |
ファイル変更を即座に画面に反映する |
読解の基本方針
動詞(メソッド)+ 名詞(変数)+ 役割語(型) の三層を意識して読む。
- 命名の 先頭動詞 を先に確認する
- 知らない単語は その場で引いてメモ する
- コーディングの練習では 業務っぽい英語命名を自分でつける と良い
おわりに
自分の「お気持ち」を先頭に書くと、見返す時にスクロールするのがめんどくさいので、終わりにぼそっと書いていきます。自分は英語力がないので、特に他人が書いたコード、読み詰まっちゃうこと多いです。あと、好きで書いている言語のメソッドとかなら覚えていること多いんだけど、そうじゃないもの、毎回ググるのも面倒になってきます。AIに教えてもらっても、頭から飛んじゃうから、いざという時、ザルになるんですよね。
なので、極めてささやかな抵抗として、このコンテンツを作ろうと思いました!ちゃんちゃん。