やっぱり私、プログラマーを目指すことにするわ!
「ひよこ鑑定士」と迷ってたんだけどね。
よくよく考えたら、あたし鳥アレルギーだし(´ω`)
え?
どのプログラミング言語を学ぶのかって?
いやだなぁ、今や小学校でもプログラミングを教える時代よ?
私みたいな志の高い女は・・・
現存する言語、全部マスターしてやるわっ!
甘く見ないでよねっ!
ぇえ?
ぷ、プログラミング言語って200以上もあるの・・・?
ひ、一つ覚えるのに1000時間もかかるのっ・・・?
200000時間って、あたしらウサギの平均寿命かるく超えてるじゃない!
いやーん、どーしよー
何の言語を学べばいいのかしらーっ?
こんな疑問にお答えします。
本記事の内容
本記事の信頼性
IT業界歴 20年、現役のプログラマーであり会社の経営者でもあります。
プログラミング言語を選択する重要性
実に「人生の半分」をプログラマーとして過ごした事になります。
プログラミング言語は、現在使われていないものやスーパーマニアックなものまで換算すると数百種類あると言われています。
まあ、実際に開発現場で主力で使われているのは「20くらい」かと思いますが、使用されている言語にも「トレンド」の様なものがあり、現状で人気の高い言語がこの先も需要が高いかどうかは分かりません。
プログラミングの学習を始めるには、大前提として「プログラミング言語を選択する」必要があります。
選ぶべき言語は「何を作りたいのか」や「どの業界に就職したいのか」によっても異なりますし、「学習の難易度」も様々です。
一つの言語を習得するためには、それなりの時間と労力が必要です。
「何となく」選択して、のちのち
と嘆いた末に自暴自棄になって非行に走らないように、どのプログラミング言語が貴方に合っているのか、一緒に考えてみましょうね!
プログラミング言語を選択する前にやっておく事
・・・と行きたいところですが、その前にやっておくべき事があります。
1.プログラミングを学ぶ目的はなんだろう
一つ目は、プログラミングを学んだ先に何をしたいのか考える、つまり「目標設定」をするという事です。
まず、「目標設定」をする事が「貴方にとって正しい言語」を選択をする上で最重要な作業になります。
2. 最低限の知識とスキルは身につけよう
こんな話をすると
「プログラミングとは何か」とか「キーボードが叩ける」程度の話です。
プログラミングについての知識が皆無では、そもそも「プログラミング言語の存在理由」がわかりませんし、それを使ってどんな事が出来るのかすら分かりませんので、そもそもの「目標設定」が出来ません。
また、
ってドヤ顔する人に限って、キーボード渡したら人差し指2本でポチポチ打ち始めたりします。
最低限のスピードでタイピング出来なければ、目標達成はおろか学習のスピードも上がりません。
短い別記事を読んで頂くだけでも「プログラミング学習前の準備」については十分お分かり頂けますので、是非ご覧下さい。
(プログラミングは独学できるか)
おすすめのプログラミング6選!
「おすすめ」とは言いながらも本末転倒な話をしてしまうと、
今からご紹介する「おすすめ」にあっても、貴方の目標にそぐわないものであれば選択する必要はありません。
なので、「目標達成に適している」事以外に、その他下記のような条件からおすすめを選抜しております。
- 学習の難易度と学びやすさ
- 汎用性が高く、色々応用が効く
- 仕事として需要があるか
- 現在のトレンドにあっているか
数百あると言われるプログラミング言語の中から、
1.泣く子も黙る注目株「Python」
早速出ました、近年最も注目を浴びている言語の一つ「Python」が登場です。
「Google三大言語」の一つとしても名を馳せていますね。
現在、世界中において需要が急激に伸びている「AI開発」において大活躍の言語ですが、もともと汎用性が高く、
- WEBサービス、WEBアプリ開発
- デスクトップアプリ開発
- IoT開発
- 統計、データ分析&解析
など様々な分野で使用可能な万能言語です。
と思われるかもしれませんが、Pythonの設計は非常にシンプルで理解しやすく、扱いやすいという特徴があり、実際に打ち込むコードも単純で短くて済むため、初心者にもピッタリ!
これだけ条件がいいと、
って心配になりそうですが、ご安心下さい!ドントウォーリー!
世界中で大人気の言語です!
2.WEBページを鮮やかに彩るヴィジュアル系「JavaScript」
HTMLやCSSと同様にWEBページ作成になくてはならない存在、それがこのJavaScriptです。
(HTMLやCSSもWEBプログラミングに欠かせない言語ですが、厳密に言えば「プログラミング言語」ではないので、今回の選抜からは外しています。)
この言語を使うことで、WEBページに動きや変化をつける事が可能になります。
画像を拡大・縮小してみたり、スライドショーを挿入したり、ページのトップに戻るためのスクロールボタンをつけたり・・・と、WEBページをより魅力的に仕上げる事が出来るようになります。
現在でもトップクラスの使用率と求人数を誇る言語ですが、開発されたのが1995年と歴史が深く、参考情報がたくさんある事から初心者のスタートにも適した言語です。
3.お茶の間のアイドル「Java」
こちらもPython同様に「Google三大言語の一つ」として知名度が高く、世界中で人気のある言語です。
ユーザーが900万人を超えるとも言われておりまして、案件や求人の数もトップクラスです。
プログラミングについて全く何も知らないド素人でも、「Java」の名前くらいは聞いた事があるんじゃないでしょうか。
金融機関や交通機関など大規模な業務システムの開発にも使われます。
また、コンピューターのOSの種類に関わらず作ったプログラムが他のあらゆるコンピューターで使用できるために汎用性も高い。
学習難易度が少々高いのが玉に傷ではあるものの、書籍やネットなど参考情報が多く、かつ
という特徴がありますので、頑張って学ぶ価値のある言語だと言えます。
なお、前記の「JavaScript」と名前が似ておりますが「いきなりステーキ」と「やっぱりステーキ」同様、両者は全く関係がありませんのでご注意を。
4.WEBサイト作成のスペシャリスト「PHP」
歴史が長く利用者が多いので参考情報が多く、かつコードが単純なため難易度が低く、しまいには求人率もそこそこ高い、という現状では非の打ち所のない優等生!
ちなみに、WEB開発用の言語は
- フロントサイド開発用
- サーバーサイド開発用
の2種類に分類されまして、その名の通り「フロントサイド」はユーザーが実際に見る部分を作るために、「サーバーサイド」はサーバー側の処理に使用されます。
「PHP」はサーバーサイド開発用の言語であります。
フリーランスのエンジニアになるためには必ず習得すべし、とも言われています。
なお、単純なコードで動くため、
という特徴があります。
一見、長所に見えるかもしれませんが、間違いを起こした事に気づきにくい事から
後々、とんでもなく大きなエラーとなって表面化する事があるため、「正確にコードを書く」意識を持つ事が重要です。
ちなみに、もともと「PHP」という名前は「Personal Home Page」の略からきているそうで、残念ながら
だろうという私の予想は見事にハズれました。無念。
5.Apple社と運命を共にする「Swift」
近代において、スマホで使用されるモバイルアプリはプログラミング開発において
最も大きなカテゴリーの一つになりました。
そりゃそうですよね。
アフリカのマサイ族もブラジルのテンベ族もみーんなスマホ持ってますし、アプリの入ってないスマホなんて「魚について何も知らないさかなクン」みたいなもんですからね。
そんな中、飛ぶ鳥を落とす勢いの「Apple社」が2014年に発表した「Swift」はiPhoneやiPad、Apple watchなどのApple製品を作るための言語です。
「Swift」とは「迅速」という意味を持ちますが、その名の通り処理速度が早く、Swift以前に使用されていたApple製の言語「Ovjective-C」の2.5倍以上の速度を誇ると言われております。
コードがシンプルで、エラー修正が簡単な事も大きな魅力ですね。
Apple製品を作る事のみに特化しているので、もちろん汎用性は低く、現状での求人がとても多いとは、言えないですが、なんかの間違いでApple社がひっくり返らない限りは間違いなく需要を上げていく言語です。
6.伝説のベテランのDNAを引き継ぐ「C♯」
最新技術を駆使したゲームをプレイするのももちろん楽しいんですが、根っからのゲーム好きであれば
という欲望は少なからず持っている事でしょう。
ゲーム開発に適した言語というのも存在しますが、その中でも現在、最も多くの場で活躍しているプログラミングが「C♯」です。
プログラミング界には一世を風靡した、今も現役の大ベテラン「C言語」(1972年生まれ!)とその上位互換である「C++」という超有名言語が存在しますが、この2つに「Java」のエッセンスを加えて開発された、マイクロソフト社製の言語です。
太古の昔から繰り返される「Mac vs Windows」の論争の中で「ゲームやるならWindows」とよく言われますが、Windowsと同様にマイクロソフト社の開発であるため、ゲーム開発において絶対的な支持を集めています。
VR開発の主力としても利用されているのでこれからの需要も見込めますが、なんせ「学習難易度はやや高め」であり、真の実力を発揮させるにはそれなりの学習時間を要します。
さいごに。
まあ、今回は「6選」お届けしましたが、ネット上には「10選」、さらには「15選」なんて大ボリュームのおすすめ記事もあります。
プログラマーとして生きていくのであれば多数の言語を習得する必要があるので、様々な言語について存分に調べておくのも悪くないのですが、やはり最も大切なのは
という事をしっかり考える事です。
将来性や求人数に重きを置いて言語を選ぶのが悪いとは言いませんが、IT業界は今この時も高速で進化と変化を繰り返しており、そのため言語にはトレンドがあります。
現在需要の高い言語も数年後にはわかりません。
どの言語も一長一短ではありますが、「自分が心に決めた目標」に辿り着くために選んだ言語であれば、容易く諦めることも愛想が尽きる事もないでしょう。
プログラミングにおいて「言語の選択」は重要な、かつ難解な選択ではありますが「人生においてプログラミングを通じて何を成し遂げるのか」という選択さえ間違わなければ、自ずと答えは出てくるはずです。
まずはゴールを鮮やかに思い描くところから始めましょう!