プログラミングスキルをつけたいと思ったけど、
どのプログラミング言語を学んだらいいかわからない。
適当に調べた言語で初めてみたけど、
いまいちプログラミングスキルが身に着いている実感がない。
こんな思いを抱いている大学生の方は少なくないと思います、、、
プログラミング言語の選び方、、
それはズバリ、作りたいものを先にきめることです!!!
以下の2つの分野について大学生に向けたオススメのプログラミング言語に触れていきます
オススメのプログラミング言語
作りたいものが決まれば、学ぶべきプログラミング言語は自動的に決まります。
さらに、作りたいものがあるとモチベーションを維持でき
途中で飽きることなく楽しくプログラミングスキルを身に着けることができます。
ここでは、作りたいプロダクト別のおすすめのプログラミング言語をご紹介していきます。
作りたいものが決まっていない方はこちらの記事をご参考にしてみてください。
Webアプリ
Webアプリとは、YoutubeといったWebの技術を使用したアプリケーションのことです。難しく考える必要はないですよ〜。
初めは、ありふれたWebサイトを思い浮かべてください!
開発に必要なプログラミング言語:HTML, CSS, JavaScript
知っていると望ましい言語:PHP, Ruby, MySQL

HTMLやCSSは普段目にしている Webサイトを形成するプログラミング言語です。
基本的にはHTMLで必要なモノを記述して、CSSで色や配置を整えていきます。
そのため、プログラミングスキルをつけるのにイメージも湧きやすく、サイトの装飾なども楽しいので勉強しやすいと思います!
簡単な自己紹介サイトを作るのは一日あればできることなのでプログラミングスキルに自身がない大学生にはもってこいのプログラミングと言えます。
そして、Javascriptは "動き" をつけるプログラミング言語です。
たとえばカウントダウンを表示したり、ボタンを押すと画像が回転したりなどを表現できます。
下に勉強をする際に参考になった参考書のリンクを貼っておくので検討してみてください!!
スマートフォンアプリ
スマートフォンアプリと聞くと難しく感じてしまうかもしれませんが、実はとても簡単に開発できてしまうんです!
AndroidやiOSのアプリ両方とも、「Android Studio」や「Xcode」という統合開発環境 (IDE*) で作れてしまいます。
※ IDEとは簡単にプログラミング言語が書けるように機能がまとめられた便利な開発環境です。
IDEは、インターネットから無料ダウンロードでき、すぐに開発を始めることができます。
また、どちらのIDEもシミュレータが入っているので、実機がなくとも動作を確認することができます。
もちろん、実機にアプリをインストールすることも可能です。
まずはメモ帳アプリや電卓アプリといったかんたんにできるアプリから作り始めてみてはいかがでしょうか?
これらのアプリは3日もあれば作れてしまいます!大学生にはとてもおすすめです。
下で詳しくみていきましょう!!!
(おまけ)自作アプリが完成したらストアで公開してみてはいかがでしょうか?
それぞれ所定の手続きを踏むことで誰でもアプリを公開することができます。
アプリの公開を目標に開発を進めていくのも良いですね。
iOSアプリ
開発に必要なプログラミング言語:Swift

MacとiPhoneをお持ちの方は是非iOSアプリ開発にチャレンジしてみましょう!
開発にはApp Storeから無料でダウンロードできるXcodeを使用します。

Xcodeは上の画像のようにiPhoneの画面を目に見える形で作っていくことができます。
とても操作がしやすく、Swiftが初めての人はもちろん、プログラミングスキルがない初めての人でも簡単にコードを書いていくことができます。
今ではプログラミングスキルをオンラインで身に着けることができます。
Udemyというオンラインサービスはとてもプログラミングスキルをつけたい方にとてもオススメです。

ここから少しSwiftの背景について触れます。(必ずしも読む必要はありません)
iOSアプリはもともとObjective-CというApple社が開発した言語で作られていました。
Objective-Cはとても良い言語ですが、癖が強い部分があり初心者にはとっつきにくい面もありました。
SwiftはそんなObjective-Cの良い面だけを残してモダンな機能を加えた非常に優れた静的型付け言語*です。
※プログラミング言語は、動的型付けと静的型付けの2つのグループに分かれます。より詳しく知りたい方は調べることをおすすめします。
SwiftはNull安全といって、「空の値の参照実行時に発生しうるエラーを未然に防ぐ仕組み」が組み込まれているので、原因不明のバグに悩ませる時間を大きく削減してくれます。
他にも、従来のプログラミング言語によって起こっていたバグを未然に回避できるように作られています。すごい!
Swiftはコンパイル型言語でありながら対話実行にも対応しています。
PlaygroundsというXcodeに付属するエディタを利用することで、プログラムの動作を簡単に確認することができます。(そしてこのエディタはなんとiPadアプリとしてもリリースされています!)
Swiftはとても美しい言語なので、ぜひ一度学んでみてください!
Androidアプリ
開発に必要なプログラミング言語:Kotlin(またはJava)
Android端末をお持ち方はAndroidアプリ開発がおすすめです。
AndroidはiOSと違って、WindowsとMac両方で開発することが可能なのが特徴です。

開発には無料でダウンロードできるAndroid StudioというIDE*を使用します。
※ IDEとは簡単にプログラミング言語が書けるように機能がまとめられた便利な開発環境です。
Android Studioはコード補完*が優秀なので、プログラミングが初めての方にもおすすめです。
※コード補完とは書きたいコードの初めの1、2文字を入力するだけで予測候補を表示してくれる機能です。
今から新しくAndroidアプリを開発するなら是非Kotlinを使用しましょう。
Androidアプリ開発は古くからJavaが使われていましたが、Google I/O 2017にてAndroidの開発言語としてKotlinが正式に加えられました。
Kotlinは2011年に登場した静的型付け言語で、Javaよりも簡潔・安全に記述することができます。
また、KotlinとJavaは相互に呼び出すことができるので、より柔軟なプログラミングが可能となります。
一方で、ウェブ上のリソース量についてはJavaのほうがKotlinよりも多いですが、これは時間が解決する問題でしょう。
是非Kotlinを使って充実したプログラミングライフを送ってみてください!
電子工作

マイコンというICチップなどを用いて電子工作してみるのも楽しいかもしれません。
LEDを光らせ、ロボットを操作したりなど、手で触れたり目で楽しんだり出来るのが特徴です。
開発に必要な言語:Arduino(C言語とC++のサブセット)
詳しくは下のリンクを参考にしてみてください!!
競技プログラミング
競技プログラミングをどこかで耳にしたことがある人はいるかもしれません。
その名の通り、課せられた問題をプログラミングで解決し、その結果の優劣で競い合います。
優劣には、問題処理に要する時間や結果の予測精度など様々な評価する点があり
自分1人でプログラミングスキルを養うのにモチベーションが高まらない場合、他人と競えることが魅力です。
競技プログラミングについては下のページで詳しく説明してます!
まとめ
いかがだったでしょうか??
プログラミング言語は、作りたい目標から決めることが大切です。
アメリカ人と話したいなら英語だし、中国人なら中国語を勉強するように
あなたが作りたいモノ、目的を意識してプログラミング言語を選んでみてください!!