プログラミング道場Top

プログラミング未経験者はどの言語から学び始めるべきなのか?

更新日:

プログラミングを始めたいけど、どの言語から始めたらいいんだろう?
PHP、Ruby、Python、Java、JavaScript、HTML、CSS、SQLとか色々な単語を耳にします。
全て勉強できたらいいけど、なかなかそこまでの時間はとれないし。

こういった疑問にお応えします。

本記事の内容

  • 各言語の難易度や特徴を説明します。
  • ニーズに沿った言語を提案します。

各言語の特徴

PHP

  • 習得の難易度は低いので、初心者向けです。
  • 求人数が多いので、PHPエンジニアは正社員として会社に採用されやすいです。
    その半面で、給料は安い傾向にあります。
  • Web系で最も使われている言語で、人気があります。
  • エンジニアの数が多い。これはエンジニアの給料は安い傾向を意味します。
    同時に会社側からすると、一定のスキルを持ったエンジニアを集めやすいので、会社で採用されやすい言語ともいえます。
    メルカリは、そういった理由でPHPを選びました。
  • メルカリ、グリー、Facebookなど大手企業も使っているので実績があります。
    ただし、Facebookは自社で改良りたPHPを使っています。
  • WordPressなどWebサイトを構築するためのパッケージが整っている。

Ruby(Ruby on Rails)

  • 習得の難易度は中です。
  • 求人数は中ぐらいなので、正社員になる時は苦労するかもしれません。
  • 素早くWebサイトを構築できるので、スタートアップ界隈で人気があります。
  • Twitterが昔、使っていて、クックパッドは今でも使っています。
    Twitterが使わなくなった理由は、サイトの負荷に耐えられなくなったためですが、twitterほどのトラフィックにはなかなか達しないので、通常は気にする必要がありません。
  • エンジニアの数が少ないので、給料が高い傾向にあります。
    採用数も少ない側面もあります。
  • 自由と楽しさをモットーとした言語なので、プログラムの書き方のバリエーションが多いです。
    個人個人の癖が出るので、ソースコードは読みづらいともいえます。pythonとは逆の思想になっています。

Python

  • 習得の難易度は中です。
  • Web系の求人数は少ないのですが、機械学習系と合わせると、それなりの数になります。
  • Web系では人気が低いです。
  • 機械学習でよく使われています。
  • コードを書くときのルールがはっきりとしているので、コードが読みやすいです。
  • python2系とpython3系に分かれていて、文法が違うのが面倒です。
    ただ、これからはpython3系だけ勉強すれば良いのかもしれません。

Java

  • 習得の難易度は高いです。
  • 求人数は中ぐらいです。関西の方だとJavaの案件は多いかもしれません。
  • Web系でも使われていますが、Sierでも使われており、幅広い分野をカバーしている言語です。
    Androidアプリ開発でもjavaが使われています。
  • シッカリとした言語なので、Javaをきちんとと理解すれば一生ものだとは言われていました。
    でも、JavaがOracleに買収されてからは、少々、危ういかもしれません。

JavaScript

  • 習得の難易度は中です。
  • この言語だけでは求人が少ないです。
  • Web系で、フロント(デザイン、UI/UX)部分には必ず使われる。
  • 他の言語と合わせて使う、第二言語的な扱い。
    ただ、徐々に人気は高まりつつあります。

HTML

  • Web系のエンジニアならば、必ず理解している必要があり、デザインに使うためのマークアップ言語です。
  • 習得は簡単です。

CSS

  • HTMlを綺麗に整えるために、デザインで仕様する言語です。
  • 習得の難易度は中です。
  • フロントエンドをやりたい人には、必須の言語と言えます。

SQL

  • データベースに、データを入れたり取り出したりするための言語です。
    Excelを複雑にしたようなものです。
  • バックエンドをやる人は、必ず習得する必要があります。
    下記の本が、さわりとしてはいいと思います。


Git

  • バージョン管理ソフトと呼ばれるもので、みんなで開発する時は必ず使われるものです。
    そこまで難しいものではないので、この本でさわりを勉強するといいと思います。

会社に採用されるためには、何を勉強したらいいのでしょうか?

それで実際に会社に採用されるためには、何を勉強したらいいんだろう?というのがよくある疑問だと思います。
人によって目標が違うので、ザックリと目標別にわけて説明していきます。

デザイナーになりたい人

ここでいうデザイナーは、与えられた画像を元にして、デザインを構築していく人です。
まずはHTML、CSSを学びましょう。
その後に余裕があれば、JavaScriptを学ぶといいです。
以下の内容は、ドットインストールprogateで学び始めるのがいいと思います。

  1. HTML
  2. CSS
  3. JavaScript
  4. Git
フロントエンジニアになりたい人

ここでいうフロントエンジニアは、与えられた画像を元にして、デザインを構築していく人です。
さらに動的な動きも作成します。
まずはHTML、CSSを学びましょう。
フロントエンジニアの場合は、JavaScriptは必須です。
JQuery、Vue、ReactなどのJavaScriptのフレームワークを学ぶ必要もあります。

  1. HTML
  2. CSS
  3. JavaScript
  4. Git
バックエンドエンジニアになって、早く仕事をみつけたい人

ここでいうバックエンドエンジニアは、webサイトを構築するために、プログラミング言語やデータベースを使ってプログラムを作成する人です。
まずはHTMLを学び、次にPHPを学びましょう。
求人数が多いので、採用へは一番近いと思います。
ステップアップを目指したいならば、次にRubyやJavaを学ぶといいと思います。
バックエンドでは、SQLを知ることは必須になります。
CSSは知らなくても大丈夫です。

  1. HTML
  2. PHP
  3. SQL
  4. Git
稼げるバックエンドエンジニアになりたい人

Ruby on Railsの案件は高給が多いので、稼ぎたい人にはお勧めします。
HTML、SQLを学んだ後で、Ruby on Railsを学ぶといいです。
Ruby on Rails チュートリアルを学んだ上で実際に自分の作品を作ってから求職すれば、採用される可能性は十分にあります。
PHPに比べると学習時間は多めになると思います。

  1. HTML
  2. SQL
  3. Ruby on Rails
  4. Git
機械学習のエンジニアになりたい人

機械学習や統計をやりたい人はPythonを勉強しましょう。
ただ、pythonを勉強しろと言われても何がなんだかわからないと思うので、Udemyの講座などを受講するといいと思います。
機械学習エンジニアになるのは、少しハードルが高めです。

こんな感じです。
まずは自分の目標を決めた上で、学習に取り掛かるといいと思います。
少し目標と外れたことを勉強していたとしても、どの知識も決して無駄にはならないので、一つ一つこなしていきましょう。

Good luck for your engineer life!

-プログラミング初心者

Copyright© プログラミング道場 , 2018 All Rights Reserved Powered by AFFINGER4.