この記事の概要について
タイトル記事は煽りが微テレ含まれますが僕の意見を含めています。
エンジニア系のツイッターのタイムラインでも今後のバックエンドエンジニアの習得すべき言語について議論がありました。
コンピュータ言語はたくさんありますが、バックエンドで今後数年間右肩上がりで伸びていく言語は
Python
Go
Kotlinこの3つだけと考えてほぼ間違いないので、動的/静的/関数型言語それぞれの経験を積んだ後は、余計な言語をたくさん勉強するよりクラウド周りに注力するのが吉かなと思いますね(^.^)
- Python
- Go
- Kotlin
この3つのうちのGoについて今回の記事で言及するという意味で、、、
モバイルアプリエンジニアの僕が仮に0からGoを学ぶとしたらどうやって学ぶのかについて説明します。
Goは比較的習得コストが低いサーバーサイド側の言語でGoogleが非常に押している言語です。言語仕様はCライクです。
そもそもGoの開発デベロッパがC言語の開発者の一人だからでもあるからですね。
習得ロードマップについて
1) A Tour of Go
公式
以上!
この順番で手順を進めていけばGoを最短で習得できます。
Goのエンジニアの人に教えてもらいました。
(因みに僕はまだ1周もできていない・・・)
習得コストについて
1週間
習得コストと言いますか習得期間の話しです。Goで仕事をしているエンジニア曰く、
PHPやRailsなどのサーバーサイドの知識がある方なら「およそ1週間」掛ければGoの基礎ができるとの事。
1週間は短いですねw。
Go言語の主要な開発者について
この二人を押さえておけばいいです。
- Ken Thompson (ケン・トンプソン)
- Rob Pike (ロブ・パイク)
Thompson氏はC言語の開発者です。
Rob Pike氏はベル研(ベル研究所)に勤務していたエンジニア。
確かメインデベロッパは3人だった気がしますがこの二人を押さえておけばGoの将来性についての尺度を測れるのではないかと思います。
GoogleのGoに対する期待は「better C」の立ち位置です。
今のCはより複雑で現代のビジネスでは対応仕切れないし流行っているモダンな感じに合わない。
そこでよりベターなCになりうる言語を開発することが子供の教育に向いているのではないかということで、
「教育」を意識した言語仕様を目指した言語をGoogleが目指している。
Pythonも「教育」を意識して開発されて現代で非常に受けたことを考えると同じようにGoも将来流行ってくるんではないでしょうか。
と思って僕は去年の年末にGoに勉強しようと思ったのですが結局勉強しませんでした。