「ソフトウェアエンジニアたるもの、プログラミング言語にこだわってたらダメ。必要になったらどんな言語でも数日で使えるようにならないと」
的な発言を、Twitterかどこかで聞いた気がします。
ほんの1年半前までは1つのプログラミング言語もできなかった私ですが、
Pythonができるようになって、ちょっと欲が出てきました。
私も、数日でプログラミング言語を使えるようになりたい。
かつては、
「数日でプログラミング言語を習得だなんて絶対に不可能!」
と思っていましたが、
「ん?もしかしたら可能かも?!」
と感じるようになってきました。
その理由を3つ ご紹介します。
理由1: if文、for文等の構文は、どの言語でも同じ
1つ目の理由はこちら。
if文とか、for文とか、細かい文法の違いはあれ、どの言語も同じなんですよね。
なので、どの言語でもいいから1つで基本構文をマスターしておくと、他の言語を学ぶ時は構文の違いのみを学べば良いので習得が早いです。
私もPythonで詰めて学習したおかげで、JavaScriptを学習する際は、構文についてはほぼ学習時間はゼロで対応できました。
理由2: スクリプト言語、コンパイル言語、フレームワークはそれぞれ似通っていると思う
プログラミング言語には
- スクリプト言語
- コンパイル言語
- フレームワーク
があります。
スクリプト言語としてはPython、JavaScript、
コンパイル言語としてはJava、C言語、
フレームワークとしてはPythonに対してのFlask、Javaに対してのSpring Boot、
が例ですね。
スクリプト言語、コンパイル言語、フレームワークでそれぞれ1つずつやっておくと、その後に違う言語をやっても学びが早い気がします。
私は最初、スクリプト言語としてのPythonを学びましたが、その後に学んだJavaScriptは、比較的すんなり頭に入ってきました。
ところが、Javaは、イマイチ頭に入ってくる速度が遅かったのですよね。
これは、スクリプト言語とコンパイル言語で違っていたのが大きかったのではないかと思います。
また、Flaskもちょっとかじっていたのですが、その後に学び始めているSpring Bootは概念がほぼ同じなので、理解が早い気がします。
業務で必要になったので急遽購入。
— タムラ@コツコツいこうぜ!( •̀ᴗ•́ ) (@TakashiTamura9) 2021年11月25日
何冊か試し読みしたけどこれが一番わかりやすそう。
ここをきっかけにWebアプリの概要を掴んでおきたいところ。
後悔しないためのSpring Boot 入門書:Spring 解体新書(第2版): Spring Bootが丸分かり Spring解体新書 https://t.co/KkjMA0i16c @amazonより
まさに今、Spring Bootが必要になってるんですよねー。
これを爆速でマスターできたら、来年の仕事が楽になるはず。
そして、職場でドヤ顔できるかも・・・。
理由3: 初心者用の動画やKindleが超充実している
これが最も強い理由かもしれません。
最近は動画やKindleで初心者向けのわかりやすい教材がいっぱいあります。
こんなの、私が社会人になりたての20年前には全然無かった・・・。
今回もJavaを学習しなきゃならなかったのですが、キノコードさんのこの動画で、一通りマスターすることができました。
Pythonの時といい、キノコードさんにはマジ感謝です。
そしてKindleも初心者向けの教材がめっちゃたくさんあります。
今回購入したこの本も、初心者向けでとても読みやすいです。
Kindle Unlimitedの方は無料で読めてしまうのだからすごいですよね。
本屋に行く前に、思い立った瞬間にポチれば読み始められる凄さ。
数日でプログラミング言語を習得し続けて、多くのWebアプリを作りたい【夢】
というわけで、「プログラミング言語を数日で習得」は現実的かもしれないと思う理由を3つ挙げさせていただきました。
ただしこれには
「1つの言語をしっかり習得する」
という前提条件があります。
私はまだ、1つの言語もしっかりと技術習得したとは言えません。
Pythonで2つほどサービスを作りましたが、まだWebアプリは作れていません。
幸いにも私は今、勤め先でもWebアプリ作成に必要なスキルを学ぶことができる立場にいます。
本業と自分の夢が重なっているのは本当に幸せなことだと思います。
とても良いチャンスだと思いますので、しっかりと追いかけていきたいと思います。