ゆとりブログ

【プログラミング】大好きなプログラミング

ども、こすげっす。

早いものでもう1週間経ったのですね。

前の記事がこすげでまたこすげというのは惰性ですね...

そんな自分は昨日、熱と頭痛にうなされて一日寝るという...

いやー季節の変わり目って嫌い。

気圧の変化って嫌い。


てなわけで今回は少し真面目に今自分が使っているor使っていたプログラミング言語の紹介でもしたいと思います。

毎度のことですが、自分が書く記事は私的であり主観であるので、鵜呑みにしないでください。

こんなふうに思う人もいるんだなーって思ってもらえればと思います。


1. ActionScript(1.0 ~ 3.0)

ActionScript(アクションスクリプト)とは、アドビシステムズ社の製品であるFlashに使用されるプログラミング言語である。ECMAScript(ECMA-262)を拡張した物である。これを用いることにより、動画や音声のプレイヤーの作成など、コンテンツに複雑な処理や双方向性を持たせたFlashを作成することが可能である。
引用元 : ActionScript - Wikipedia

この言語が自分のプログラミング人生の始まりです。

主にActionScript 1.0でガラケーのゲームアプリを、ActionScript2.0でPC(ブラウザ)ゲームを、ActionScript3.0でWebページを作成していました。

特にこれと言って感想はありません。

ただ今この言語を使ってなにかゲーム作れと言われたら、昔と違う書き方をするだろーなーと思っております。

オブジェクト指向とかなにそれうまの?って感じでした。

また先輩が書いたソースをもとに作成していたので、書き方とか作り方に特に疑問もなくひたすらゲームを量産していました。

今思い返しても嫌いな言語とは思いません。

ActionScriptでなんか作れと言われたら作ります。

ただ、現在需要があるかはわかりませんが...

2. PHP

PHP: Hypertext Preprocessor(ピー・エイチ・ピー ハイパーテキスト プリプロセッサー)とは、動的にHTMLデータを生成することによって、動的なウェブページを実現することを主な目的としたプログラミング言語、およびその言語処理系である。一般的には PHP と省略して用いられており、これは「個人的なホームページ」を意味する英語の "Personal Home Page" に由来する
引用元 : PHP: Hypertext Preprocessor - Wikipedia


ダイナシはPHPで作られています。

これはとってもわかりやすく、難しいことをやらなければ学習コストもそこまでかからないと思います。

ちなみにダイナシはZendFrameworkで作っています。

フルスタックと言われるやーつですね。

これのおかげでそこまで苦労せずに済んだのかなと思っています。

というかPHPを使ったというよりZendFrameworkを使ったという表現をしたほうがしっくりきます。

今PHPだけでなにかしてと言われてできるかどうか...

変数に " $ " をつけるとか。

久しぶりにPHPを触った時にすべての変数に " $ " をつけ忘れてエラー出しまくったのは、ここだけの秘密です。

3. Ruby

Ruby(ルビー)は、まつもとゆきひろ(通称 Matz)により開発されたオブジェクト指向スクリプト言語であり、スクリプト言語が用いられてきた領域でのオブジェクト指向プログラミングを実現する。
引用元 : Ruby - Wikipedia

ダイナシの管理画面とか社内ツール、Micshar(ミクシャー)はRuby(2.0)で作成されています。

この言語は書いていてとっても気持ちいい言語でした。

フレームワークはすべてRuby 0n Rails(RoR)と言われるやーつですね。

なによりActiveRecordが素晴らしい。

あとはRVM(Ruby Version Manager)ですね。

これがあればだいたいやりたいことができます。

開発スピードも半端ないです。

大好きです。

これからも使うであろう言語の一つだと思います。

4. Java

Java(ジャバ)は、狭義ではオブジェクト指向プログラミング言語Javaであり、広義ではプログラミング言語Javaのプログラムの実行環境および開発環境をいう。
引用元 : Java - Wikipedia

左のサイドバーにあるダイナシの広告的なやーつとAndroidアプリの作成に使いました。

ダイナシの広告的なヤーツはJava Servletを使って作りました。

あ、あとテストデータの作成でもJavaを使いました。

Javaは規則というか縛りと表現するか、とっても厳しいんですよね。

なので書き方がブレることがあまりないという...

とってもわかりやすかったです。

また我らがスーパープログラマーKY氏もJavaをこよなく愛する方なので、いろいろ教えてもらえました。

ただ、Javaの環境を用意するのが一苦労ですね。

そこを超えられれば、Javaを楽しめるのではないでしょうか。

5. Scala

Scala(スカラ)はオブジェクト指向言語と関数型言語の特徴を統合したマルチパラダイムのプログラミング言語である。名前の「Scala」は英語の「scalable language」に由来するものである。
引用元 : Scala - Wikipedia

最近はじめました。

とっても面白いです。

オブジェクト指向で関数型とわけわからんちんですが、なんとかコップ本を読みながら格闘しています。

上記の言語と違うところは先輩たちがあまり手をつけていないということです。

つまりサンプルがないんですよ。

すべてぐぐってます。

書き方や構築の仕方など、右も左もわからんちんな状態なのでとっても楽しいです。

Javaみたいにかけるのも一つの特徴ですが、ScalaをやるならScalaぽく書きたいというプライドというか願望というか...

とにかく四苦八苦しながらやってますがとっても面白いです。

次のプロジェクトに使います。

「俺、Scala使ってます」

なんて言いたいために頑張ります。


まとめ


とりあえずWekipediaとともに紹介してきました。

これからさらに増えるのか、それとも深く追うのか...

自分の好奇心次第ですね。

ただ欲をいえば、そろそろフレームワークの中身を追ってみたいなーと思っております。

どっか時間あったらやってみようかなー。

Routing周りとかとか。

RubyとScalaでどれだけ違うのか...



ではさいなら...