プログラミング言語別平均年収で堂々1位の「Scala」でHello World!

スポンサーリンク
スポンサーリンク

プログラミング言語別平均年収 Rubyは4位で562万円、Javaは6位で522万円|キャリコネニュース

こちらの記事でプログラミング言語別平均年収では「Scala」がトップ(色々とツッコミどころはありますが)とのことでしたので、私もその恩恵(?)に与りたいとScalaの環境構築とHello worldをやってみたいと思います。

スポンサーリンク

環境の構築

前提としてOSはLinux mint 17.1です。

$ java -version
java version "1.7.0_151"
OpenJDK Runtime Environment (IcedTea 2.6.11) (7u151-2.6.11-0ubuntu1.14.04.1)
OpenJDK 64-Bit Server VM (build 24.151-b01, mixed mode)
$ sudo apt-get install scala
$ scala -version
Scala code runner version 2.9.2 -- Copyright 2002-2011, LAMP/EPFL

PEPLから”Hello World”

手っ取り早く対話環境からHello World!してみます。

$ scala
Welcome to Scala version 2.9.2 (OpenJDK 64-Bit Server VM, Java 1.7.0_151).
Type in expressions to have them evaluated.
Type :help for more information.

scala> println("Hello World!")
Hello World!

見事Hello World!が表示されました。

スクリプトとして(?)”Hello World”

ソースファイルを作成しておいて後から実行することもできます。

作業ディレクトリを作成し、

$ mkdir Scala
$ cd Scala

ソースファイルを作成します。

object MyFirstScala {
  def main(args: Array[String]) :Unit = {
    println("Hello World")
  }
}
$ ls
 MyFirstScala.scala

実行してみます。

$ scala MyFirstScala.scala
 Hello World!

スクリプトとして実行と言っていますが、内部的にはREPLを起動してソースファイルを読み込んでいるのでしょう(なんと表現すればよいかわからなかったのでスクリプトとして〜と書きました)。インタプリタの仕組みそのものだと思いますが・・・。そのためかHello World程度でも実行に結構時間がかかりました(マシンスペックにもよるでしょうけど)。

コンパイルして”Hello World”

もちろんソースをコンパイルして実行することもできます。

$ scalac MyFirstScala.scala

上記のコマンドでコンパイルすると、拡張子が”.class”のクラスファイルというものが作成されます(このへんはjavaと同じですよね)。

$ ls
 MyFirstScala.scala
 MyFirstScala$.class  MyFirstScala.class  MyFirstScala.scala

実行します。

$ scala MyFirstScala
 Hello World!

よし!これで私も年収アップ間違い無し!!

ツッコミどころ

キャリコネさんの記事の基になった「スタンバイ」さんが発表した元記事をみてみると言語ごとの平均年収の他にそれぞれの最大値と最小値見ることができます。


プログラマー年収ランキング2017!言語別、第1位はScalaの626万円|スタンバイ

確かに平均値が一番高いのはScalaですね。でも最大値を見るとScalaよりもPython,Ruby,Java,JavaScript,PHPのほうが高いです。これらの言語は人気が高いこともあり、エンジニアの数も多いでしょうから2極化が進んでしまっている可能性が高いと思います。度数分布も見てみたいです。

これを言ったら元も子もないですが、結局はどの言語を使うかよりもどんなアプリケーションを作るか、サービスを提供するかなんじゃないかなと思います。開発対象のソフトウェアの特性に合わせて適切な言語を選ぶというのが普通なんじゃないでしょうか?

とはいえこういった切り口のランク付け(と某掲示板やまとめサイトなどの反応)というのも結構面白いですね。

コメント