LoginSignup
1
0

プログラミング初心者の時に意味不明だった英語

Last updated at Posted at 2024-03-13

プログラミング初心者の人はこういうフレーズの意味をあらかじめ理解しておくと英語のドキュメントが読みやすくなるかもしれません。

解説は結構適当です。すみません。

coverage

辞書を引くと「報道範囲」とか「放送範囲」みたいな和訳が出てきます。そういう意味もあるんだ。

コードベース全体の行数に対する、テストランナーでテスト済みの行数の割合です。行数以外の定義もあるかもしれません。

これが100%に近いほど「このプロジェクトはちゃんとテストされていてバグがないな」と判断するための指標になります。ただし、たとえ100%であったとしてもテストコードの品質が悪ければバグが発生する可能性はあります。

in-place

「その場で」とよく訳されるやつ。

オブジェクトの内容が、明示的な代入操作なしで変わってしまうことを指していると思います。

私にとってはネガティブ系のフレーズ。こういう挙動をするものはあんまり使いたくないな〜って捉えています。

// javascriptFile.ts

// constで宣言したんだから、この変数のスコープの中では
// いつ参照してもこの順番で値が入っていてほしい
const arr = [3, 2, 1];

// in-place で処理するメソッドを使う
arr.sort();

// arrの要素の順番が変わってしまった
console.log(arr)
// [1, 2, 3]

syntax sugar

「糖衣構文」とよく訳されるやつ。

読みづらい・分かりづらい書き方と同じ意味を持っている、読みやすい・分かりやすい別の書き方を指していると思います。

Wikipediaの例をそのままパクるけど、下記のような配列の要素へのアクセスはsyntax sugarの一種らしいです。

# python_file.py

# よくやる代入および参照
my_list = [1, 2, 3]
my_list[0] = 2
print(my_list[0])

# syntax sugarが無ければ、それぞれの構文はこうなる
my_list = [1, 2, 3]
my_list.__setitem__(0, 2)
print(my_list.__getitem__(0))

tree shaking

指している概念そのものは「ソースファイルの中にあるけど実行時には実行されないコード」を削除する、という行為。型定義とかテストコードとかね。

葉っぱがたくさん生っている木を揺らして、枯れ葉などの無駄なものを振り落とすイメージでしょうか。

最終的なコードベースのファイル容量を小さくすることが特に重要な、フロントエンド(JavaScript)の文脈で使われている概念です。MDNのTree shakingのページの説明をちょっとパクりました。

最終的なファイル容量が小さければ小さいほど、サーバーからブラウザまでコードを送り届けるための通信速度が改善されるので嬉しい。

逆にコードそのものを通信でやり取りしないバックエンドの文脈ではあんまり登場しない言葉かも。

wrap

ラップです。食品を包むアレのイメージでも良いかもしれません。

特定のオブジェクトをさらに1段階上から何かで包み込む時に使う動詞です。例えばHTMLで言えば下記のような感じ

<html>
  <!-- 何かしらのコンテンツ -->
</html>
<!-- →全てのHTML要素は <html> 要素で wrap されている、と表現できる -->
<!-- →あるいは、 <html> 要素は全てのHTML要素の wrapper である、と表現できる -->

マークアップだけでなく、関数などにもラッパーがしばしば登場します

// 引数が4つもある関数なので扱いが難しい
const someDifficultFunction = (arg1, arg2, arg3, arg4) => {
  // 何か難しい処理
  // 実際に使う時には arg1, arg2, arg3 の値が固定で、
  // arg4 の値だけ動的に与えるものと仮定すると......
};

const wrapperFunction = (arg) => {
  return someDifficultFunction(1, "hoge", { foo: "bar" }, arg);
  // arg1, arg2, arg3 の値は固定のまま、
  // arg4 に相当する値だけを渡せばいいラッパー関数を定義できた
};
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0