Java VS PHP
■ このスレッドは過去ログ倉庫に格納されています
PHPの特徴(Javaと比較して) ・やっつけ仕事にはもっていこい ・アプリケーションスコープが存在しない ・マルチスレッドではなく、マルチプロセスで動作 ・シリアライズはバグがあるため、使用に耐えない ・マルチプロセスのためシングルトンは本来の意味をなさない ・OOPはオーバーヘッドをまねく ・コネクションプーリングがない ・インタプリタ方式のため配備が容易である反面、実行が緩慢 ・複雑なロジック構築には向かない ・大規模プロジェクトには向かない ・高いスキルをもつ技術者がいない(有能な技術者は他へ流れる) ・EJBに相当する機能がない ・技術者の給与が低い JavaしかできないとかPHPしかできないとかマジ終わってるわ。 業務システムとかはJavaじゃないと駄目だろうし スマホアプリのサーバーサイドAPIとかソーシャルアプリとかはPHPとか 適材適所だろ。 Webプログラマならどっちも使えるようにしとけよ。 あと、言語だけじゃなくて有名なフレームワークを一通り知っておかないと 意味ねーからな。 もっと言うと今時Webプログラマなんてどうよ? スマホだろ時代は。 おっしゃる通り。 スマホ時代になってきてPHPが廃れてきた。 本屋さんに行けばPHPの本が一昔まえに比べるとかなり減ったのに気づく。 代わりに増えてきたのがAndroid(Java)やObjective-C、ActionScript3.0など スマホアプリを開発できる言語を解説する本。 ほとんどサーバーサイドでしか使えないPHPはもうその時代ではない。 >Webプログラマならどっちも使えるようにしとけよ。 >あと、言語だけじゃなくて有名なフレームワークを一通り知っておかないと >意味ねーからな。 それただの土方だろw saas運営(サービスプロバイダ)ならJava一択。 Web, Android, Swingができるし、他のクライアントサイドは外注する。 「Perlで有名な小飼弾に暴言を吐いたキチガイw OSSコミュニティから物凄いパッシングw」 http://blog.livedoor.jp/dankogai/archives/51733482.html 北畠徹也氏が代表の「テラ・インターナショナル」がPerlを勝手に商標登録 >>この北畠って人は、ツイッターとかでも自殺するって言って話題になったり よく分からないNPOか何かに募金をしてくれってメールを数万人規模のMLに流したり それらは実はチョットした技術的ミスだって釈明してたりする人らしいね Tetsuya_K 北畠徹也 @dankogai の家に電話したら、「小飼弾は死にました」らしい。ざまみろ。ざまみろ。というか、死んだ方が社会にとって幸せ。以上。# どうでもいいが、jcode.plなんて簡単につくれるじゃろ。あんなので調子に乗るアホもどうかしてるぜ。 Tetsuya_K 北畠徹也 I compared my @klout with @dankogai, how does your @klout compare? klout.com/user/dankogai/… @Tetsuya_K に比べたら全く大したことねーな。大口叩く愚か者が。 コメントの一覧 「みんなおもしろいおもしろいいってるけど北畠さん完全にかわいそうな精神病の患者ですよね」 「コメント欄が病的で怖い。人格が分裂してる?」 「本当に何がしたかったんだろう・・・」 「無事取り消されたそうで。本当によかった。」 PHPしか使えない人はかわいそう。 これから生きる道がなくなってくる。 URL見てわかったんだけど、ここってPHP板だよね。 たかが言語如きで叩かないといられないってのはどういう? PHPユーザがバカだから仕方がない。 PHPはホビー(Notプログラマー)専用で収まっておくべし。 PHPは嫌いだけどCライクな(単純な) Web用スクリプトがあってもいいとは思う。 C++とLUAを組み合わせるみたいに Java・C#とインタプリタ言語の組み合わせがあってもいいはず。 PHPでシングルトンをJavaと同じ感覚で使っている大馬鹿者が現実にいたw 笑ったよ。おもいっきりアホなバグを出していた。 確かにコードは似ている。しかしメモリ空間が根本的に違うだろ。 PHPオンリーのみなさんもウェブ上に転がっているJavaの シングルトンの説明がそのままPHPで適用できると思わないでねw PHPはマルチスレッドではありませんのであまり意味ありません。 そのことは公式サイトにも載っているしね。 >メモリ空間 pythonやrubyだとどうなんだろ phpだけがおかしいのか? >>>>556 PHPが「おかしい」というより、それは言語の特性。 プロセスが複数生成され、それに伴って当然メモリ空間がバラバラになる。 サイト全体で共有できるメモリ空間がない。 シングルトンが本来の意味をもたないのは当たり前。 こういう特性だからPHPはJavaに比べると特にDBを使うサイトでは設計が難しい。 DBから取ってきたデータをキャッシュできないからDBへの負荷もかかる。 圧倒的に不利。OpenPNEやWordPressが激重なのも当然。 その特性(欠点)を補うためにはmemcachedという汎用の メモリキャッシュシステムを入れるとなんとかならないこともない。 しかし、言語レベルでサイト全体のメモリサポートがあるJavaと比べると 使い勝手が悪いのは間違いない。 >>557 どのみちJava単体じゃスケールアウトなんてできないんだから、 memcachedなどのシステムは必要になるだろ >>558 Java単体というどういう意味ですか? >>561 PHPは通常Apache HTTP Serverに寄生して動く。 で、サーバーサイドJavaはどうやって動かすのですか? 言語特性知ってれば外はPHP、内はJava 領域を大きく犯すようなシステムが必要ならば、場合によっては言語切り替えちゃえばいい。 くらいの話が普通に出てきそうなんだけど、 縛りプレイ好きが多いのか、片方の言語しか知らないのか、ただのバカなのか ってのが多いな。 >>562 だからPHPは「通常」・・・、って書いてるやん。 Apacheのシェアが60%もあるのに「通常」は変ですか? >>567 で、サーバーサイドJavaはどうやって動かすのですか? >>569 で、サーバーサイドJavaはどうやって動かすのですか? >>558 Java単体とは何を意味していますかw? >>572 サーバーはTomcatだけじゃないぞ! PHPはスタンドアロンが作れないからPHPでサーバーを作れないだろ。 Javaはスタンドアロンが作れるからJavaでサーバーが作れる。 Javaで作られたサーバーはTomcat(Apache), JBoss(Redhat), GlashFish(Oracle), WebSphere(IBM)などがある。 Apacheは使ってもいいし、使わなくてもいい。 >>558 この人、Javaのこと何もわかっていない・・・。 だからjavaとjspは違うって何度言ったら javaでまとめてタグ書いてみろよ Javaは時代遅れでキモい言語だからもう廃れるかと思いきや Androidで息を吹き返しやがった。 まぁでもサーバーサイドAPIはPHP、スマホ側はJavaもしくはObj-Cでいいや。 >>578 バカだなあ 自分の好きな言語を使えばいいだろ rubyやpythonならともかく、 perlから生えたような時代遅れの糞言語PHPがjavaを叩けるものかw でもウェブアプリでは使用率PHP>Javaなんだよな JavaEEのウェブサービスってどんなのがあるの? phpだとFacebookをはじめたくさんあるよね Javaは銀行の業務システムとかBtoB法人向けで使われてるからねー。 サイボウズとかにも使われてるけどURLに〜.phpみたいなのが付かないから 部外者には気付きにくい。 facebookはPHPをはじめに導入したことを激しく後悔しているはず かといって、facebookがjavaを採用してたらよかったかというと、そうとも思えない twitterはjavaで作り直しているらしいね。 金があって、それなりのレベルの技術者がいるうちはJavaもいいかもね >>582 >>587 facebookで使われている大規模分散システムはJava。 Apache Hadoop。 つまり基幹はC++とJava。 >>547 スマホは長くは続かないと思う。 スマホに変えて後悔してる層がいっぱいいる。 次の機種変ではガラケに変わるだろう。 どうかなぁ 今はちょっといろいろ不安定だしあれだけど ガラケーだって一時期はもっさりしたりしてたし スマホも洗練されてくるはず。 PHPってどこでセッション情報管理してんの? Javaでいうアプリサーバ(Tomcat等)にあたる仕事はapacheモジュールだけでやってるの? java使えばクライアントのMACアドレス取得できますか? 大昔にPHPがやたらと選ばれた理由は特別な設定なしに格安のレンタルサーバで動いたからだろう。 現代においてはGoogle App EngineやAWSがあるから、知識のない個人でもJava Servletを動作させることができる環境が整った。 GAEを例にあげるとEclipse用プラグインがあるため、Deploy(サーバにプログラムを設置)はボタン押すだけで終わり。 Datastoreはテーブル作成用のSQL書かなくてもMVCのModel定義を書くだけで自動的に作成される。 LAMP環境より簡単になった。 そして格安レンサバでは不可能なスケールアウトも容易。 ベンダロックインが怖いのならGAEのようなPaaSではなく、AWSなどのIaaSにすると良い。 サーバーサイドのプログラムを勉強しようと考えているのですが、 やはりJavaServletは選択しないほうがよく、 PHPかRubyを使うべきなのでしょうか? なんかWebではJAVAの批判をよく聞くので・・・ うーん。どうだろうね。きっちりしたシステム作るなら タイプセーフなJavaのほうがいいだろうけど。 なんとなく動いてればいいシステムはPHPがいいんじゃないかな。 なるほど−。 Javaのセキュリティが〜なんて聞くのですが、 別にそれはクリティカルなものではないって事ですか。 java自体はセーフなんだろけど その分webセキュリティの知識が甘いエンジニアが多い印象がある javaは学習コストが大きいから言語以外に目がいかないのかもしれない Javaはこれがデファクトというフレームワークがないから難しい。 テンプレートエンジンも乱立しすぎてワケワカメ。 Eclipseのバックアップがあるから何とかなっているが… 個人的にはPythonかRubyをオススメしたい PHPはちょっとあり得んな 最強はASP.NET MVCだ。異論は認めない。 あとはどんぐりの背比べ PHPはマルチスレッドプログラミングができないからな >>603 ちょっと考え方が違うと思う セキュリティの知識が甘くてもある程度の水準を保てるのがJavaで、 セキュリティの話になると一気に敷居が上がるPHPのほうがむしろ学習コストは大きい気がする。 Javaはインジェクション関係はかなり早期に克服されてたような テキストデータのHTMLエンコードとかSQLインジェクションとかね Java構築システム例 http://www.e-survey.go.jp/ いや、拡張子隠せやっていう ローカル公開のちょっとしたシステムならPHP それ以外はjava いつになったらJavaは=でクラスの公開プロパティに値を入れられる様になるの? いつになったらJavaは.変数名 だけで公開プロパティの値を取得できる様になるの? >>602 確かに騒がれたけど、あれってサーバサイドの話でしょ。(ちょっと自信ないけど・・) つまり、サーバに進入できなければ意味なし、or JSPにJavaロジック(Clientで動くAppletとか)埋めるような事しなければ。 オラクルDBならJAVA。どうせmysqlなんだしPHP。 Javaやってる奴はJavaしかしらない馬鹿が多い。 JacascriptとかAjax弱いのが多い。 >>617 そりゃ、JavaでGUIにしちゃった方が楽でいろいろできるからな。 >>618 いや、JavaはUI向け言語じゃないと思う。 作った人が悪いのかもしれないけど、VBチックだととっつきやすいのかもしれない。 Listnerイベントバカバカ作るのはすきじゃない、メモリリークもきにしないといけないし。 やっぱり、JavaScript,Ajaxが実装しやすい。 Aplet,Android言語として未完成って気がする。 >>619 Javaをよく知らないで、VBのやり方でやりたいならVBでやればいいだろ。 バックエンドはJava、フロントエンドはPHP。Web系開発案件はこれで決まりっぽいです。 >>622 同意。むりやりPHPねじ込む意味が無い。 改修時にアサインする難易度も変わってくる。 基本、Javaだろ。どんどん自動化してるし。 PHPもフレームワークかが一般的になって単価も上がってる。 同じレベルの予算がかかるようになれば、PHPを選択するメリットがまず無くなってく。 PHPの単価が上がっただど!あんなバカチョン言語、単価が下がってなんぼだろ。マジで終わるぞPHP! >>620 JavaとVBを比較してるだけ。 そもそも、開発者に一覧要素のどの部分が表示されているか分かるように、 tag要素、コントロールの見た目を少し変えるだけなのに、カスタムスタイルクラス を作って、全体をラッピングさせないといけないとか、クソ極まりない。Android Listnerイベントも生成、破棄させるとか、そんなの開発者側の必須ソースに 含ませるなと言いたい。 ただでさえ、業務系ではそれに特化したビジネスロジックは肥大化する。 未熟なんだよ、UI言語としては。HTML5&CSS3で充分。ネットゲームもほとんど、 WebViewのUIはHTML&JSだろ。不完全なんだよ、言語として。 ただ、PHPのメリットと聞かれると何一つ無い。全てJavaでカバーできるから。 単価ぐらいか、ほんと。 >>627 言語が自分の開発スタイルに合わせるべきだとは、斬新な考えだな。 なんでJavaの話がいきなりAndroidになったか知らないが、Javafxならcssで見た目だけ変えられるぞ。 >>628 >なんでJavaの話がいきなりAndroidになったか知らないが Androidのアプリ開発はJava。ただ違うのは一般的なWEBサーバサイドだけではなく、 UIも含まれているってこと。色々な言語を体験して、JavaのUI込みの開発をした場合の比較してるだけ。 自分もやってから話したらどうだ? JavaFXは俺も期待して少しかじったんだけど、結局Oracleが買収して、やめちゃったんだろ? でも、やっぱりJavaの悲願はUI込みのもの。 Appletがあまり浸透しないように、技術者から見たらまだまだなんだよね。 作れるっちゃ作れるんだけど、細かいカスタマイズなど技術者任せのロジック・概念が多すぎる。 その結果、ソースが肥大化しちゃう。 >>629 言語がJavaなだけで、VMもAPIもJavaと違う部分が多いし、UIに関してはまったく独自。開発したことあるならだ誰でもわかる話。聞きかじっただけだな。 FXを止めたという話ははじめて聞いた。開発のための会社が買収されたから滞ってるだけだと思ってた。 なんでもAPIに頼らないとできない技術者は要らないな。というか、技術者なら自分で作るから、技術者ですらない。 >>630 >FXを止めたという話ははじめて聞いた。開発のための会社が買収されたから滞ってるだけだと思ってた。 たぶん、自分も含め、多くのJava技術者も期待してたと思う。 できばえも充分だと思っていた矢先だけに正直がっかりした。 去年か一昨年のJavaOneのフォーマルで発表済みのはず。 でも、もったいないからって、どこかの団体継承する、しないなんて話もあったような。 ほんともったいないし、目指す方向性も間違っていなかったと思う。 なんと言っても、スマホが登場して、クロスブラウザ&多端末対応が必要とされだしていた 矢先で、UIもJavaの理念のJVM上であれば、プラットフォームは問わず動作する環境ができれば ほんとに凄いと思った。。 >>630 >なんでもAPIに頼らないとできない技術者は要らないな。というか、技術者なら自分で作るから、技術者ですらない。 こういう考えの技術者が多いからJavaの開発効率が悪いって言われてるんだろうな。 口だけでなかなか終わらない、いいから早く作れよっていつも思う。 会社はJavaが好きで取り入れてるんじゃない、Javaしかないから大金を投資してる。 業務を効率化、売上げ・収益に貢献しているから投資してるんだって事。 趣味でJava好きなら自分の家で休日にでもいじってろって。 開発効率を無視したシステムなんて会社に寄与しない。昨今良く効くようになったアジャイル開発とか、求められるのは可読性(保守運用)と開発効率。 JSなら簡単に自作できるものが、Javaでは大きくなる。 これは、言語的違いによるものだろ。 まぁ、この議題の論点に戻る(Java VS PHP)と、PHPはこんな話もできないわけで言語としての拡張性もJavaの信頼性も無い。 普通に考えてJava。一時的で安くって言うならPHPでいいんじゃない? >>632 その作ったものをライブラリ化して公開するという、技術力とコミュニケーション能力が貴方にはないんですね。 大量に公開されている、ライブラリを利用することすらもできないなんて。 >>633 そういう自分はどうなんだ? ライブラリはあらゆるものを使わせてもらってるよ。SAStruts,Doma,DBFlute,S2JDBC,s2Chronos,jsonoic,JCS,jQuery,Dojo,DWR,数えきれないぐらいにね。 ある意味それらを使いこなせないと技術者といえない。ありがたく思ってるよ。でも、そんなに俺はJavaに惚れた技術者じゃない、会社にシステムがどう寄与するかを常に考えようとしてるんで。 言語なんて流行りもんだから。新しい言語がシェアを占めれば、仕事から追い出され、それこそJavaなんて趣味の家でやってくれって言われるようになるだろう。 大規模システム、長期間の運用(Java技術者のアサイン可否)、負荷分散、あらゆる点からJavaが選択されてるだけ(資金に余裕のあるところは)。 それに加え、これから必ずビッグデータ対応も含まれる。 DBだけのバックエンドで吸収できるかは不安だが、PHPもこれに対して何か手段があるだろうか? >>634 まずライブラリ管理ツールが充実してからだろ。してないプラットホームでライブラリ使いまくるとか、管理のことをまったく考えていない。 そっか、下請けは流行りに乗るしかないんだね。一次請けは自分で最適な構成を決めるから。場合によってはlispだって選ぶ。 >>635 下請けをバカにしてるの? 横からスマンが貴方の言葉には棘があり過ぎると思います。 せっかく良い話してるんだから、もう少し相手の事を考えて書き込みしてくれると助かります。 >>636 どう受け取るかは自由だが、相手を喜ばすためにレスしてるわけではない。 >>637 貴方のためのスレでもない認識はありますか? スレ違いなので多くは語りませんが、ごくあたりまえの事を書いたまでです。 これ以上はご自身で考えてみてください。 >>638 2chに何を期待しているんだ。せめて本スレ行け。 こんなスレがあったんだな。 PHPとJavaを比較する場合、Appサーバがフリーで提供されてるかどうかだろ。 PHPはApacheに頼り切りでWebサーバに依存してしまうため分散化がしにくい、 対してJavaはtomcatは基本Appサーバだから分散化がしやすい。 パフォーマンス面ではPHPは所詮スクリプト言語だからどう頑張ってもJavaには敵わない。 コード云々以前にアーキテクチャに違いがある。 もっともWebサーバにNginxなどを使えばPHPでも分散化出来るけど、 分散化するような状況になるのはパフォーマンスが欲しい場合なわけで、 そうなるとPHPじゃなくてJavaにしろよという話になる。 ここまでだとJavaの方が優れているように聞こえるが、 Javaの方がPHPよりも開発工数が掛かるのはどうしようもなく避けがたく、 小規模システムをJavaで作るのは愚の骨頂。 手っ取り早く小規模システム作るならPHP、ある程度の規模になったらJava。 それぞれ得意分野が異なり活躍する土俵が違うのだから、 それを比較したところで意味がない。 phpと方がウェブデザイナーから来た奴多くて工数安いからな。 >>641 その認識も大きな間違い。Java技術者で現場に入った事がある人なら分かるが、無駄な事が多すぎる。 正確に言うと大規模開発は人員が必要と技術も知識も無い、PM&責任者の判断のせい。 営業の人間が唄う「開発効率XX%改善」とかパフォーマンスアップ、とかに踊らされてるだけ。 JUnit,Jenkince,GitHub,SVN,Redmine,BRMSとか、ほとんどアプリ外やテストツール。 こんなのに工数かけなければいけないし、初めてでは覚えなくちゃいけない。この工数も馬鹿にならない、人為ミスが発生したらそれをルールどおりに直す工数も発生する。 多くのJava技術者は感じてるんじゃないですか、アホですわ。 仕様書も意味の薄いユースケース図やクラス図。誰が見るんだよってレベルのドキュメント化(実際、一旦運用に入ったら誰も見ない。頻繁に変わるし)。 そういう意味では、PHPの現場は工数の安さもあるが、アプリに集中、動作品に特化した開発スタイルが一般的。 俺が技術的ツール、概念で営業の人間の思惑無しに簡易でシステムに寄与すると感じたのは、SAStruts(感動した)、メモリキャッシュ、Ajaxぐらい。あとはほとんど嘘。 PHPの開発概念は「正」だと思う。この概念をJavaに持ち込めば、成果品を単純に比較すればソース量もそう変わらないんだよ。 もちろん、スピードもね。 >>635 >まずライブラリ管理ツールが充実してからだろ。してないプラットホームでライブラリ使いまくるとか、管理のことをまったく考えていない。 >そっか、下請けは流行りに乗るしかないんだね。一次請けは自分で最適な構成を決めるから。場合によってはlispだって選ぶ。 ほんとにJavaをかじった技術者なのか?まさしく、643で書いた「技術も知識も無い、PM&責任者の判断」の考え。 営業者やツールの紹介文だけ読んで、鵜呑みにして予算だけ入れて、開発効率を著しく落としている奴の考え。 俺が発注元だったら、絶対開発依頼したくない典型。開発が始まって納期に間に合わず、予算を吸い上げようとする、ヒルみたいな奴ら。 (一旦開発が始まったら未完にできない発注もとの弱みに付け入る開発会社。ごまんといるよな) 自分らは働かず、マージンだけを取る人材派遣の営業にも言える事だけどな。 技術屋なんて何かの言語で丸々システムを作れる、構成・負荷を想定できればとりあえずはOKだと思う。 Javaにしろ、PHPにしろ、どっぷり浸かって、これから定年までこれに頼り切るんだと思う方がリスクがあると思うよ。 職人のような大工と違い、コンピュータの中の世界。プログラマは彼らのような職人にはなれない。 パソコンが不要な業種もごまんとある。システムを通して、どうその企業の利益に貢献できるか、業務を改善できるか、 その考えは常に持っていないといけない。 (俺のようなフリーのシステム屋にとってはね。会社でのうのうと使いまわされ、幸せと感じてるんならそれも結構。だが、一つに依存しすぎてもその会社に突然死が訪れるかもしれないのは覚悟は持っていた方が良い) Javaの業界の現状は、営業やコンサルの口車に載せられすぎだと思う。 まぁ、彼らも生きる為に必死に考えて、笑顔を振りまいているんだろうけど、尊敬は一生できない業態だわな。 まぁ、JavaはWEBだけじゃなく、冷蔵庫やバイオ、人工知能にもフィールドは無限にある。 PHPはWEBで終わり。だろ? >>644 要点をまとめられない開発者の話は聞くまでもない。帰れ。と、俺が発注元だったら言う。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる