考察:システム構築言語について

考察:システム構築言語について

システム構築言語についての考察

実現したいことがある。
実装できそうなパート、実装すると効果が出そうなパートも分類出来てきた。
さて、言語は何を選ぼうというお話です。

現在流行している3大言語(と言ってもいいのかな?)で考えてみます。

PHP

個人的に慣れていて現在よく扱っている言語。
親会社のシステムで私が構築した部分は殆どPHPで書いているくらい馴染みがある。
WEBに特化したような言語でとにかく自由。

今回のシステムではSEOワードなど分析をしたいところが数多くあるが、ここがPHPの不得手なパートとなっている。
PHPでデータ解析を行おうとした場合PHP-MLという選択肢があるが、勉強の元となる資料類がネット上を含め少ないため学習コストは高いと思われる。

フレームワークとしてはLaravelが最もシェアを伸ばしている。

私はいつもフレームワークを使わず作ってしまいますが、フレームワークはMVCモデルに従った構成となっていて、同じスクリプトを書かなくて済むような構造になっています。
そのため、Laravelを覚えると開発期間がすごく短縮できるらしいです。

Rudy

個人的にあまりなじみのない言語。
フレームワークとしてはRuby on Railsが有名。

主にはWebアプリケーション開発案件が増えたからというのが理由だと思われるが、国内の開発言語としてRudy on Railsの案件が増えてきているらしい。

Ruby on RailsもMVCモデルに従った構成になっていて、Laravel同様、開発期間の短縮に大いに役立っているとの事。

PHPよりも機械学習関連のプラグインが多く、データ分析のテキストもネット上には多く存在する。

Python

最近本屋でよく目にする言語。
AI絡みのシステム案件が多いため、解析機の充実しているPythonに人気が集まっている様子。
ただし、本屋に並ぶ書籍はPythonの基礎的な部分やAIに絡む部分の内容が多く、WEBツールとしての記載方法についてはあまりお目にかからない。

WEBツールとしてのフレームワークにはDjangoがある。
Djangoもとても扱いやすいフレームワークらしい。
機械学習や深層学習まで組めるのであればとても面白い言語だと感じている。

まとめ

今回の開発では、まずどう構成するかも含め慣れているPHPで実装していく事とする。
ただし、最終的にはデータ分析が不可欠となるため、同時進行でPythonの学習も進めていこうと思います。

PHPバージョン完成の前にPythonへの乗り換えが起こるか、それとも分析の実装が遠のくか。
そんなことも含め進みながら考えていきたいと思います。

システムのバージョン管理などを考えると、フレームワークの利用は必要なんだろうなぁ。