ベストアンサー
オルワセガンの答えは偏りがなく、良いですが、短いです。ボブシーの答えにはいくつかの有効な点がありますが、非常に偏見があり、意見が分かれています。ですから、偏見のないものを提供し、意見であるかどうかを明確に述べ、「ストーリー」の両側を提供するために最善を尽くします。以下では、のみをWeb開発で扱い、ソフトウェア開発は扱いません(ところで、両方で行うことができます)。
まず、「より良い」を定義します。 」?これは非常に主観的な用語であり、探しているものに完全に依存します。もっと速いということですか?もっと広く使われていますか?より簡単に?より大きな雇用の見通しを提供しますか?フレームワークとライブラリの可用性が向上しましたか?続行できます。
PYTHON
とはPythonの強みは?
- Web開発とサーバー管理専用の組み込みおよびサードパーティのライブラリ/モジュールの膨大な配列(サーバー管理はWeb開発にも適用されます)。
- これらのサードパーティライブラリは、適切に設計され、適切に保守され、インストールが簡単で、強力です。
- 開発が容易です。 Pythonでプログラミングしたことがあれば、それがいかに簡単かご存知でしょう。
- Djangoは非常に強力です。 JavaScriptとPHPを置き換えるのに役立ちます。
- [意見]個人的には、PHPとJavaScriptが嫌いです。それらは使用するのにイライラし、どちらも脆弱性が発生しやすいです。言語の欠陥のためにPHPはもっと。 JavaScriptは、JSエンジンの実装方法の解釈が不十分になる、地獄のような奇妙な仕様の欠陥のためです。
- 完全にオブジェクト指向です。
- データ操作と機械に最適です。学習(プラットフォームでターゲットを絞った広告を提供する場合に重要になる可能性があります)。
- 適切なフレームワークとモジュール(標準で含まれています)を使用すると、データベースサーバーと適切かつ適切に統合して自動サイトのクエリを生成します。
- egユーザーがアカウントで特定のライセンスキーを検索している場合、フレームワークはユーザーが行っていることをSQLクエリに変換することでそれを処理します。
- 例: #2:管理者がメールアドレスで顧客を検索している場合、フレームワークはそれをSQLクエリに変換し、結果を変換してCSS形式のHTMLで表示します。
Pythonの弱点は何ですか?
- 遅い。本当に遅いように。 Pythonのファンが認めるよりも遅い。 Oluwasegunが言ったように、PHPは最大3倍高速です(場合によってはそれ以上、場合によってはそれ以下です)。
- 開発に使用する場合、Pythonを使用しているように考えることはできません。 フレームワーク(Djangoなど)を使用しています。したがって、Pythonを学ぶだけでは不十分であり、フレームワークも学ぶ必要があります。
- PythonはPHPほど広く使用されていないため、特にWeb開発に関するエンプロイアビリティの要素ははるかに制限されています。すべてのウェブサイトの約80%がPHPを使用しているという統計を聞きました。統計を確認することはできませんが、驚くことではありません。
- この種の処理は遅くなりますが、個別に対処する必要があります:リソースの使用。 Pythonは、PHPよりもはるかにリソースを占有します。利用可能なリソースの多くを利用していれば、実際にはスピードアップに役立つと思うでしょう……いいえ、そうではありません。
- [意見] PythonのOOPの側面はひどいものです。 Java、C#、C ++などの言語でOOPを実行したことがある場合は、私がそれを嫌う理由を理解できます。
this
とsuper()
に依存する言語は正しく機能していません。それはあなたのコードを地獄のように混乱させ、プロセス全体を難読化し、開発者にエラーを起こしやすくします。それは必要ではありません-言語の全体的な側面は(このサイトの他の場所で言ったように)ボルトで固定されたように感じます、ハンマー、盲目の魚による…。後付けとして。そして、何を推測しますか?そうだった!さて、それは魚によって、ハンマーを使ってボルトで固定されていませんでした。しかし、それは後からの考えであり、当初は言語の一部となることを意図していませんでした(当初は含まれていませんでした)。 - これは、OOPの不十分で制限的な実装です。繰り返しますが、意見です。好きな人もいますが、通常、CとC ++は難しく、混乱していると言われています。
全体として、それはひどいことではありませんか?個人的には、上記の最大の問題は、とにかく雇用可能性の観点から、PHPと比較した「市場シェア」だと思います。
PHP
PHPの長所は何ですか?
- 非常に高速です。
- 完全にオブジェクト指向です。 。
- バックエンドWebサービスの大部分で使用され、Webサイトの「舞台裏」機能。
- SQLサーバーおよび事実上すべてのフレーバーとうまく統合されます。
- データベースへのクエリを自動生成します(これが意味する例のPythonセクションを参照してください)
- Web用に設計された非常に多様な組み込み機能。
- 実行できることをさらに拡張する多くのPHPWebAPIが利用可能です。
- これらの多くはPHPで使用するために特別に設計されており、PythonとDjangoでは使用できません。
- eg多くのeコマースAPI
PHPの弱点は何ですか?
おやおや。本当の問題がいくつかあります:
- [意見]構文はひどいものです。はい、それは意見ですが、非常に広く共有されている意見です。私が今まで話したすべてのPHPプログラマーも、この意見を持っています。まだ慣れていない場合は、チェックしてください。
- SQLインジェクション攻撃。それが何であるか、なぜそれが起こるのか、そしてPHPを使用してそれを解決する方法の詳細な説明については、以下のリンクを参照してください:
- PHPアプリケーションでのSQLインジェクションの脆弱性を防ぐ
- リモートコード実行:
- PHPアプリケーションのバグにより、ユーザー入力が受け入れられ、PHPコードとして評価される場合があります。
- クロス-サイトスクリプティング(XSS [X = Cross]):
- 保存されたXSSと反映されたXSS
- 認証バイパス-技術的には開発者のエラーですが、言語自体が非常に簡単です。この間違いを犯してください。
- さらに続けることもできますが、代わりにリンクを示します:
- https://www.wordfence.com/learn/understanding-php-vulnerabilities/
- [意見 ] OOPはPythonと同じくらい悪いです。構文が原因でおそらく悪化します。引き続き
this
を使用します(ただし、実際には$this
です)
全体として、これらの脆弱性はかなりひどいですが、それらは主に開発者のエラーが原因です。 PHPをよく理解し、「 PHP開発の方法」だけでなく、「PHP開発の落とし穴」と「PHPの脆弱性」についても調べてください。そのような問題になります。
今すぐすべて一緒に
では、ここで導き出される最終的な結論は何でしょうか。ええと、Pythonファンが言っていることにもかかわらず、一般的なPHPのみのAPIが存在し、業界がPHPを支配しているため、PythonはPHPを完全に置き換えることはできません。
私はすでに進んでいることを知っています何年もの間、これが私の最後のポイントであり、述べることが非常に重要です。開発者が「最高の言語を選択する必要がある」という考えは、現代の教育システムとジュニア[若い]開発者の両方の大きな失敗です。ウェブ、アプリ、ソフトウェアなど、あらゆる開発分野で真に熟練するためには、複数の言語を知っている必要があります。確実に採用できる場合も同様です。
ANECDOTE : 私が最初に業界に参入したとき、私が尋ねたときに非常に感銘を受けたのを覚えています。職場の開発者は、アセンブリ、C、C ++、C#、JavaScript、バイナリ、16進数を知っていると言っていました。
I 私はC、C ++を知っているので、今はあまり感心していません。一部のC#(詳細)、JavaScript、Python、Java、HTML、CSS、一部のPHP(詳細)、SQL、バイナリ、16進数…一部が不足しているように感じますが、頭の中で思い出せません。彼らはまだ私よりもはるかに経験豊富で熟練していますが、多くの言語を知ることは正常であり、実行する必要があることであることがわかりました。
結論として、どちらが優れているかではありません。それは、いつどこでそれらを使用するかを理解することです。また、Web開発の場合、学習する必要のある最低限の要件は次のとおりです。
- HTML
- CSS
- JavaScript
- PHP
- JSON(XMLの置き換え)
- SQL(MySQL、Oracle、MS SQLが3つのメインです)-さまざまな「フレーバー」に注意してください
- Python
上記はキャリアにとって絶対に交渉の余地がありません。オプションで、Javaも学びます。ウェブアプリに便利です。
編集:偏見がないことの証明ですか?私はPythonとPHPの両方が同じように嫌いです。のように、私は実際には両方とも本当に嫌いです。
回答
Python VS PHP :どちらの言語を使用する必要がありますか選ぶ?この質問は、新しい開発者やスタートアップにとって最も重要です。この質問への答えは、両方の言語が人気があるほど単純ではありません。予算やその他の開発上の問題のため、インターネット上で世界中で使用されています。
PHPとPythonのどちらかを選択する際に初心者が直面する問題:
- PHP Web開発を始めたばかりの開発者にとって、言語を決定するのは困難です。
- 初心者は、要件が異なるため、Web開発言語を選択するのが難しいと感じています。
- また、どの言語を扱う場合でも、2つの問題に直面します。1つは、プログラミング構造を学び、次に選択した言語でそれらを実装する方法を学ぶ必要があります。次に、構文の専門知識が必要ですが、意味がありません。
- 新しい開発者が直面するこれらの問題は、 PythonとPHP 開発者。 Python開発者と話すと、その言語のすべての長所がリストされ、短所はリストされません。 PHP開発者の場合も同じで、これ以上の言語はないと主張します。
では、2つの言語をどのように決定しますか?わかりやすくするために、このブログでは、 PythonとPHP の比較のために4つのポイントをリストしています。この後、2つの言語のどちらかを簡単に決定できるようになります。
3つのポイントに進む前に、両方のWeb開発言語の使用。
ポイントPythonとPHPの比較例
1。フレームワーク
フレームワークは、コードを開発し、コードのコンパイルを維持するコミュニティです。これは、開発者が最初から何も作成せずにWebアプリをすばやく作成するのに役立ちます。
フレームワークは、開発者がアプリに機能を追加する必要に応じて追加できる多数の機能を提供します。
Pythonフレームワークは強力で用途が広いですが、提供されるオプションは限られています。 Python言語は、基本的にPHPと同じ機能を実行する幅広いフレームワークを提供します。プロジェクトでの言語の使用が増えるため、Pythonフレームワークの数は継続的に増加しています。 FlaskとDjangoは、世界中の開発者が使用する人気のあるフレームワークです。
PHPフレームワークも膨大な数であり、開発者に次のオプションを提供しています。業界固有のアプリを作成します。人気のあるPHPフレームワークはsymfonyとLaravelで、何百万ものユーザーが使用する多くの人気のあるアプリで使用されています。
2。 CMS
CMSは、アプリ開発プロジェクトに多目的なソリューションを提供するソフトウェアプラットフォームです。ブログやeコマースなどのソリューションを提供し、開発者がビジネスケースに集中できるようにします。最も人気のあるCMSは、PHPを使用して構築されたWordPressです。他の人気のあるCMSは、eコマースサイトの開発で人気のあるMagentoとWooCommerceです。これらもPHPを使用して構築されています。
Pythonには使用が制限されたCMSプラットフォームDjangoがあります。
PHPは多くのユーザーが使用する優れたCMSプラットフォームであるため、ここでは明確な勝者です。
3。人気
どちらのWeb開発言語も人気がありますが、現在、PHPが市場の80%を占めています。 PHPは、Yahoo、Wikipedia、Tumblrなどを含む多くの人気のあるWebサイトで使用されています。 Facebookも、PHPフレームワークに切り替える前に最初にPHPを使用していました。
Pythonはバックエンドプログラミングの優れた選択肢の1つです。そして、PHPはしばらくの間市場に出回っており、今でもバックエンドの目的で使用されています。
Python言語も、特にGoogle以来非常に人気があります。その有名なプロジェクトのいくつかのためにそれを選びました。 Reddit、Pinterest、YouTube、Instagram、Spotifyは、Python言語を使用するプラットフォームです。
人気の点では、両方言語は互いに激しい競争をしています。上記の言語を使用する新しいプロジェクトが毎日発表されます。
4。学習曲線
プログラミング言語に関する学習曲線は、開発者が言語の構文に堪能であることを意味します。また、開発者がツールを使用してWebデザインを関数型コードに変換することについて理解していることも意味します。
Pythonは、初心者が簡単に習得して理解できるため、明らかに勝者です。 PHPはタフで間違いの余地がほとんどないため、初心者向けではありません。
Pythonには間違いの余地があり、小さなエラーが原因でコードが破損することはありません。学校がプログラミングの基礎としてPythonWeb言語を教えているのはまさにこの理由によるものです。
PHPフレームワークと専門家は、言語をより簡単でユーザーフレンドリーにするために最善を尽くしています。
結論:
Python VS PHP は決してありません-議論は終わりですが、どちらの言語も開発者に学習の機会をたくさん提供します。すぐに使用できる構文、ツール、および機能を備えているため、Python開発者とPHP開発者の両方が多くの作業を行うことができます。
両方の言語を試すことをお勧めします。プロジェクトに適した、使いやすいものを選択する必要があります。 PHPは技術プロジェクトに最適ですが、Pythonは新しい開発者やスタートアップにとって簡単です。