記載されている内容は2017年06月14日時点のものです。現在の情報と異なる可能性がありますので、ご了承ください。記事に記載されている情報は自己責任でご活用いただき、本記事の内容に関する事項については、専門家等に相談するようにしてください。プログラミング学習IT業界は活況を呈し、プログラマーが不足している状態です。ここでは、初心者の方が独学で言語を習得しプログラマーとなるために、どんな言語選びどんな学習をすべきかを考えようと思います。初心者が独学に適した言語を選択した時、プログラマーへの扉が1枚開くでしょう。初心者プログラマーへの独学向け初心者の方が、独学でプログラマーとしての学習を始めたのだけれど、途中で挫折してしまった話はよく聞きます。大体、初心者の90%程の方が途中で止めてしまうと言われています。ならないためにはどうすべきか、初心者の方が、独学でプログラマーを目指し、独学で乗り越えるための5箇条から始めましょう。〜独学でプログラマーへ1〜初心者でもプログラムが組めるようになりコーディング力(プログラムを記述できる力)が上がれば、作成したプログラムも評価され、それがやがてプログラマーとしての収入とかステイタスアップとかに確実につながります。初心者の方が独学によるプログラマーを志向する背景はこんなところにあるのだろうと思います。〜独学でプログラマーへ2〜750種類ほどあるプログラム言語から、独学でどの言語をやるかを決めるのは初心者たる貴方自身です。その言語なのか?そこにはやることの目的があるはずです。その目的を明確にするのも初心者たる貴方なのです。プログラマーとして独学で習得しようとする言語と目的に乖離があってはならないのです。〜独学でプログラマーへ3〜プログラミングについて何も知らない初心者からのスタートなのです。途中で止めてしまうと、独学であっても、それまでに掛けた時間・費用が無になります。ならないための選択が大切になってきます。学習するのに易しく広く使われている言語を選ぶことが、初心者たる貴方が独学を持続させていくポイントになってきます。環境構築とは「プログラミング言語を扱える環境」を作ることを、「開発環境の設定」や「環境構築」と言います。プログラミングはUnixがベースとなりますので、その派生版であるLinuxで構築するのが手っ取り早く簡単です。以前は、難しいOSとして避けられて来ましたが、「Ubntu」などはWindowsと同じ手軽さになっています。プログラミング志向の意欲があれば、初心者で独学でものりきれると思います。Windowsで構築に参考になるところしかし、Windows環境が圧倒的に多いでしょうから、開発環境の構築には次が参考になるでしょう。この部分は、初心者の方が独学でプログラマーを目指すときの最初の壁かもしれません。プルを少しアレンジして自分の考えに従ってコーディングしてみる。分見えますので、目の疲れもありません。出せて仕舞える手軽さがあり便利です。独学から始める初心者が学ぶべきプログラム言語パソコンだけではなく、家電に代表されるようにある程度自動化された機器に組み込まれていて、機器の動作を制御するための手続きを記号化したものをプログラムいい、記号化のために使われる様々な約束事をプログラム言語と言います。プログラマーを目指す初心者の方が、独学でも習得可能となるために、どんな言語を選択するべきなのか、主流と思われる言語の中から考えてみましょう。歴史があり憧れの言語C(1)〜(6)を手続き型といい、(7)、(8)を関数型と言います。これは執筆者の独断と偏見で2組に分けたものです。この分類に不備がありましたら悪しからずお願いします。独学だった私には、感覚的に関数型がどちらかというと易しいと思われました。初心者でプログラマーを目指す方も同様だろうと思います。いずれにしましても、現役のプログラマーは下のどれかの言語で活躍されている方が多いはずです。1972年に生まれた歴史あるプログラミング言語です。開発されてから45年の年数が経っていますが、いまだに広く使用されています。学習が独学であろうがなかろうが、プログラマーを目指す初心者の人が一度は憧れる言語と言えます。〜汎用性〜機械語に近い言語なので難しいですが、今でも組み込み分野とかパフォーマンスが求められる分野では圧倒的な地位にあります。Widows,LinuxといったOSもC言語でできており、後で紹介するRuby,PythonもCで作られています。したがって、ITの基盤はCにあると言ってよいでしょう。Cを扱えることは、プログラマーとしての最高のスキルなのでしょう。*組み込み分野・・・例えば、PCの周辺機器を動かすためのドライバー〜用途〜C言語の適用範囲は広く、さまざまな業界で使われていますが、特に機械制御の分野で活躍しています。他のプログラム言語の源にもなっていますので、Cのエキスパートになると、仕事・収入等で一生困ることはないと言えます。プログラマーとしての大道でしょう。この言語を初心者が独学で習得するには難しいものがあると言わざる得ません。貴方が、10代〜30代前半の年代でなければ避けたほうが賢明です。C++は「シープラスプラス」と読みC言語の拡張版です。したがって、C言語と互換性を持っていますのでその環境を利用できます。拡張した分、C言語より速度は若干劣りますが、C同様機械組み込みやゲームのプログラムに使われています。Cと同様、プログラマー志向の初心者の方が独学で習得するには時間がかかるかもしれません。C#は、Microsoft社が開発した言語で「シーシャープ」と読みます。C++の改良版ですが、Windowsのみに特化していますので、C言語やC++との互換性はありません。C++よりも簡単で、プログラムがしやすいように設計されています。独学で、Cのプログラマーを目指す初心者の入り口になるかもしれません。優等生のJAVAパソコンにJava環境がないと動作しないwebサイトやプログラムなどが沢山ありますので、世界中で広く使用されており、プログラマーとしての需要が一番高い言語です。OSに依存しませんので、ゲームの開発やスマホアプリ、コンピュータグラフィックス等々、その用途は広くプログラムを必要とする業界ならば、どこでも使われていると考えてよいでしょう。個人的な感想ですが、言語的にも複雑なところがありますので、初心者の独学での習得には時間を要するかもしれません。プログラマーに人気でありwebページにさまざまな機能を持たせるために利用される言語です。その機能が、webページの動的な部分を作り出しているのです。webサービスを実施する企業であれば必ず用いる言語ですので、プログラマーとしての需要は高いと言えます。初心者の方が習得するには独学でも可能でしょう。下のPHPなどをマスターした後がよいと思います。Webサイト作成用の言語。今では、「Webプログラミング=PHP」というレベルまで普及しています。WEBプログラマーとして人気の言語です。Scriptと同じく動的な部分を担当する言語です。文法は簡単で読みやすく、シンプルにプログラムを記述できるため、プログラマーを目指す初心者が、最初に習得する言語として人気の高い言語といえます。独学は十分可能だと思います。初心者にオススメのPythonPythonは、オランダで生まれたプログラミング言語で、理工系の初心者、特に海外で人気が高い言語です。関数型ですので、Y=F(X)のXに値を代入するとYが決まるようなシンプルな感覚でコードを書けるようになります。どちらかといえば、初心者でも理工系が強い人が選ぶと独学でも決して失敗しない言語と言えるでしょう。開発や学習に使うための環境も、比較的簡単に整えることができ充実した環境となっています。用途は、webサービスの開発、機械学習の研究、教育目的など多方面に渡り使用する業界もさまざまです。人工知能の開発分野で人気の高い言語となっています。プログラマーとしての人気は世界でも評判があり、日本でもその人気が高まりつつある注目の言語なのです。https://static.pexels.com初心者の方が、せっかく努力して独学でプログラミングを習得したとしても、それが収入に結びつかなければプログラマーとしての意味が褪せります。したがって、どの分野のプログラマーが求人数も多く収入も多いのか調べてみましょう。2017年も、IT市場全体のプログラマー求人は堅調で、優秀なプログラマーは引く手あまたのようです。なってくると、初心者でもやってみよう。独学でもいいという気持ちになります。昨年2016年におけるプログラム言語ごとの求人年平均と求人数を見てみましょう。上のサイトの資料を求人数順位で並べてみました。https://static.pexels.com今、IT市場全体は、IoT、車載デバイス、スマートフォン、クラウド、人工知能やロボットなどへと加速度的な広がりを見せています。第4次産業革命と呼ばれる流れのまっただ中に向かって進んでいると言えるでしょう。初心者の方も、独学で言語をマスターし、プログラマーとなってこの流れに乗りたいものです。https://images.pexels.comPythonは関数型ですので、下の例からも分かりますが初心者の方にも簡潔で分かりやすい言語構造になっています。十分な習得後はプログラマーとしての大道も用意されています。初心者の方も独学可能な言語となっています。Rossum氏により作成されたプログラミング言語です。オープンソースで開発されており、プログラムを書くのも実行するのも無料で行うことが出来ます。World!」プログラムのソースコードを、C言語とPythonで比較してみましょう。例として簡単すぎますが、これだけでも、C言語に比べPythonのシンプルさが初心者の方にも伝わると思います。プログラムのエラーは、ソースコードの量に比例して増えていくものです。その点、Pythonは簡潔な記述と、文脈の判断にインデント(文頭の空白)の数を用いるといった仕様のため、綺麗なソースコードの書き方を自然に覚えることが出来ます。独学でもいけそうな気がしてきます。収入も求人数も多い言語は?上にあった、「プログラム言語と年収」のところから、年収1、求人数7となっています。海外ではJava、C言語に次ぐ人気で、自動運転などのAIやデータ解析の分野では欠かせなくなっているそうです。Pythonの普及率は海外に比較すると日本は遅れを取っていますので初心者から始めても、このプログラマーのさらなる需要増は今後見込まれます。習得次第で、プログラマーとして将来年収の期待ができ、さらに初心者が独学でも理解もしやすい言語であるPythonの習得に一歩踏み出してみようかと思ったらしめたものです。初心者でも、特に理系であるならば、コードを見ているとだいたい何が書いてあるのか、何を実行させようとしているかがある程度分かリます。そのことは、コードの読みやすさや書きやすさや、文法もシンプルで必要最低限のものしか用意されていないことの裏返しです。そのため、プログラマーを目指す初心者にも分りやすく、独学可能な言語だと思います。様々な専門分野に応じた、標準ライブラリ(プラグインのようなもの)と呼ばれるものが多数あり、Pyhtonが持たない機能をこのライブラリで補うように工夫されています。ディープラーニング」、「人工知能」などへの応用分野に注目が集まっています。Pythonによるプログラムの実行速度はJavaやC言語と比べると速くはありません。書籍や日本語の情報は増えているものの、他の言語に比べまだ少ないのが現状で、その分英文などの記述に当たらなければならのが難点といえます。この部分では、初心者の独学向けではないように思われますが、学習環境は整いつつあり独学ができるようになってきています。下にある統合環境をご覧ください。求人数は、7と比較的少ないものの、求人年俸平均は600万円を超えており、他の言語に比べて高い水準にあると言えます。プログラマーの他にも、理数が得意であれば、データサイエンティストといった新しい職業への道も開けています。初心者が独学でマスターするのにも適していますし、習得後の需要・収入を考えるとこれが一押しになります。https://static.pexels.com統合開発環境をつくる統合開発環境とは、プログラミング用に特化した便利なエディターだと思って下さい。Pythonの統合環境は、anconda,idle,spyder,ipythonとありますが、ここでは取り扱いの比較的易しいと思われるanaconda,idleを紹介します。プロのプログラマーも日常的に使っている代物です。初心者でも、これがあれば独学は十分できます。初心者向けで独学に最適です。anacondaを利用するとPythonを含めたライブラリィが一括でインストルされます。並んでいますので、Windowsであればそこをクリックして出てきた64bit、32bitのinstallerのどちらかをえらんでクリックしダウンロードして下さい。最初だと困る時も多いと思いますので、そんな時以下が参考になります。全てが英文ですので戸惑うかもしれません。英語の勉強もできるんだと思うと気持ちも軽くなるでしょう。Notebookというツールが同梱されています。FireFoxというWEBでブラウザー上で動くものです。したがって、自分の移動先でインターネットにさえ繋げれば、どこでも仕事の継続や確認をチームメンバーとできてバックアップも自動化されています。Pythonのクラウド版と言ってよいでしょう。Notebook」と選択していきます。Continuumidle初心者向けで、手っ取り早く分かりやすいかもしれません。未入力の状態で、Idleの最初の画面はコマンドShellと呼ばれるものです。>>>をプライマリプロントといい、この右隣にコマンドを打ち込んでいくことになります。間違えると、すぐさまエラー表示がでてどの部分に問題、エラーがあるか大体分かる仕掛けになっています。これに触れると、独学可能の実感がわくはずです。https://static.pexels.comオライリー・ジャパンのものが頭一つ抜けているような気がします。手にした時、果たして初心者である自分にあったものなのか、独学できる内容なのかと思ったものです。読んでいくとそれほど難しい気がしません。例にあるコードも簡潔でキレイな感じです。分かりやすい適切な訳でユーモアたっぷりです。初心者でも思わず引きこまれ、独学でもいける気にさせてくれます。数学をやっておりましたので、大変理解がスムーズでした。数学部分は少し難しいかもしれません。https://static.pexels.comWEB系のプログラマーを目指している人も多いでしょうから、初心者でも独学でマスターできる言語を1つ選んでみたいと思います。フリーランスでもWEB系プログラマーへ以来の仕事は沢山あり、供給が追いついていないように思えます。WEB系ならおすすめはPHP!プログラム言語の年収と求人数をご覧ください。この2つは、主にWEB系で用いられ、ともにコンテンツの動的な部分を担当しています。したがって、プログラマーの需要も高くこの2つのコーディング力は業界で重宝がられ供給が間に合わない状態です。WEB系に関心のある初心者の方も独学で十分習得できるでしょう。JavaScriptは後で!大雑把に言って、PHPは動的な大枠を担当し、JavaScriptはその枠組みの中で動的なコンテンツを与えるための言語だと言えるでしょう。したがって、JavaScriptだけでは単独で動きませんので、プログラマーとしてはPHPやRubyの次にマスターする言語だと捉えて下さい。初心者がPHPを習得してから次の言語として独学可能だと思います。PHP,MySQLとは?PHPがお勧めPHPは、データベースと連携しての動作がメインですので、ブログ作成で世界中で使われているWordPressなどに組み込まれています。Yahoo!や楽天、などのシステムにも利用されています。初心者にとって習得しやすく、手軽にWebアプリケーションを学べる言語だと思います。独学でも楽しみながらWebアプリケーションのノウハウを学ぶことができるでしょう。WEBプログラマーを目指す方へお勧めのプログラミング言語の一つです。WordPressの紹介WordPressというソフトがあります。これは、もともとブログを作成するためのシステムとして公開されました。その後どんどん進化し、個人ブログ、企業サイト、公共機関のサイトなど、様々なウェブサイトでCMS(コンテンツ管理システム)として利用されています。WordPressから入る道もあるしたがって、WEBプログラマーの+1のスキルとして求められ重宝がられています。WordPressそのものは、いたって簡単でその中でPHPの記述もあります。初心者の方が独学でWordPressから入りPHPへいたる方法もあります。〜WordPressとの複合的な独学の勧め〜WordPressは「PHP」で構築されており、コンテンツの管理にはMySQLというデータベースを利用して、CMSとしての機能を実現しています。データベースなどと聞くと、初心者であれば独学は無理かなという感じもするでしょうが、その存在すら感じさせない操作性を持っています。ここで、注意点はWordPressが「PHP」で構築されているということです。プログラミングの学習を前に進めるエネルギーは、いまのこのプログラムで何ができるかが大きな要因になります。WordPressでブログを構築していくと自然「PHP」の学習もできるというメリットが生まれます。複合学習がプログラム学習の可能性を増大させて行くと考えてよいでしょう。「PHP+WordPress」のスキルがあれば、プログラマーとしての貴方の需要は一層高まっていくでしょう。https://static.pexels.comこれまで多岐に渡って記述してきました。最後となりますが、自分がITの世界で感じていることに触れたいと思います。それがまた、プログラマーを目指し、独学を続けていこうとする初心者の皆さんへのエールだと思っていただければ幸いです。プログラミング学習のベースなるものプログラミングの学習には継続が必要です。継続する力が必要だと言われても、何をすれば独学が継続に繋がるのかが大切です。そのためには、参考文献の例の類似問題を自分なりに考えて、間違いを嫌がらず徹底してやることです。すれば、独学であればこそ、だんだん言語自体が身体に馴染んできて正確なコードを書けるようになっていきます。「問題のレベル」はそれこそ「問題」ではないのです。試行錯誤と自己思考を繰り返す中でしか言語は獲得できません。それが、プログラマーを目指して、独学を続けることができる初心者の心得だと思って下さい。STEMの時代STEMが大切ということを耳にするようになりました。ITの発展が国の命運を決めていくような時代に入ったのでしょう。それこそが、第4産業革命と言われる所以なのかもしれません。STEMは、「Science(科学)、Technology(技術)、Engineering(工学)、Mathematics(数学)」の頭文字をとった造語です。最近ではさらに、「Art」の「A」を入れて「STEAM」とも言われるようになってきております。STEAMに求められるもの基礎的な素養として理数系の知識であり、さらに統合的な知識として「Art」の部分の素養が必要とされているのが上から分ります。プログラマーとしてのスキルは当然として周辺知識の獲得も不断に行わなければならないのでしょう。この意味で、誰もが初心者であり独学を必要としているのです。PHPの習得が意味するもの10年ほど前のことだと思いますが、クラウド、ビッグデーターという言葉がまず登場しました。数年前からAI(人工知能)、IOTという言葉を見聞きするようになりました。今後、IT分野の成長は益々加速されていくでしょう。老若男女を問わず、そんな世界を我々は生きていかなければなりません。「STEM」という言葉から全ての人が理数系の素養を今以上に求められる時代に入ってきたのだと言えます。https://static.pexels.comこの記事を読んでいる皆さんには一つの希望があります。それは、「アプリケーションを利用するだけ」から「作ってみよう」という意識の変化にあります。「Python」はAIをリードするプログラム言語であり、「PHP」は文系分野の素養を要する言語えます。「Python」、「PHP」の選択は単にプログラムの世界を超えて、変わりゆく世界をどう生きるかにも繋がる重要な選択なのだと思います。どちらも、初心者の方が独学で乗り越えれば、プログラマーとして十分すぎるほどの言語になるはずです。多くの採用担当者は、あなたの「人となり」を判断する材料として「趣味特技」欄までチェックしています。M間違う人も多い「ご健勝」「ご多幸」の意味と違い・使い方と例文いまいち難しくてなかなか正しい意味を調べることのない「ご健勝」「ご多幸」という言葉。選考で要求される履歴書。どんな風に書いたら良いのか分からない、という方も多いのではないかと思います。通勤経路とは何でしょうか。通勤経路の届け出を提出したことがある人は多いと思います。