プログラミング学習サイトのProgateってご存知ですか?
自分は学生時代プログラミングアレルギーを患い今までプログラミングに触れることなく行きてきました。
しかしながら現在、世の中的には小学生のプログラミング教育義務化とかビッグデータ解析やAIが話題となりデータサイエンティストや機械学習などプログラミングのできるエンジニアが重宝される時代になりました。
自分もそのビッグウェーブに乗らねば!という少しミーハーで短絡的な考えの元、プログラミングを勉強することに決めました。
このProgateというサイトでは月額980円で全ての学習コースを学ぶことができますが、無料の範囲でも基本的な文法などを学ぶことができます。
自分はこの無料範囲を1ヶ月かけて勉強して制覇しました!
今回は全ての言語を制覇してみた感想と、各言語の特徴を自分なりに感じたことも踏まえて紹介したいと思います。
Contents
制覇した率直な感想
まず言いたいのがアレルギーを克服したと言いたいですね。学生時代C言語を主に学んでたんですけど、『最初におまじないを〜』とか言われて、意味不明になってました。
しかしこのProgateでは超基本的なところからわかりやすく説明して、かつ学んだことをすぐに実践で試すことができる学習方法になっているので定着が早い気がします。
全ての言語を制覇してみて感じたこととして、基本的な文法は言語が違えど同じようなパターンで書くということを身体で覚えることができる、かつ他言語に応用できるということ。
例えばコンソールに表示させる基本的なプリント関数も、
print()
console.log()
println()
こんな風に書式は違えど,なんとなく同じ型だということがわかります。print関数は超基本なので,こんなの当たり前だろってレベルの方はスルーしてください。他にもif文,switch関数,大小比較(==,<=,>= など)なんかも言語が違ってもほぼ同じ使い方なので『この前やった通りだな』と復習にもなります。
また,全て制覇して思ったのが自分の得意不得意や、面白いなと思える言語に出会えるということです。
簡単に分けるとwebサイトなどを作ろうと思うたら、HTML&CSS、jQuery、Ruby on Rails5、PHP、Sass、Reactなどで学ぶことができますし、スマホアプリ開発やデータ解析を学ぶならだったら、Java、Python、Swift、SQLとかになります。
自分はweb系言語には触れたことがなかったので、とても新鮮な気持ちで取り組むことができました。自分が書いたプログラムでサイトのレイアウトが変わるのはとても楽しかったですね。
最初にこっちから入ってたらプログラミングアレルギーならずに済んだかもしれません。
超初心者向けに説明する言語の特徴
HTML&CSSはWebサイトを作成できる言語になります。イメージを張り付けたり,文字を書いたりできます。文字のフォントや色も変えたり自分の好きなようにデザインすることができます。自分はこの自由に自分でデザインできるところが面白いなと感じました。
Javascriptは,無料学習の中でどんなところに応用できるのかがわかりませんでしたが,よく聞く言語です。プログラミング言語アレルギーだった自分でも名前は知っていました。ちなみにJavaという言語がありますが,全く別物と思ってください。Javascriptを使うことでWebページの動作を作ったり,Webアプリを作ることができます。
jQueryを使えば,Webサイトにログイン画面をポップアップさせたりすることができます。自分はHTML&CSSに加えてjQueryでのサイト制作に非常に興味がわきました。
RubyはWebアプリケーションのシステムを作ることができます。食べログやクックパッドなんかもこのRubyで作られているようです。プログラムしやすさに定評があります。
Ruby on Rails5はSNSなどのアプリケーションを作ることができます。ログインやいいね機能を付けたり,本格的なSNSアプリ作成したいならこの言語がおすすめです。ショッピングサイトなどもこのRuby on Rails5が使用されているようです。
PHPもHTML&CSSと同様にWebサイトを制作できます。ではHTMLとどう異なるのかということですが。HTMLが時間によって変化しない静的なWebサイトであるのに対して,PHPは時間によって変化する動的なWebサイトを制作できるという違いがあります。ブログなどは時間が変化しても変わりませんが,FacebookやTwitterなどは時間によって変化しますよね。そういった変化を組み合わせて製作する場合はPHPを使います。
JavaはOSによらず開発できる言語で,TwitterのようなアプリからMINECRAFTなどのゲームアプリも制作することができます。
Pythonは最近最もよく聞く言語ではないでしょうか。Pythonはデータ分析やグラフ化してくれるライブラリが充実しているのと,簡単なゲーム(ブロック崩しなど)も作ることができます。最近流行りの機械学習やWebスクレイピングなども行うことができます。個人的に興味のある言語なのですが,まだまだ使いこなせていません。要復習ですね。
SwiftはアップルのiOSやmacOSでのアプリ開発を行うことができます。自分はWindowsOSなので,Progateのこの回は『こんな感じで書くんやなー』くらいでとどめてました。iOS上で動くアプリを開発したい方はおすすめです。
Command LineやGitの使い方も学習ことができるんですね。
Command Lineはコンソール画面からファイルを作成したり,ファイルの移動したりすることを学習します。自分も学生時代にプログラミングの授業でやりましたが,アレルギー発症により忘れていました。しかし,今回再度学習することで思い出すことができました。
Gitも名前は聞いたことがありましたが,実際どんな手続きを踏めばアップロードしたりダウンロードしたりできるのか学習することで理解することができました。
SQLはPythonと同様にデータベースにあるデータを操作できる言語です。用途としては,検索エンジンでのキーワード検索システムや列車の運行情報システム,スマートフォンの電話番号や住所などを保管するシステムなどに使われているようです。
Sassは『CSSをより便利に効率的にするための言語』と紹介されていますが,CSSでは必要な文字の装飾は上から羅列していくのに対して,Sassでは入れ子構造をとるためどの文字に対してどんな加工を施すのかプログラムが見やすくなってる点で便利になっています。ちなみに自分はこの言語は初めて聞きました。
GoはGoogleが開発した言語で最近人気急上昇らしいです。プログラミング経験者からすれば,書きやすいみたいですが自分みたいなアレルギー患者だった人や初心者にはそこまで使いやすさは感じなみたいです。Goを使って作れるアプリとしてはサーバー構築,Webサーバー構築やスマホで動作するアプリケーションなどがあるみたいです。Udemy講師の酒井潤さんがGoについて説明してくれているのでそちらを参考にしてもいいかもしれません。
Udemyより→現役シリコンバレーエンジニアが教えるGo入門 + 応用でビットコインのシストレFintechアプリの開発
ReactはFacebookとコミュニティによって開発されたユーザーインターフェースを構築するためのJavascriptライブラリになります。(Wikipediaより)この言語はProgateの最後にある最新の言語なんですが,最後にして最難度の言語でした。正直さっぱりでした。最後にしてこんな意味不明な言語出しやがってまたアレルギー発症するだろうがーと思いましたが,今まで他の言語で面白かったのあったしまあいいかとスルーしました。
終わりに
無料コース全てを制覇するにあたり、途中で止めようかととも思いました。やめて興味のある言語に特化して勉強しようかと思いましたが、最後まで諦めずにやり抜くことを選びました。
途中で投げ出さずにやり抜けた要因としては、一回でたくさんのページをやろうとするのではなく、毎日数ページでいいからやろうと思って取り組んだからだと思ってます。
もしこれからやろうと思っているのであれば、毎日少しずつ積み上げていく勉強スタイルはオススメです。
これからProgateに課金するか,以前購入したUdemyを進めるか迷ってます。
ただプログラミング学習にホットな内に継続して勉強を続けたいと思います。
コメント