マネー報道 MoneyReport

仮想通貨に特化した自作EAを公開中!仮想通貨FXでMT4&MT5を活用し資産運用中!

PHPで開発してみて分かったVB6との違い5つ!こんなにも違うもの!?

あとで読む スポンサーリンク

Webサイトがほぼ完成!

今年の2月位から大雑把に設計を始めて、えっちらおっちら開発を進めてきたWebサイトがようやく今月月初に完成しました(^-^)/

完成したと言ってもプレオープンでTOPページの無い状態ではあるのですが、まぁ一応動くのでOKかな、と(^^;

で、Webサイトですので当然Web言語(うぇぶげんご)という奴で開発をしたのですが、その利用した開発言語が「初心者にも簡単♪」と触れ込みの高かったPHP(ピーエイチピー)で開発してみました。

これまではVB6を仕事で1年間だけやっただけで、後はプログラミングから離れていたド素人ですので、どの言語をやっても難しいのですがいきなりC言語や癖のありそうな言語でやると、そもそもの言語の勉強に時間が掛かり過ぎてしまう可能性があるので「簡単そうな言語」というのは大事なポイントでした。

そんなプログラミングのド素人がPHPに初めて取り組んでみて感じたPHPとVB6の違う点5つを紹介させてもらいたいと思います(^-^)/

VBとは全然違う!

というか今日の記事は開発言語の専門的な話になりますので、普段の読者さんにはチンプンカンプンな話になるかもしれませんね、すみません(^^;

VBと普通に書いていますが「VisualBasic(ヴィジュアルベーシック)」の略で略称は「ブイビー」と呼ばれている開発言語の経験しかありません。
今では下火な開発言語ですが、Windows98やWindows2000の全盛時代には大変人気のあった開発言語です。
あぁそうそう、バージョンも沢山ある中で私が使っていたのはバージョン6です。VB6という奴です。
IT関連は変遷が早いと言いますが、開発言語も正にそうであれほど、もてはやされていた開発言語が今では誰も使っていないという現状には、非常に驚かされます(^^;

はてさて、そんなVB6初心者が開発言語PHPに取り組んでみて「VB6と違うな~」と感じた事をまとめてみたいと思います(^^)v

【VB6とPHPの違いで驚いたこと!】

  1. コンパイル不要
  2. 命令の最後に「;」が必要
  3. 変数の$マークが慣れない
  4. VisualStudioなくても開発できる
  5. そもそも動作環境がWindowsじゃなくてApache(アパッチ)

ざざんと5つほど書きました。
個別に見ていきたいと思います。

コンパイル不要

まず最初に驚いたのがコンパイル不要という点です!
コンパイルとは開発言語で書いたソースコードを、動作する時の形に先に変換しておく事を言います。
コンパイルの利点は動作する時に動作が速いことです。
デメリットはソースコードが間違っていると、そもそもコンパイルエラーというやっかいなのが起きて動作させる事も出来ない点です。
初心者にはこの「エラーが無い状態まで持って行く」のが結構大変で、つまづくことが多いです。

その点、コンパイルが不要なPHPは多少部分的にエラーがあっても、そこさえ通らなければエラーが起きないので、「とにかく書いて動かしたい!」という初心者にはとっつきやすいのかな~、と感じました。
まぁコンパイル不要とはいえ、エラーの発生箇所に行ったらエラーを吐いて止まってしまって、その原因を追うのが難しいというのはあるんですけどね(^^;
コンパイルありの言語はコンパイル時にそのエラー箇所を教えてくれますが、コンパイル不要な言語はエラー箇所を処理が通った時にエラーになるという。

でもまぁエラーが多少あっても動いてくれるのはPHPの取っ掛かりの時は非常に有り難かったです。
とりあえず処理を書いて先に進める事が出来ましたので(^^)w

命令の最後に「;」が必要

これは何もPHPだけの話ではないんでしょうが、処理の最後に付ける「;(セミコロン)」は、なかなかにやっかいでした。
VB6だと改行が処理の区切りになるんですが、PHPでは「;」が処理の区切りになります。
なので1行に複数の処理を書くことが出来たりするのですが、「1行1処理」というVB6ルールに慣れていた身には「;の付け忘れ」でのエラーが頻発し最初の頃は困りました(^^;

でも大抵の言語では「;」が処理の区切りになっているものが多いようですので、この書き方に慣れてしまった方が今後は良さそうです(^^)w

変数の$マークが慣れない

上記のセミコロンと並んで慣れなかったのが「$(ドルマーク)」を変数の頭に付けるというものでした。
変数名は意味のある英語で書いて表現するのですが「categoryname」とかって変数名付けて使う時に「$categoryname」と書かなくちゃいけないんですよね~(-_-;

見比べて見て下さい。

categoryname
$categoryname

ハンパなく見づらくないですか?ドルマーク付きは。
上と下で全然別物に見えるんですよね~、ソースコードを書いていると。
これは全然慣れなくて、よく$なしの変数を書いてしまって実行時にエラーで怒られまくりました(-_-;

見辛くて好きじゃないです。
$変数名の書き方。
皆さんは平気ですか?
ドル付き。

VisualStudioなくても開発できる

これは新鮮でした!
VB6はMicrosoftのVisualStudioというGUIツールを使わないと書いたりコンパイルしたり出来ないのですが、PHPは「メモ帳」で書いてFTPでアップしてサーバー上で動かすことが出来ます(^^)w

重たいVisualStudioを使わずともエディターでガシガシ開発できるのは有り難いです。
しかも結局色んな方に勧めて頂いた、ローカルマシン(PC)でのPHP開発環境であるXAMPPを使わずにWebサイト開発が終わりました(^^;
サブブログではXAMPP導入の報告を行っていましたが、「外部からWebサーバーに入られたりしないものなのか?」という不安を払拭できなかった(調べる暇も無かった)ので、使いませんでした。

しかもウイルスチェックソフトでチェックした時に、「ウイルスいるよ~」とかってXAMPPフォルダ内のファイルが1つ挙がっていたので、速攻でXAMPPのフォルダごと消し去りました。

XAMPP使った方がデバッグとかで変数の中身が見られたりと良いことも多いとは思うのですが、そんなのは一時的にprint()関数で出力して中身を見れば良いだけなので、エディターとレンタルサーバーでの開発で十分かな~、という感じです(^^;
本格的にPHPの開発をやっている人には怒られそうですが、個人で小さなWebサイトを作るくらいならGUI環境なくても充分かと思いました(^^;

そもそも動作環境がWindowsじゃなくてApache(アパッチ)

これも新鮮でした!
VB6は所詮Windows上でしか動かないプログラムでしたが、PHPはWebサーバー上で動きます。
今回の私の環境ではフリーのWebサーバーであるApache(アパッチ)上でPHPを動かしています。

VB6で作ったソフトはEXEファイルとなり、デスクトップ上で動きましたが、PHPはWebサーバー上に配置しブラウザ経由でしか動作を見ることが出来ません。
ブラウザに限定されますが、その分WindowsだけではなくMacやスマホ、携帯電話からでも見ることが出来、動作します。
この違いはやってて楽しかったですね~♪

見た目的な動作ではVB6の方が圧倒的に色んな事が出来ますが、PHPでも最低限のユーザーインターフェースを備えて動作させる事は出来たので面白かったです。
でも見た目もガリガリ動かすようなのをPHPで作ると「大変そうだな~」という感じがしました(^^;
ユーザーインターフェースはあくまでも、ブラウザベースの画面遷移中心のものとし、動的なユーザーインターフェースはもう少し勉強してから挑戦したいと思います(^-^)/

棒グラフや円グラフもPHPで描けるみたいなので、統計情報の表示等で使ったり出来たら楽しそうですね~♪

開発のハードルは低い

という感じでVB6とPHPを比較しつつ雑感を書くという、非常に時代錯誤な記事を書いてみましたが、皆さんいかがだったでしょうか?

PHPで初めてWebサイトを作ってみましたが、それなりの満足のいくものを作ることが出来ました。
ちょっとこのブログとは内容が違いすぎるので、作ったWebサイトの紹介はしませんが、ぱっと見はド素人が作ったとは気付かない感じだと思います(^^)w

PHPは世に出て長く経過した開発言語でもあるため、色々な方がソースコードを公開してくれていて、DBアクセス1つとっても色んな手法をすぐに見つけて自分の環境で試す事が出来るようになっています。

VB6で教科書(?)と本番環境で動いている難解なソースコードだけを頼りに開発していた頃と比べると、ソースコードの疑問点はインターネット上を探せば大抵紹介されていたり、便利な使い方のコードも掲載されていたりと、開発環境には隔世の感があります(- -;
インターネットの普及のお陰で、開発で困った時の先生が沢山増えたのは非常に有り難い感じがしました。

その昔のVB6は初心者に勧めるのもなかなか難しくアレでしたが、これだけネット上にサンプルコードが溢れた環境ならPHPでの開発も初心者の方が取り組んでもある程度なんとかなるのかな~、と思いました(^^)w

ド素人で「何かWebサイト作ってみたいな~」という方にはPHPがオススメかもしれません♪