アカウント名:
パスワード:
PHPは何でもアリな感じが面白いねマシン語を直書きしてた頃に比べると時代が変わったなと思うよでもプログラマの範疇のプログラマがPHPを嫌うのは何となく分かる気がする
そりゃ変数定義必要なしで型宣言もなくて基本的には自動的に変換してくれるからね。だからこそPHPには比較演算子として「==」だけではなくて型チェックまでする「===」なんていう比較演算子まである始末。
ただPHPの連想配列は型宣言が必要ないのでJavaの連想配列に比べてめちゃくちゃ便利。(Javaの連想配列はいまいち使い勝手がよろしくない)
>PHPの連想配列はせめてハッシュテーブルって言ってよ。
>型宣言が必要ないのでJavaの連想配列に比べてめちゃくちゃ便利。は?
なんかスゲーバカっぽい発言。型が無いからPHPコードはバグの温床になってるのに、それが便利って言っちゃうのは「自分はバグを大量生産する初心者下手糞プログラマーです」と自白してるようなもんですよ。
PHPって知らんけど、連想配列の実装がハッシュテーブルとは限らんのでないの?PHPはどうなのか知らんけど、型の無いのと動的型付けなのは違うんでないの?
一般に型がないと言われる言語はPHPを含めて動的型付けですね。PHPは代入時に型が決まって、型変換はルーズな言語だけど型を強制するsettype()とか、C言語風のCastで型変換を強制できるので、変数型を意識したコードも書けないことはないと。
静的型付けの言語からやってくると、このルーズな変数型の扱いは最初は気持ち悪いんだけど楽だなと思えるようになる。楽に慣れ過ぎると落とし穴にハマるかもしれないので、適当に形を意識しつつ書くって感じですか。
動的型付けの言語の言語がバグの温床だというのは極論すぎると思うけど背景には型を意識しないルーズなコードを書くプログラマを量産してるんじゃというのもあるのかもしんないですねー。
>このルーズな変数型の扱いは最初は気持ち悪いんだけど楽だなと思えるようになる。構造体の代わりとして連想配列で同じ事ができるようになるからね。しかも構造体みたいに事前の定義が必要ない。(データベースからデータを引っ張ってくるときにソースの使い回しが楽。)
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
最初のバージョンは常に打ち捨てられる。
PHPはいいね~ (スコア:0)
PHPは何でもアリな感じが面白いね
マシン語を直書きしてた頃に比べると時代が変わったなと思うよ
でもプログラマの範疇のプログラマがPHPを嫌うのは何となく分かる気がする
Re: (スコア:0)
そりゃ変数定義必要なしで型宣言もなくて基本的には自動的に変換してくれるからね。
だからこそPHPには比較演算子として「==」だけではなくて型チェックまでする「===」なんていう比較演算子まである始末。
ただPHPの連想配列は型宣言が必要ないのでJavaの連想配列に比べてめちゃくちゃ便利。(Javaの連想配列はいまいち使い勝手がよろしくない)
Re: (スコア:1)
>PHPの連想配列は
せめてハッシュテーブルって言ってよ。
>型宣言が必要ないのでJavaの連想配列に比べてめちゃくちゃ便利。
は?
なんかスゲーバカっぽい発言。
型が無いからPHPコードはバグの温床になってるのに、それが便利って言っちゃうのは
「自分はバグを大量生産する初心者下手糞プログラマーです」
と自白してるようなもんですよ。
Re:PHPはいいね~ (スコア:1)
PHPって知らんけど、連想配列の実装がハッシュテーブルとは限らんのでないの?
PHPはどうなのか知らんけど、型の無いのと動的型付けなのは違うんでないの?
Re:PHPはいいね~ (スコア:1)
一般に型がないと言われる言語はPHPを含めて動的型付けですね。
PHPは代入時に型が決まって、型変換はルーズな言語だけど
型を強制するsettype()とか、C言語風のCastで型変換を強制できるので、変数型を意識した
コードも書けないことはないと。
静的型付けの言語からやってくると、このルーズな変数型の扱いは最初は気持ち悪いんだけど
楽だなと思えるようになる。楽に慣れ過ぎると落とし穴にハマるかもしれないので、適当に
形を意識しつつ書くって感じですか。
動的型付けの言語の言語がバグの温床だというのは極論すぎると思うけど背景には
型を意識しないルーズなコードを書くプログラマを量産してるんじゃというのもあるのかも
しんないですねー。
Re: (スコア:0)
>このルーズな変数型の扱いは最初は気持ち悪いんだけど楽だなと思えるようになる。
構造体の代わりとして連想配列で同じ事ができるようになるからね。しかも構造体みたいに事前の定義が必要ない。
(データベースからデータを引っ張ってくるときにソースの使い回しが楽。)