競馬鹿ねっと
 
since
2000.1.1〜
ヤエノムテキ
http://www.keibaka.net
メールはこちら メールはアイコンをクリック!

競馬
 ┣ トップページ
 ┣ 開発日誌とか♪
 ┗ 熱い競馬漫画
  SouKaSILa
  NKV

 
Developer
 ◆ 過去の遺物
 ◆ KBN_IPAT5
 ◆ KBN_IPAT4 08/06/01
 ◆ PHP5
 ┣ PHPの優位性
 ┣ ガベージコレクタ
 ┣ 値渡しと参照渡し
 ┃┣ Cサンプル
 ┃┗ PHPサンプル
 ◆ オープンソース
 ┣ KBN_AIBO
 ┃┗ document
 ┗ IIS_AUTH_ADO
 ◆ 無償サポート
 
その他
 ◆ 映画とか 06/05/10
 ◆ 北斗の拳 06/04/04
 
PC
 ◆ SOTEC WL7160A
 
ウォッチリンク
 ◆ スラッシュドット
 ◆ ボトムズ
 
利用させて頂いた順に並んでいます。
XREA
競馬鹿ねっとはXREAを利用して運営されています。
Yuko's Gallery
Yuko's Gallery様のフリー画像を利用させて頂いてます。
Aomusi'sWorld
Aomusi'sWorld様のフリー画像を利用させて頂いてます。
 
PHPの優位性 最終更新日:2006.01.28



  他の言語と比較してPHPが優れている点とは?
・遅くはない
・簡単である
・保守性が高い


実行速度について

  本来、Webアプリケーションとは実行速度が最優先事項であるべきです。
例えばロードバランサやIPフィルターをJavaやC#で作りましょうと提案する人はいませんよね?
Webアプリケーション自体も負荷が集中するクリティカルな部分に違いはありません。
実行速度という観点で言えば、IISのISAPIアプリケーションが飛びぬけています。
ですが、難しすぎて作れる人間がいなかったりしますw
Windowsはセキュアでないと間違った常識を植え付けられた人間が多いのは悲しい事実です。
IISは自力でISAPIフィルターを記述すれば自前でセキュリティ対策も可能です。
脱線しましたが、ISAPIアプリケーションはDLLです。
IISのメモリ空間上で動作しますので、HelloWorld!ならディスクIOが無いので静的HTMLより早いですw
Apacheのソースを変更してこのURLならHelloWorld!を出力ってやるようなもんですね。

で、本題のPHPですがISAPIアプリ以外は団子状態だと思います。
試した訳ではありませんので想像ですが、こんな感じじゃないですか?
ISAPIアプリ > PHPA,ASP+,mod_perl,Java(AP=Web) > c(CGI) > PHP,ASP > PHP(CGI),perl(CGI) > Java(Web+AP)

一口にPHPと言っても、4種類はあると考えて下さい。
(名前は適当に付けただけですので一般名詞ではありません)
CGI Webサーバから別プログラムを起動する仕組みです。
プログラム起動のオーバヘッドが問題視され今となっては古い仕組みです。
PHP 一般的にいうPHPとはこの部分を指します。
スタティック,DSOと更に細分化できますが、気にしない。
Webサーバのメモリ空間で動作します。
PHP' ZendOptimizerによる最適化コンパイル版で実行速度アップ!
PHPA コンパイルキャシュによりリコンパイルの時間が無くなり速度アップ!

最速の技術でも作れる人間がいなければ流行らないどころか廃れて消滅しますw
簡単で遅くはない!この点に関してPHPは有利であると言えます。


生産性と保守性

  プログラム開発に携わる上で最も大事な事は、保守作業です。
24時間動作するwebシステムにおいて、作りっぱなしで放置という事はまずありません。
世間で言うオブジェクト指向の利点とは、実はwebシステム運用には向いてなかったりw
MVCモデルなど遅い上にプログラムの可読性を犠牲にしたパターンはPHPではお奨めで無いかもしれません。

1.クライアントやエンドユーザからの要望による改変が頻繁に発生する。
→例えば納品の3ヵ月後に修正が入った場合、通常は別の開発に携わっています。
 その時には記憶が薄れていますから可読性が低いとかなり困ります。
 自分にとって可読性の高いプログラミングが出来るのはPHPの有利な点です。
 (構造化プログラミング〜オブジェクト指向までお好きにどうぞ)

2.緊急を要する対応が必要な事態が発生する。
→担当者が常に会社で作業している訳ではありません。
 場合によっては他社に出向していたり、以前の開発環境が無くなっていたりします。
 そんな時に固有のIDEを必要とするJavaや.NETでは対応できません。
 PHPに限らずテキストエディタさえあれば対応できるスクリプト言語は有利であると言えます。
 PHPが素敵だと思う一番の理由はこれであり、テキストエディタで対応できる手段は用意しておくべきだと思います。

業務系(非24時間イントラ)→Java, .NET
B2B,B2C→CGI ===> PHPへシフト
Javaや.NETのサイトを見かける事が少ないのは、既にこういう住み分けが出来ているのかしら???


想像力を養える

  PHPはc言語の関数そのままの物が多く、昨今の言語としてはかなり低レベルです。
自分で低レベルなオブジェクトを構築するという作業を要するレガシーな言語と言えます。
しかし、これはJavaや.NETでオブジェクトとして提供されている機能が内部でどのような事を行っているのか想像する手助けになります。
難しい部分はオブジェクトの内部に内包して提供されるので、技術者のレベルが年々低下していくのは仕方が無い事です。
例えばsocket系の命令を使って自分でオブジェクトを作るとTCPによる通信が一回のやりとりでは無い事や通信プロトコルの学習でき、自然と通信系オブジェクトの内部で行われている事が想像できるようになります。



Copyright 競馬鹿ねっと