PHP>Java>>>超えられない壁>>>ASP>Perl
実際はPerlを誰でも分るように劣化させたのがPHPだけどな PHPはJavaのオブジェクト指向を劣化させてとりこんでるしな。 PHPのほうが遥かに少ないコードで構築できると思うが。
例えばどんなの? んじゃjavaのほうが短く実現できるコードを挙げてみろよ http://www.thinkit.co.jp/free/compare/2/5/1.html
例えば、ここにあるようにまともなオブジェクト指向を使ったPHPのコードの
長さはたいしてJavaと変わらない。しかもJAVAのIDEには補完機能が
充実しているし、Javaの場合コードにミスしてもバッググラウンドでコンパイルして
すぐにミスを指摘してくれる。動作させてから間違いに気づいてデバッグする
時間を考えたら、PHPはJAVAにすら劣る。 ちなみにRubyでSingleton作ると
こんな感じになる。うん、さすがスクリプト言語、すっきりしてて気持ちいい。
PHPとは大違い
class Single
private_class_method :new
@@singleObject = nil
def Single.create
if @@singleObject == nil
@@singleObject = new
puts "インスタンスを生成しました。"
end
@@singleObject
end
end
# --- Main --- #
puts "Start."
obj1 = Single.create
obj2 = Single.create
if (obj1 == obj2)
puts "obj1とobj2は同じインスタンスです。"
else
puts "obj1とobj2は同じインスタンスではありません。"
end
puts "End." class Single; public_class_method :new end
obj3 = Single.new
raise "大変だ!obj3はobj1とは違うよ!" if obj1 != obj3
さすがですねwww 当たり前じゃん、Singletonは普通コンストラクタ使えないようにするんじゃね rubyだと、コンストラクタを直に呼び出すのを完全に禁止する手段がないということだよ。
ちなみにphpでシングルトンやる場合にしても、javaの真似してコンストラクタをprivateとかprotectedにする方法よりも、コンストラクタの中で2度目以降のインスタンス化に対して例外を投げる方法をとる方が良い面もある。 rubyだと、コンストラクタを直に呼び出すのを完全に禁止する手段がないということだよ。
ちなみにphpでシングルトンやる場合にしても、javaの真似してコンストラクタをprivateとかprotectedにする方法よりも、コンストラクタの中で2度目以降のインスタンス化に対して例外を投げる方法をとる方が良い面もある。 Rubyでもprivate指定にできるよ。
厳密にやろうと思えば >>20
どうやってやるの?
それは>>16のような再定義で破られない方法なの? ていうか上のコードでもやってるじゃん
private_class_method :newで
このクラスが持つnewクラスメソッドはクラスの外から呼べないよ >>16は>>15の続きなのだよ。
class Single
private_class_method :new
:
うんたらかんたら
end
Single.new # たしかにエラーだわな
class Single # 再び
public_class_method :new
end
Single.new # エラーじゃなくなるわな と思ったけど試してみたらエラーにならないな
まあ自前で実装するよりもRubyのライブラリにあるの使ったほうが確実かも ところが添付ライブラリのsingletonも・・・
require 'singleton'
class Single
include Singleton
public_class_method :new
end
Single.new # アカンやん PHP6あたりでRuby風のArray.eachやArray.collectメソッドを
追加してくるなんて事も、PHPならやりかねないからな。 >>29
オハヨー!!
∧∧ ∩
(`・ω・)/
⊂ ノ
(つノ
(ノ
___/(___
/ (___/
 ̄ ̄ ̄ ̄ ̄ ̄
PHPはセキュリティホール多すぎ
いい加減、安全なバージョンつくれよ PHP経験しかない人がスタンドアローンなプログラミングをやるとしたらC#ですか?
>>33
VB or Delphi or IronPython
それはそうと、俺はASP.NET >> Perl >> PHP >> Javaだな。 javaで作ってると
phpでも出来るよって言ってくるphp厨うぜええええええええええええ >>1
オヤスミ…
<⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
asp.netでは、データベースから取得したデータを
指定したデザインでテーブルでレンダリングできて、
さらに、戻る、次へ等のボタンも作ってくれる機能があるのですが、
こういう機能は、PHPなど他の技術にできるんですか?
あと、asp.netでは、アプリケーションサーバのIISがユーザのブラウザ毎に
最適なタグでレスポンスを返します。
他の技術でここまでできるのってあるんでしょうか?
asp.net以外知らないのに言うのもなんですが、asp.netが機能や
開発生産性ではぶっちぎりトップだと思います。
いやいやそんなことない、こんな機能があるといった反論あったら
お願いします。 perl、ASPは、システム上のコーディングができる便利
シェルスクリプトとしても利用できるじゃん。 >>41
フレームワーク製品でそういうのできるようにしているのがあるよ。 phpはホント良いよ。回りくどくなくて、ストレートだし。
くどくど書かないから開発費もその分安くなる。
他の言語は、単に専門商品というレッテルをつけて高く請け負う。 >>41
ASP.NETって、言語じゃねーし。
ユーザのブラウザ毎に最適なタグったって、
最新の携帯に対応しろよ。まったく使えねー上に不具合まで出るしまつじゃねーか。
それやってるのIISじゃねーし。 つまり あんま知ってないね。 PHP:ぴちぴち
JAVA:じゃぶじゃぶ
ASP:あ・・・そこ・・・・・・・ポゥ!!
Perl:真珠のような白いものが
夏の過ちってことだね Apache+PHP+MySQL+PhpEditorが
あれば、あとは白メシでいいよ。
http://www.google.co.jp/gwt/n?u=http://www.pythagoras.bz/index.php/default/searchresult?q=ikvm.net+java
すごい時代になったでしょ あえてロングパス
>>41
サーバーではJSONではいてクライアント(jQueryのグリッドライブラリなど)でやるのが今時
PHPでもPEARのGrid系ライブラリでできる。 >>50
ロングパスしかと受け取とりましたw
ひさびさに見たらレスがついていてびっくり。
クライアントサイドJavaScriptでやる方法もあるんですね。
Ajaxはデバッグとかクロスブラウザがめんどくさそうなので全部
asp.netのserver controlでやってました。
「今時」とありますがこれはASP.netでもあのテーブルやら
ナビゲーションボタンを自動生成してくれるcontrolを使用しない
場合が多いということですか?
あえていったんJSONではいてJavaScriptで処理するメリットが
なにかあるんでしょうか?
と、さらにロングパスで返してみる。 >>51
横からだが
> 「今時」とありますがこれはASP.netでもあのテーブルやら
> ナビゲーションボタンを自動生成してくれるcontrolを使用しない
> 場合が多いということですか?
あっちの開発の流行であってASP.NETには無関係
そもそも世の中は静的なページ(非Ajax的な意味で)の方がまだまだ主流
> あえていったんJSONではいてJavaScriptで処理するメリットが
> なにかあるんでしょうか?
別に・・・
AjaxでゴリゴリやりたいだけならASP.NET AJAXコントロールって選択肢もあるわけで Mono最強伝説
http://ja.wikipedia.org/wiki/XSP_(Web%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC) 同時アクセス数が200人未満を想定するならPHP
それ以上を想定するならJava 今時、ロードバランサで負荷分散させる場合多いのに
同時アクセス数が200人うんたらとかアフォな決め付けするやつもいるんだな memcached使わずにキャッシュは大丈夫ですか?
名前空間は大丈夫ですか?
言語バグは大丈夫ですか?
頻繁に変わる言語仕様は大丈夫ですか? >>60
phpでHadoopに該当するものある? 環境設定してhello worldするだけならPHPが簡単
それ以降はJavaが設計・性能・多人数開発で優位 どういう点で優位なのか具体的に教えてくれませんか? >>67
今までJavaで作っことあります?
一度経験してください。 最近のJavaを知らんのでしょう。
ユニットテストとかちゃんとやったら
PHPもRubyも全然効率よくないよ。 単なる「テンプレート目的」だったらPHPの方がいいよ。 ね、具体的に指摘できないでしょう?
事実が違うんじゃない?って言ってるんじゃなくて
分かってないのによく恥ずかしくもなくそんなこと書けるねってことだよ