私は英語できません
さっぱりです、中学時代から学生時代ずっと成績は1とか2です(´・ω・`)
いつも、英語できないのにプログラミングとか英語のゲームできるの?っていわれますけど。
ゲームに関してはストーリとかは微妙に不鮮明なので実際はできていないというのが正しいかもしれません、カードゲームやアクションであそんでるだけですね。
プログラムは英語が必須か
といわれると自分はNOともYESとも言えます。
といいうのも皮肉をこめて、mainとifとforがつかえれば基本プログラムできる。
といわれますが、それが英語だからです( ´艸`)
主、もし、繰り返し、でプログラムするなら、、英語いりませんけどね*1
所詮プログラムは基礎単語をいくつかおぼえておけばあとはルールなんです。
基礎単語は中学1年生レベルあれば十分で、必要とあればその単語をおぼえればいいだけなので文法とかはある意味そっちのけでいいのです。
なので英語とプログラミングは違うと自分は思っています。
独学プログラマー Python言語の基本から仕事のやり方まで
- 作者: コーリー・アルソフ,清水川貴之監訳,清水川貴之,新木雅也
- 出版社/メーカー: 日経BP社
- 発売日: 2018/02/24
- メディア: 単行本
- この商品を含むブログ (4件) を見る
だがローマ字変数はあかん
とはいえ、日本人が読みやすいようにローマ字変数を使う人がいます。
それは逆に読みにくいコードなんですよね、、、
例えば極端な例で
int count_hogehoge
という繰り返しカウントするための変数があったとした場合
int kurikaesi_kaishuu_hogehoge
とかかれていると、
ウキーーーーとなります。(商用コードでこんなのがあったら即リジェクトです)
_をいれるとかーとかにするとか頭文字大文字にするとか規約的なものは会社ルールに従ってください。ここで議論しても発散します。
余談ですが個人で書く自分しか使わないコード(例えば単純な集計だけするツールとか)はTABインデントですが、社内ではスペースインデントでした。
英語ができなくてプログラムができる
もちろん英語ができたほうが習得は早いとおもいます。
例えばこの意味どういう意味だろ?ってたまに思うときがありますが、調べる回数が減るので。
しかし、プログラムは目的を達成するために決められたルールと組合せなのです。
なので、言語といえば言語ですがどちらかというと数学的な思考が必要なんだとおもいます。
もちろん中身は基本数式的なものがが多いってのもありますけどね。
有利不利はあれど、英語というよりも公式が覚えられる人のほうがプログラムするのには向いていると思います。そりゃ両方できるほうがいいですよ?
英語ができるけど数学苦手
英語はできないけど数学得意
だと後者のほうが確実にプログラミング言語の習得は早いです。
なんでこんなことを書いたかというと
前回Blogで英語成績がゴミだった話をリアルでしたときに、それでよくソースコード読めるんだねーっていわれたのを思い出したからです。
下の子は英語できないからプログラムもできないよーっていわれて、それは違うって感じだったので。。。
私もに単純に覚えるという作業が嫌いだったので、数学のようにいくつかの公式をおぼえていれば、あとは組み合わせて当てはめる、どの公式を選ぶのか?という選択が難しいだけって感じのものは得意でした。
そのため歴史の年数や英語などのようにただ覚えていないといけない。丸暗記は超絶苦手でした。
そして、ペーパーテストだと、覚えてる基本単語数が少ないうえ、
For example
とこたえないといけないのに
For exemple
にすると×になるわけですよね、文法あってても間違いで0点です。
なのでペーパーテストはゴミみたいな点しかとれませんでした。
しかーし、プログラムは、間違いがあれば直せばいいだけです。コンパイル時にここちがうよ!って言ってくれます。もしくは開発環境が記述時点で補完してくれます。
そして、間違いやすい基本的な命令はあまり似たような単語は採用されていません。
なんとなくおぼえていればあとはドキュメントみながら読み書きできます( ´艸`)
なのでみなさん、英語できなくてもプログラムはできるんです。
注:なんどもいいますが、読む側になった場合変数の意味とか調べる回数は英語できる人より増えます。
まとめ
プログラムするのに英語はできれば便利程度、ルールや仕組みを覚える能力があるほうが習得は早い。
*1:一時期日本語で出来る言語あったけど今どうなんだろう