[English]エンジニアの英語（コーディング編）

エンジニアが作業で必要になるであろう英語をメモしておきます。
ここでは主にコーディングで使える英語にフォーカスしてます。

## 記号

プログラミングでよく使う記号達です。
まずはこいつらを覚えましょう。

| 記号 | 英語名 | 備考 |
|:----------:|:------------|:-------------|
|()| Parentheses、Round bracket |始まりのカッコを「Opening bracket」閉じカッコを「Closeing bracket」とも言います。その方がカジュアルな会話でよく利用される気がします。|
|[]|Square bracket|Square（スクウェア）は「四角」という意味なので、割と覚えやすい記号ですね。|
|<>|Angle bracket|角度がついてるからアングル、と覚えるといいかもしれません。|
|{}|Curly bracket、Curly brace|Curlyは「縮れた」という意味なので、これも覚えやすいですね。私もカーリーヘアなので愛着があります（嘘です）。|
|-|Dash|ダッシュです。ハイフンでは通じませんでした。|
|~|Tilde（ティルディ）|チルダでは通じませんでした。ティルディとか言うと今度は日本人に通じなくなります。|
|/|Slash|スラッシュで通じます。|
|!|Exclamation mark、Bang|Bangとか言うとネイティヴ感が増します。|
|@|At|アットで通じます。ついアットマークと言ってしまいそうですが、どちらでもOKぽいです。|
|#|Hash, pound|ハッシュタグでお馴染みですね。シァープでも通じますが、ハッシュの方が正しいようです。|
|^|Caret、hat|お好きな方で。|
|%|Percent sign|パーセントで通じます。|
|*|Asterisk、Splat, star|アスタリスクで通じます。|
|¥|Back slash、Whack|バックスラッシュで通じます。現場によりWhack（ワック）と呼ぶ文化もあるそうです。|

### 動詞

| 英単語 | 意味 | サンプルフレーズ | 和訳 |
|:----------:|:------------|:-------------|:--|
|pass|引き渡す|You need to pass this object by reference.|このオブジェクトは参照で渡さないといけません。
|put|置く（配置する）|You put some extra spaces before braces.|カッコの前に余計なスペースを入れてます。|
|miss|抜ける|You're missing an opening brace here.|ここで最初の「{」が抜けてます。
|return|返す|This method returns a value,which gets passed to this object.|このメソッドが値を返すと、このオブジェクトに渡されます。
|variable|変数||
|declare|宣言する|Where did you declare this variable?|この変数はどこで宣言しましたか？
|initialize|初期化する|You should first initialize this variable.|最初にこの変数を初期化した方が良いです。
|call|呼び出す|Then the method gets called.|そこでメソッドが呼び出されます。
|iterate|繰り返す|It iterates over all elements in this collection.|このコレクションの要素すべてを繰り返し処理します。
|define|定義する||
|refer (to)|参照する|They are so many classes that this method is referred.|このメソッドが参照されているクラスがたくさんあります。
|set|設定する|So this variable is set here,but nothing refers to it.|それでこの変数はここで設定されていますが、全く参照されてません。
|assign|代入する|Before you assign the value,you need to cast it.|この値を代入する前に、型変換をしないといけません。
|leave|出る|It leaves here when an exception is thrown,but it enters here again.|例外が発生するとここから出てくるのですが、またここに入るんです。
|isolate|切り離す|You should isolate this kind of data management.|データ管理については切り離さないといけません。
|run|実行する|Let's run it.|それでは実行してみよう。
|fix|修正する|Let's fix this problem before we move on.|まずはこの問題を修正してから次に進みましょう。
|break|止める、壊れる|It will be break the build for sure!|絶対にビルドが壊れます！

## おまけ
### Convert（変換する）

型変換（キャスト）する際にもConvertは利用されます。

| 英単語 | 意味 | 
|:---------|:------------|
|Implicitly convert|暗黙的な型変換|
|Explicitly convert|明示的な型変換|

サンプルフレーズ
*All values are implicitly converted into integers.*
すべての値が暗黙的に整数に変換されています。

### Code readability（可読性）

機能に直接関係なくても、綺麗なコードを書くことはコードリーダビリティの観点からも重要です。
そのことを後輩社員などに教える際に使えるサンプルフレーズです。

*I noticed that you should pay a bit more attention to coding style.
You declare this variable name with the first letter in uppercase.
But this name starts with a lowercase letter.
It has nothing to do with functionality,but it's a big issue in terms of code readability.*

気づいたんだけど、もう少しコードスタイルに注意した方がいいね。
この変数の宣言で名前の最初の文字を大文字にしているでしょ。
でもこっちでは名前は小文字で始まってる。
それらは機能性とは全く関係ないことだけど、コードの可読性という面からは大きな問題です。

## 最後に

*In order to write this article, I referred this book.*
この記事を書くために、私はこの本を参考にしました。
[プレゼンを100%成功させる！！ITエンジニアの英語](https://www.amazon.co.jp/%E3%83%97%E3%83%AC%E3%82%BC%E3%83%B3%E3%82%92100-%E6%88%90%E5%8A%9F%E3%81%95%E3%81%9B%E3%82%8B-IT%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%8B%E3%82%A2%E3%81%AE%E8%8B%B1%E8%AA%9E-%E6%9D%BF%E5%9E%A3-%E6%94%BF%E6%A8%B9/dp/4798037087)

*I have to give a special thank to this book.*
私はこの本に感謝します。

以上です。