ベストアンサー
ウィキペディアは2001年1月に開始されました。当初は、 Perlで書かれたUseModWiki 。 2001年の夏に、その人気が高まっており、いくつかの新しい機能が必要であることが明らかになりました。たとえば、UseModWikiはスペースを処理できなかったため、「ブエノスアイレス」ではなく「ブエノスアイレス」と書く必要がありました。パフォーマンスにも問題があったため、ウィキペディアのボランティアライターでプログラマーでもあるマグナスマンスキーが書くことにしました。彼はPHPを学びたかったという理由だけで使用しました。PHPは当時、動的なWebサイトを開発するための非常に人気があり、急速に成長している言語でした。
MediaWikiの歴史に関する詳細は、次のページを参照してください。
回答
プログラミングを始めたとき—当時17歳だったPHPは、私にとって「これまでで最高の言語」でした。はじめに。
どのように始めたのですか?XAMPPをにインストールしました私のWindowsマシンで、MySQL、Apacheの「開始」をクリックしました。それだけです。私は夢中になりました。スクリプトを/htdocs
に配置し、localhost /test.phpを介して実行する機能は魔法のようでした。
Webサイトを公開したいですか?ホスティングを取得し、FTPと出来上がりでスクリプトをアップロードしてください!
データベース?問題ありません。古き良きmysql\_query()
を実行して1日と呼んでください。それから数年後、内部で物事がどのように機能するかを学び、つまりXAMPPの「スタート」ボタンが何であるかを知り、他の言語を試した後、PHPがいかに醜く、一貫性がなく、ランダムで、安全でなく、雑然としているかに気づきました。
XAMPPのバブルから抜け出せない人もいると思います。彼らは自分が最も快適なものに固執し、最後の息までそれを守ります。これは彼らにとって宗教のようになります
もし私が本質的に興味がなかったら、私はおそらく、当時のようにサーバー側にJavaScriptを少し加えて、PHPですべてを行うでしょう。おそらくNode.jsが欲しいでしょう-そしておそらく完全にそれに切り替えます。
しかし、私は Node.jsが嫌いです。
言及されていることの長所と短所:
PHP 短所
- 考えられるすべてのパラダイム、機能、考えられるものは何でも—phpには実装されています。 特性が必要ですか? goto が必要ですか? OOP が必要ですか? 機能が必要ですか?他に何か必要ですか?わかりました。
- PHP7は高速だと言われています。空のLaravelインストールでベンチマークを行うと高速です。 「通常のプラグイン設定」と「多言語セレクター」を使用してWordPressをインストールしてみてください。頑張ってください。
- セキュリティはphpの冗談です。それらすべてのSQLインジェクションを覚えていますか?
mysql\_query()
を「SQLクエリを実行する非常に簡単な方法」として宣伝するのは非常にクールだと判断したため、それらの90%はphpサイトでした。世界で考えられるすべてのチュートリアルが始まります。PHPでデータベースをクエリする方法は次のとおりです。mysql\_query(“SELECT * FROM article WHERE id =”. $\_GET[‘id’])
とても簡単です!!!見る? Javaのようなものではないので、最初にステートメントを準備する必要があります。ボイラープレートすぎます!退屈です!!! -
file\_get\_contents(“https://www.example.com”)
そしてfile\_get\_contents(“../foo.txt”)
そしてfile\_get\_contents(“php://input”)
そしてあなたは何を持っていますか?これはfile\_*
であるため、ファイルのコンテンツを取得するためのものです。言うまでもなく、fopen()
。 -
error\_reporting(0)
そしてあなたは驚異的なことをすることができます。 - 私はできます彼らの「標準ライブラリ」について続けてください。
長所
- PHPの成功はApachemod\_phpモジュールです。
- スクリプトをアップロードするだけで機能します。
- スクリプトを削除すると
- {}を含むコードを見たことがあれば、「Java | C ++ | Cなどと同じですが、変数名の前。
- ftp経由でスクリプトをアップロードすると、私たちは生きています。
- PHPには世界最大のコミュニティの1つがあります。
- 配列?そのリストですか、それとも辞書ですか?まあ、それは両方です(これは本当に欠点ですが、順序を維持しない辞書を気にする、双方向で機能するもののがらくたが好きな人はいますか?!)
- 唯一のこと実際にPHPに光を当てているのは、作曲家です。しかし、最近でも、ほとんどの人が何らかのパッケージマネージャーを持っています…
- Laravelは、OOPが進むべき道であり、私たちが忘れる必要があることを人々に納得させるために一度救助に来ました。そのすべての厄介な
mysql\_*()
ナンセンス。しかし、人々はビジネスロジックをどこに置くか混乱します。それはリポジトリでしたか?モデルですか、それともコントローラーですか?またはミドルウェア?どこ?うーん、考えさせてください…特性がうまくいくと思います…
ノード 短所
- ひどいライブラリ—
npm install winston
、hipster-webserver
など。ログライブラリが必要で、9 のさまざまなライブラリ。しないでください、ただしないでください。
- コールバック地獄。 async await構文以外はこれについて何もできませんが、ライブラリのほとんどは、単純なコールバックまたは作成者が誇りに思っている他の「発明」の約束です。約束は、私が最近軽蔑し始めた、雑然としたものが少ない単なるコールバックです。
長所
- 高速I / Oとv8の実行速度。だから何? libuvを使用すれば何でもそれを行うことができます。 Pythonに MagicStack / uvloop をパックして、ベンチマークを実行します。これをさらにエレガントに行う他の言語は言うまでもありません
- 簡単な入力。これは実際には悪いことです。彼のバックエンド能力を発見するフロントエンド開発者。しないでください。
Nodeが欲しいのは、仕様がある場合だけです。ライブラリが完全に編成され、同じコーディングスタイルでプログラミングされる場所です。スタイルの発明をやめてください。 。それはひどいです。
サードパーティのライブラリを調べたときに、理解し始めることさえできないコード構成とスタイルを見つけた場合、私はただあきらめます。
Nodeは、誰かが16歳の子供に車と30000ドルを渡して、それをポンと鳴らすことができるようなものです。
プラス面として、PHPがなければ、プログラミングはしませんでした。I子供が彼の最も古いおもちゃを見るようにそれを見る傾向があります。私はそれで遊びません。しかし、私がそれを見るとき、それはいくつかの思い出をもたらし、私の顔に笑顔を与えます。
最後に、何かを作るとき—十分な仕事と心を注ぎ込んで、それが好きな人なら—言語は重要ではありません。最終結果が重要です。
平和