Java VS PHP
■ このスレッドは過去ログ倉庫に格納されています
00011
2007/04/27(金) 21:21:58ID:U5tJyA2z0209nobodyさん
2009/10/17(土) 16:28:52ID:0DJi7zUm3回読んだ。
ようするに純粋なOOP言語にJavaは含まれるがPHPは論外であり
Perlより下の扱いというか圏外。
邪道、外道、ハリボテ、バッタモンである。
0210nobodyさん
2009/10/17(土) 17:54:55ID:???何それ?
209の考え方の方が邪道、外道、ハリボテ、バッタモンじゃん
0212nobodyさん
2009/10/18(日) 11:27:03ID:xxwa2wCTとか
echo <-----shell
とか他の言語体系からパクって来てるの、恥ずかしくないのかな。
print_r("件数は$kennsuuです");
は
print_r("件数は".$kennsuu."です");
にしてくれんかな〜〜違和感がある。
風船騒ぎの子供みたいなのがPHP作ったんじゃないかな。
0213nobodyさん
2009/10/18(日) 11:39:40ID:xxwa2wCTところがこれが「連想配列」でJavaのMapみたいなもの。
自然言語のイメージと食い違っていて誤解を生じる。
Mapと配列は分けてくれ。
配列の発展形として当然Listクラスくらいないと困るけどないらしい。
ボロボロなのでは?書いてて苦痛じゃないですか?
0214nobodyさん
2009/10/18(日) 11:43:28ID:???0215nobodyさん
2009/10/18(日) 12:13:46ID:xxwa2wCTJavaのListにはキーがない。ただオブジェクトが並べて入っている。
キーを使わないで並びのオフセット値で取り出したり入れ替えたりするのに使う。PHPではできない。
PHPのlist()はarray()からキーで取った値を取り出す。キーなんかつけるなよ!
PHP作者はMapとListと配列が頭の中でカオス状態になっている。もっと頭脳明晰じゃないと言語作る資格がない。
0216nobodyさん
2009/10/18(日) 12:47:45ID:???PHPでもキーを指定しなければ並び順になるのでは?
>PHPのlist()はarray()からキーで取った値を取り出す。
よく分からない。list関数にキーは関係ないと思うが。
0217nobodyさん
2009/10/18(日) 13:20:25ID:xxwa2wCTだからね〜そもそもarrayにキーの概念が混じってるのがトンチンカンなの。
>PHPのlist()はarray()からキーで取った値を取り出す。
よく分からない。list関数にキーは関係ないと思うが。
http://www.scollabo.com/banban/php/php_05.html
<?php
$fruit = array("Apple" => "りんご", "Orange" => "みかん",
"Grape" => "ぶどう");
while(list ($key, $val) = each($fruit)) {
print ("インデックスの $key は、$val です<br>\n");
}
?>
という例文見た時ヘンだと思った。諸悪の根源はPHPを最初に作ったとき「配列」と「Map」がarray()でごちゃ混ぜになっていて
別クラスになっていなかったことだ。この区別をしないのはおバカだろう。
0218nobodyさん
2009/10/18(日) 14:10:03ID:???その判断が正解だったかはどうかは別として。
だんだん厳密な方向に進んでいるから、最初の作者も今は後悔しているかもしらん。
0219nobodyさん
2009/10/18(日) 15:38:21ID:???PHPはスカラー値の宣言が無いのを見てもわかる。これは意図的なものだ。そして今時でもある。
多態性を持たせるために可能な限り型を区別しないのだ。
昔は変数名に型名をつけてたりしたのを知らないか?
OOP以前は型を厳密に区別するのが保守性や生産性に優れてると考えられてたんだ。
0220nobodyさん
2009/10/18(日) 16:56:34ID:xxwa2wCTOOP以前は型を厳密に区別するのが保守性や生産性に優れてると考えられてたんだ。
これは異なことをおっしゃる!
今も昔も将来もOOPは型に厳密なのが本筋ですよ!C++は特にそう。Javaもそう。
型を動的にしたOOPはRubyがあるけど。
型の扱いがユルイのはコーディングのミスと実行時エラーのもと。
0221nobodyさん
2009/10/18(日) 20:33:19ID:???216だけど
>だからね〜そもそもarrayにキーの概念が混じってるのがトンチンカンなの。
なんで?arrayにキーの概念が混じっているとなんでだめなの?
215で「PHPではできない」と言ったことに対して「できるよ」と言ったのにさっきから話題逸らしてるよね。
>という例文見た時ヘンだと思った。
これも意味がわからない。ただの主観で語ってるじゃないか。
別にヘンだと思わないで使っている人が多数。
どの辺がヘンなの?
別に古い考え方に凝り固まっている人と評価して切り捨てたりはしないけど
せめて論理的に主張できなくちゃ説得力がないと思いますよ
0222nobodyさん
2009/10/18(日) 20:43:56ID:???ソレを望むなど、気がふれてるとしか思えない。
0223nobodyさん
2009/10/18(日) 22:14:19ID:xxwa2wCTPHPを否定する理由は前にも書いたが
異なる概念は異なるものとしてハッキリと識別すべきであるにもかかわらず
PHP作者はMapとListと配列が頭の中でカオス状態になっている
ということ。
list()は最初リストを作る関数のように思ったが、arrayの中身を取り出すものだったらしい。
こういう関数のネーミングもヘンだ。PHP作者が英語話せるかどうかが疑問だ。
おっとヘンというと主観になるのか〜。「不適切」と言い換えよう。
0224nobodyさん
2009/10/18(日) 23:17:19ID:???0226nobodyさん
2009/10/18(日) 23:33:22ID:???批判に混じるからややこしくなるんだな。
0227nobodyさん
2009/10/18(日) 23:38:48ID:xxwa2wCTEcmaScriptについては何も言ってないよ。JavaScriptのことは「これでよい」と思う。
>>225
三角形と四角形と円くらいの違いがあれば区別するのが自然。
0228nobodyさん
2009/10/18(日) 23:40:57ID:???なんで 三角形と四角形を 区別するのが自然なんですか?
一緒にする体系が存在することがそんなに問題ですか?
0229nobodyさん
2009/10/19(月) 00:18:41ID:qb+KD3JaMapはキーで値とかオブジェクトにアクセスする。
Listと配列はオフセットでアクセスする。
Map(arrayを連想配列で使う場合)はキーは違ってないといけないし1つのキーに対する値は1つ。
Listと配列は要素として全く同じものが入っていてもかまわない。
Listは要素が可変だが配列は要素数が固定。
こんなに違うのを一緒くたにすると使えなくなる。
0230nobodyさん
2009/10/19(月) 00:36:43ID:???>異なる概念は異なるものとしてハッキリと識別すべきであるにもかかわらず
それはJava脳
>こういう関数のネーミングもヘンだ
これもJava脳
0231nobodyさん
2009/10/19(月) 00:50:21ID:???コンパイラに向いてるがPGが喜ぶ話ではない。
配列の個数を言語レベルで制限して生産性や保守性が上がるシーンは限られてる
その3つをはん化して区別なく使えるようにした方がより使いやすい。
PHPの配列が弱かったのはそんな事でなくオブジェクトとしての振る舞いが出来なかった事だ。
だがそれはもう解消されイテレータも持てるようになった。
0232nobodyさん
2009/10/19(月) 13:25:48ID:???http://d.hatena.ne.jp/kwatch/20080305/1204743236
0233nobodyさん
2009/10/19(月) 13:27:33ID:???Pythonの先祖は教育用だったが
Python自体は教育用に設計されたわけじゃない。
毎度のことながらWikipediaは間違いだらけだ。
0235nobodyさん
2009/10/19(月) 15:47:15ID:qb+KD3Ja$記号がついてないと変数と認識できないようなへぼい解析しかできない処理系は
カンベンしてもらいたい。
数学の式において変数にはアルファベットしかない。
$が氾濫してると見た目が醜悪で可読性が下がる。抽象性が下がって本質が見えなくなる。
0236nobodyさん
2009/10/19(月) 15:54:18ID:???0237nobodyさん
2009/10/19(月) 16:09:19ID:qb+KD3Ja0240nobodyさん
2009/10/20(火) 15:41:52ID:???0241nobodyさん
2009/10/20(火) 16:26:40ID:???0243nobodyさん
2009/10/20(火) 17:00:28ID:???最低限の設定がいるだけ
つうか"無い"は嘘だろ
0244nobodyさん
2009/10/20(火) 19:09:00ID:???「Play framework 1.0」
http://www.playframework.org/
動画を見ると非常にすばらしい
モデル、ビュー、コントローラーの変更がリアルタイムに反映させる。
0245nobodyさん
2009/10/21(水) 01:18:57ID:???0246nobodyさん
2009/10/21(水) 10:57:34ID:53r8Iq7N携帯電話のNOKIAのスマートフォンのOSはシンビアンだ(個人的には嫌いだ)が
これはC++でコーディングする。
iPhoneもC++、GooglePhoneはJava。
速くて資源を節約する(軽い)ためこの言語を採用した。型にうるさい。
型にうるさいのは「冗長」とは言わないよ。
速く軽くするための必然だ。
型がゆるいのは重くて遅い。物理的にそうなる。
0247nobodyさん
2009/10/21(水) 11:01:00ID:???0248nobodyさん
2009/10/21(水) 11:47:17ID:53r8Iq7N$this->hensuu = 1;
と書かないといけない。
Javaでは
hensuu = 1;
でよい。どっちが冗長だろうか。
0249nobodyさん
2009/10/21(水) 12:00:48ID:???0250nobodyさん
2009/10/21(水) 12:06:18ID:53r8Iq7Nhttp://www.scollabo.com/banban/php/php_11.html
の例を見ると同名のローカル変数がないけど$this->
になっている。例が間違っているのか、そうでないのかどっちだろう。
0251nobodyさん
2009/10/21(水) 12:08:17ID:???それを言ったら、JavaでWebページを出力する時とか、ファイルの入出力する時とか、DBに接続する時とか、それはもう・・・
0255nobodyさん
2009/10/21(水) 12:28:50ID:???PHPは簡単だ軽い何て始めた人達も結局プログラミングの知識や
テクニックが必要になるのはもう分かり切っている。
0256nobodyさん
2009/10/21(水) 12:29:09ID:53r8Iq7N>$thisを撃つ必要があるかないかって本質的な問題?
それを言ったら、JavaでWebページを出力する時とか、ファイルの入出力する時とか、DBに接続する時とか、それはもう・・・
Javaではローカルかパラメータで同名がある場合以外はthisはいらない。
Webページ出力、ファイル入出力、DB接続もthisの出番があるとは思えない。StrutsのFormのことならそれはJavaの責任ではなくStrutsの責任。Strutsを改造すればよい。
http://www.php.net/manual/ja/language.oop5.basic.php
関数のコールにもthisが必要なのか。タイピング量が増えて疲れる。
0257nobodyさん
2009/10/21(水) 12:33:50ID:???幅が持てるってのがポイントだ
仕様増えた文の学習を強要されるわけじゃない。レンサバから数万台のクラスターまで対応できる言語になったのだ。
0258nobodyさん
2009/10/21(水) 12:51:36ID:???昔のコードをPHP5.3で動かすとdeprecatedだらけになる。
PHP6になったら動かなくなるぞぉぞぉー
なんくるないさ
0260nobodyさん
2009/10/21(水) 13:09:12ID:???Eclipse+Javaで行きたまえ。
Javaがタイプ量が多すぎると思っている諸君は、
Eclipseのコード補完に驚くだろう。
Javaの世界では、だれも今時、しこしこ秀丸やvim等のエディターでコードを
書くやつはいない。PHP諸君の間ではいまだに結構いると思うが...
0262nobodyさん
2009/10/21(水) 14:36:07ID:???PHP使いもだいぶEclipseやNetbeansを使い始めているぞ。
Zend Studioも結構いるが何しろ有料で高いからな。
0263nobodyさん
2009/10/21(水) 16:01:07ID:???あれだ、コマンド一発で大量の設定ファイル、下書きコードが自動で作成されます。でそれを便利だとありがたがってるやつ
最初がそもそもおかしいからそういうのがいるようになる。前提が不便すぎるのだ。
0264nobodyさん
2009/10/21(水) 16:15:15ID:53r8Iq7Nあれだ、コマンド一発で大量の設定ファイル、下書きコードが自動で作成されます。でそれを便利だとありがたがってるやつ
そういうのがJavaのフレームワークにはありがちだ。そういうのは確かによくない。
hibernateはクソだ。
しかしそれはJavaの責任ではない。そういうフレームワークを使わなければいいのだ。
Servletベースにすれば大量の設定ファイルは必要ない。server.xmlとweb.xmlだけくらいだ。
(これはWebサーバー使う限りどの言語でも必要だ。)
0266nobodyさん
2009/10/21(水) 18:22:33ID:???0268nobodyさん
2009/10/21(水) 19:25:30ID:???cakePHPにしろsymfonyにしろフレームワークを使うとなると、
必要になるんじゃないのかなーーー?
まだ使っていないと思うけど
0269nobodyさん
2009/10/21(水) 19:58:46ID:???言語的に不十分なPHP4であれだけきっちり書いてる。
ZSは更にちゃんとしてる
0270nobodyさん
2009/10/21(水) 20:01:05ID:???Zend Framework
0271nobodyさん
2009/10/21(水) 21:20:24ID:???PHPのバージョンアップの流れを考えろや。
これからはフレームワークが必須だろうが。
>>262
cakePHP + NetBeansで快適さ
Eclipse(PDT)よりコード補完がベターだ
0272nobodyさん
2009/10/22(木) 08:12:06ID:???CAKE別にいいと思うがあんな密結合でスケールアウト出来ないのは"これから"じゃないと思うぞ。PHP4でOOPとは言い難いし。書きなぐり用ならOK
0273nobodyさん
2009/10/22(木) 11:26:27ID:???スクリーンキャストを見たけど、確かにシンプルだね
いわばJava版LL風WEBフレームワークといった感じ。
ちょっとマニュアルを見て見たがcakePHPに似ている。
0274nobodyさん
2009/10/22(木) 15:30:20ID:gb8cnyBfどこが難しいのかさっぱりわからん。
0275nobodyさん
2009/10/22(木) 15:40:34ID:gb8cnyBfhttp://ja.wikipedia.org/wiki/%E8%BB%BD%E9%87%8F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E
>英語圏におけるLightweight languages
英語版Wikipediaによれば、Lightweight Languagesは
計算機リソースを多くは消費しないという意味で軽量(Lightweight)であり、
C言語などが例としてあげられている。
つまり、プログラマ負担の軽い言語を意味しない。
よって、日本における軽量プログラミング言語(Lightweight Languages)と
欧米におけるLightweight Languagesは、その「軽量」の意味においてまったく異なるものであり、
英語でPerlやJavaScript、PHPを指し示す場合は、Scripting languagesと表現したほうが妥当であると考えられる。
つまり日本人のLightweightLanguageは和製英語であり、西洋人には通じないので注意しましょう。
0276nobodyさん
2009/10/22(木) 18:19:53ID:???0278nobodyさん
2009/10/23(金) 15:17:12ID:KbUwE6+sLBL(Lightweight Brain Language)
に改称したらいい。
0279nobodyさん
2009/10/23(金) 16:53:41ID:???0280nobodyさん
2009/10/24(土) 23:27:06ID:+XTO6QU3では?
0281nobodyさん
2010/10/18(月) 11:57:23ID:???トムキャットが無難なの?
0282nobodyさん
2010/10/19(火) 21:45:06ID:???そんなことより一番の恩恵はjvmの進化。
起動時以外はネイティブかそれ以上のパフォーマンスを得られる。
0283nobodyさん
2010/11/05(金) 16:32:15ID:???0284nobodyさん
2011/04/22(金) 23:14:59.64ID:itzBhGqMhttp://ja.wikipedia.org/wiki/XSP_(Web%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC)
0285nobodyさん
2011/05/08(日) 13:36:25.90ID:???プロがフレームワーク使いこなして中規模のwebアプリバリバリ書いてるとこ見たことないだろ
相当キレイに早くwebアプリが作れるし可読性も高くてメンテナンスもしやすい
javaでもプロが書けば同じだから、結局は言語仕様ってより使いこなすプログラマの質によるんだよ
0286nobodyさん
2011/05/10(火) 23:51:21.69ID:???0287nobodyさん
2011/05/11(水) 00:01:08.69ID:???0288nobodyさん
2011/06/24(金) 07:11:45.48ID:???0289nobodyさん
2011/07/02(土) 02:02:27.30ID:AJLe5hIa0290nobodyさん
2011/07/03(日) 03:43:20.00ID:???0291nobodyさん
2011/07/21(木) 13:59:52.51ID:???俺はPHPもJavaもできるがもうWebの時代は終わりだろ。
終わりってゆーか、スマホっていうビックウェーブが来てて
時代はもうそっちだよ。
だからこれからのプログラマは、JavaかObjective-Cができないと駄目だ。
Windows Phoneのことも考えればC#もできるようにしておいた方がいい。
もっと言うとC/C++もできるようにしておいた方がいい。
時代に取り残されたくなければ今のうちに勉強するんだな。
0292nobodyさん
2011/07/21(木) 14:54:44.40ID:???不要になるわけじゃないし。
自分はJavaとObjective-C使えるから別にどうでもいいけど。
0293nobodyさん
2011/07/21(木) 17:26:50.04ID:???サーバサイドがなくなるとは言ってないが、
メインストリームからは外れるだろ。
汎用機からオープン系に流れたように
Webからスマホに主軸は流れるんだよ。
0294nobodyさん
2011/07/22(金) 02:14:06.32ID:???データの蓄積、重い処理はサーバーに投げることになる
0295nobodyさん
2011/07/22(金) 13:58:34.10ID:???0296nobodyさん
2011/07/23(土) 00:11:27.64ID:???中古で6万円で買ったよ。
中古にしては手の良い中古でかなり大満足だ。
Windowsでも開発できるようにしてほしかったがしょうがねぇ。
0297nobodyさん
2011/07/25(月) 03:14:51.32ID:???今年からついにプログラミングの基礎はPython使って教えることになった。
0298nobodyさん
2011/08/23(火) 22:31:48.42ID:???0301nobodyさん
2011/09/21(水) 03:16:36.58ID:L92oE2Rd0302nobodyさん
2011/09/21(水) 14:05:27.70ID:???ゲームとかローカルで完結するアプリがそんなに楽しいか?
0303nobodyさん
2011/09/30(金) 20:37:53.50ID:KaRekCLi自分はPHPはある程度出来る程度です
0304nobodyさん
2011/09/30(金) 21:18:03.02ID:???曖昧模糊な表現への疑問はさておき
Objective-Cを覚えるにはあらかじめC言語を習得しているのが望ましい
(さらに言えば、Java, C#, C++などのオブジェクト指向言語もあらかじめ習得しているとわかりやすいだろう)
JavaとObjective-Cでは、現実的に考えて使用目的が違うのだから
比べるものではないだろう
0305nobodyさん
2011/09/30(金) 22:28:11.39ID:???実用性はまた別だけど。
0306nobodyさん
2011/10/01(土) 02:12:38.86ID:???JavaとObjective-C両方習得しなさい。
人間やりゃあできんだろ?
ただ質問に答えるならJavaの方が簡単だよ。
PHP5はJavaのパクリだしね。
現状Androidアプリの開発者は集めやすいが
iOSアプリの開発者は集まらないっていうから
そっちの方がお金になると思う。
■ このスレッドは過去ログ倉庫に格納されています