web系で仕事をする時におすすめのプログラミング言語の難易度とランキング

記事公開日:
最終更新日:

Sponsored Links

This post is also available in: 英語

僕自身は元々webマーケティングを専門にし、会社として製品開発していく方向になりプログラミング(javascript/PHP/Python/ruby/C#)を使って仕事もしているような感じです。
小さな会社なので少数でなんとかする必要があり、その中でプログラミングも自然とやらざるを得なかったというのが本当のところです。

しかし、時代の流れは変わり、マーケティング担当だからといってプログラミング言語を知らなくていいという時代ではなくなってきました。
少数精鋭で起業する場合や、マーケティング担当として働く場合もプログラミング言語の基礎だけでも知っていれば、大きなアドバンテージとなります。

本記事はプログラミング言語を勉強し始めようと思う時に気になる、web系においてプログラミング言語の難易度とか将来性、使いどころについて書いています。
web系以外には組み込み系とか、基幹系とかありますが、それはまたプログラミング言語の優先順位が別となります。

おすすめのプログラミング言語の難易度とランキング

web_javascript

web_javascript



このランキングは職業ニーズ的に見た場合の、主にWeb系の仕事をする時に勉強したらいいよってランキングです。複数の言語を使い分けるプログラマーも、仕事で主に使う言語はおおよそ3つくらいが平均です。
プログラミング言語を勉強するのならば、まず1つメインで使っていく言語を決めてしっかりと使いこなして、その後2~3個ほかの言語を勉強するのが良いと思います。

一般的に「プログラミング言語」と呼ばれているものは以下の3つに分けられます。

・プログラミング言語
・スクリプト言語
・マークアップ言語とスタイルシート言語

1位 HTML/CSS

webプログラミングで仕事をしたいと思うのならHTML/CSSは最低限勉強する必要があります。趣味で無料ブログをカスタマイズするのにもHTML/CSSが必要なくらいです。

HTMLは今読んでいるこのブログの文章とかを表示するための言語です。
CSS(カスケード・スタイル・シート)は文章の色を変えたり、サイトのレイアウトをしたりするための言語で、知っているとデザインのカスタマイズをすることができます。
最近はhtml5とCSS3とかを勉強するのが良いのではないでしょうか。

ジャンル:HTMLはマークアップ言語、CSSはスタイルシート言語
難易度:どのプログラミング言語よりも一番簡単

2位 javascript

javascriptは最近になって勢いを増してきた、スクリプト言語です。
web系の仕事をするのでとりあえずプログラミング言語を勉強したいという場合には、javascriptから勉強するのがいいです。

javascriptは例えばブラウザでGoogleマップのようにリアルタイムに動作(Ajaxとか呼ばれている)するのに使われています。また、身近な例としては、iPhoneやAndroidのアプリケーションを開発(phonegap)するのにも使われます。
またサーバー側のシステムとしてNode.jsとかもjavascriptで動くことで有名です。

また、UI(ユーザーインターフェース)デザイナーやフロントエンドエンジニアにおいては、javascriptは必須でしょう。AngularJSとかBackbone.js、React.jsなどなど…javascriptフレームワークは勢いがあります。
将来的にもjavascriptが使われる機会はますます増えてくると思いますので、勉強しておいて損はないと思います。

jacascriptについては過去記事javascript入門+αのためのおすすめサイトと本で紹介していますので、参考にしてみてください。

ジャンル:スクリプト言語
難易度:手軽に使うだけなら簡単だが、深く勉強するとC言語とかJAVA並みに難しい。php/perl/rubyと同じくらいの難易度。

3位 PHP

サーバー(データベース)と連携するようなプログラミングをする時に必要となります。
ちょっと前に流行った、モバゲーやグリーなどが開発しているソーシャルアプリゲームなどは、ほとんどPHPで開発されています。
また、有名なブログシステムのwordpressなどもphpで動いており、カスタマイズする時にphpを知っていると便利です。

PHPの得意分野はサーバーやデータベース(MYSQLとか)と連携することなので、PHPを勉強するとその周辺の知識も自然と勉強することができます。
PHPをある程度使えるようになると、CakePHPなどのフルスタックフレームワークでWEBアプリとかが作れるようになります。

ジャンル:スクリプト言語
難易度:C言語やJAVAよりかは簡単。手軽に扱った場合のjavascriptよりは難しい。perl/rubyよりかは簡単。

web系で仕事をする時に優先順位が低いプログラミング言語

ランキングの続きとして書いていきますが、以下はweb系で仕事をするのに「急いで勉強する必要のない」プログラミング言語です。
しかし、web系の企業でRuby(Ruby on Rails)のみで受託開発している会社もあったりするので、あくまで目安として参考にしてください。

Ruby

日本人のまつもとゆきひろさんという方が開発したこともあって、日本語での参考文献が多いプログラミング言語。

Ruby on RailsというWebアプリケーションを開発するためのメジャーなフルスタックフレームワークがあり、Twitterなども以前はRuby on Railsで開発されていました。最近だと、CookpadやnanapiなどもRuby on Railsで開発されていたりします。
イケてるベンチャーやスタートアップはRuby on Railsを使うという、なんとなくの流れがありますので、ベンチャーやスタートアップを考えている方はrubyから入ってみるのも良いかもしれません。

Ruby単体のプログラミング言語としては初心者の人がプログラミング言語を学ぶのによく勧められる言語のひとつです。

ジャンル:スクリプト言語
難易度:C言語やJAVAよりかは簡単。phpよりかは難しい。

Objective-C

iPhoneが大好きとかiPhoneのアプリを作りたいと思うのなら、Objective-Cを学んでもいいかもしれません。
iPhoneアプリで高速な動きを求められるネイティブアプリを作りたいのなら、Objective-Cのみの一択です。

C言語の兄弟みたいなものなので、学習コストはC言語と同等かそれ以上が求められます。

ジャンル:プログラミング言語
難易度:C言語と同等。

C#(シーシャープ)

windowsの開発元であるマイクロソフトの息のかかったプログラミング言語なので、windowsのソフトウェア(フリーソフトとか)作りたいのならば、おすすめです。
しかし最近は3DゲームエンジンのUnityでC#が使えたり、Xamarinと連携してiphoneやAndroidのスマホアプリを作れたりと勢いを増してきています。

基礎だからC言語勉強しろっていうのは分かるけど、将来性あるの?…と考えてる方は、C#を勉強してみてはいかがでしょうか。言語仕様がかなりキッチリしているので、融通は利きませんがプログラミングの勉強には最適です。

ジャンル:プログラミング言語
難易度:C言語よりかはちょっとだけ簡単。php/perl/rubyとかと同じくらいの難易度。

JAVA

身近な例では、AndroidがJAVAベース(大元はLinuxってやつですが)で開発されています。
いろいろなプラットフォームで動くことが得意なプログラミング言語で、企業の業務系のシステムなどに使われています。小規模開発よりかは大規模開発向けの言語です。

もともと、AndroidのアプリはJAVAでしか開発できませんでしたが今は色々な言語で開発できるようになっているので、Androidアプリを作るためにJAVAを勉強するのはおすすめしません。
将来的に大規模なシステム開発したいなどの場合には知っておいても良いかもしれません。大企業のシステム開発とかはJAVAが主流だったりします。

助長で融通の利かないお役所みたいな言語なので、一番最初にしっかりとプログラミングを勉強するのには向いています。
僕もjavascirptの概念を把握するのに、JAVAの勉強が非常に役に立ちました。

ジャンル:プログラミング言語
難易度:C言語よりちょっとだけ簡単。Rubyやjavascriptよりかは若干難しい。

Python

日本ではあんまり普及していないけれども、プログラミング言語を学ぶのにおすすめの言語のひとつ。
文法が厳格なのでコードの見た目が綺麗で内容が把握しやすいのがその理由です。

なぜだか、ハッカーが使うプログラミング言語はPythonという都市伝説もあります。

DropBoxなどがPythonで開発されていて、非常に実用的でもあります。
しかし、日本でPythonを使って開発している企業は少ないだろうと思います。

追記:Python使い始めました

流行の統計的手法によるデータ分析や機械学習(人工知能)のカテゴリにおいてPythonは非常に使い勝手が良いです。
web系の仕事をするのに必要か?と言われると微妙ですが、時代の流れはデータ分析や機械学習が重視される方向に向かっているので興味がある場合には遊んでみてもいいかもしれません。
別記事「pythonで機械学習系のライブラリをインストールして環境構築する手順(windows7-32bit)」で環境の作り方について書いているので参考にしてみてください。

ジャンル:スクリプト言語
難易度:C言語やJAVAよりかは簡単。

Dart

Googleが開発したプログラミング言語のひとつ。
サーバー側とクライアント側が同じプログラミング言語で開発できるという、素晴らしい可能性を持った言語。javascriptでもNode.jsとか使って、無理してできないこともないようですが。

今のところあんまり普及していませんが、将来的にDartはjavascriptに取って代わるかもしれないと言われています。

ジャンル:プログラミング言語
難易度:C言語やJAVAよりかは簡単。

perl

僕はperlは試したことがないので、調べた結果だけのメモとなります。
mixiとかはperlで開発されているようですので、ある程度のものは作ることができます。

メリットは一昔前まではユーザーが多かったので、ライブラリや参考文献が充実していることです。
ですが、perlは非常に自由な言語なので同じ目的で書かれたコードでも、書く人によってかなり違ったコードとなっています。

その点で、初心者向けではありません。

ジャンル:スクリプト言語
難易度:C言語やJAVAよりかは簡単。Ruby,Pythonよりかは若干難しい。

web系で仕事をする時に、たぶん使わないプログラミング言語

c言語/c++

C言語の拡張版がC++で、兄弟みたいなものです。

プログラミングを勉強するならまずC言語から……というのが鉄板ですがあんまり楽しくないので、ある程度C言語で勉強して、その後スクリプト言語で遊びながら覚える方法をおすすめします。もしくは、C言語の代わりにC#(C#は2015年現在、イケてる言語の中に食い込んできそう)から勉強するとか。

C言語で基本的な勉強をする時に知っておいたほうがいいのは、「ポインタ」「ポインタのポインタ」の段階くらいまで。それから「アルゴリズムとデータ構造」のあたりをC言語で勉強したら、他の言語で書かれたコードはある程度読むことができます。

PHPとかRubyなどのプログラミング言語も、結局バックグラウンドでC言語が処理しています。なので、プログラミング言語を勉強していくと、必ずC言語と向かい合わなければいけない日がやってきます。

どの言語を最初に勉強したらいいのかというのは、性格(嫌いな食べ物は最初に食べるか?…みたいな)にもよりますし、何を作りたいかによって変わってきます。
作りたい製品・製品の目的・チームの知識などによって、最適なプログラミング言語を使い分けるというのが良いのではないかと思います。

About
Amelt.net,LLCの創業者で、費用対効果の高い統合webマーケティングによりビジネスパートナーとして継続的にサポート。詳しいより。ブログの更新情報facebookページGoogle+そしてTwitter、またRSSfeedlyLINE@にてお知らせしていますのでフォローよろしくお願い致します。


Sponsored Links