起業したばかりのチームの場合、資金や人材の配置が大手企業ほど十分ではないため、テクノロジーの選択には十分な考慮が必要です。この記事はバックエンド言語の選択の問題を分析しており、言語の品質の問題には関与していません。言語は適者生存の法則に従い、生き残ることができる言語はすべて優れた言語であると考えています。 , ただし、それぞれが異なる問題の解決に適しています。
APP プロジェクトのバックエンド言語には通常、JAVA、PHP、Python、Ruby、.NET、JS などが含まれます。著者はプロジェクトで JAVA、PHP、Python、JS のみに触れたことがありますが、Ruby と .NET については実践的な知識がないため、最初に除外します。 Ruby は俊敏性が高いことで有名だと言われていますが、起業家的なプロジェクトでは、成熟した安定したテクノロジーを選択することを好みます。 .NET は Microsoft から来ています。Microsoft は ASP 以来、WEB バックエンド開発に非常に優れていますが、サーバー分野で Windows が第一の選択肢ではなかったのと同様に、インターネット企業にとっても第一の選択肢ではありませんでした。 JS がスタック全体で普及するにつれて、NodeJS は多くのチームの選択肢の 1 つになりましたが、NodeJS を選択しない理由は Ruby と同じです。そうなると、残るはJAVA、PHP、Pythonだけになります。
JAVA はフルスタック言語として、WEB バックエンド、Android、データ分析、機械学習、デスクトップ ソフトウェアなどをすぐに利用できます。特に、システム内の政府部門の一部のプロジェクトでは、 JAVAとOracleの使用。
チームに JAVA の経験がある場合、それが最良の選択です。ただし、私たちのチームは Java をバックエンド開発として使用したことがありません。JAVA のコンパイルとデバッグが遅すぎる理由は 1 つだけです。ただし、これらの IDE は再コンパイルしてサーバーを再起動する必要があります。自動的に助けてくれますが、それでも時間がかかります。
PHP は古いバックエンド言語であり、Baidu や Weibo などの企業の大小を問わず多くのプロジェクトが PHP に基づいています。
バックエンドで使用するために必要なものがすべて揃っており、幼稚園から大学まであらゆるレベルの開発者に対応します。このため、PHP で書かれたプログラムはハイエンドではないと感じるプログラマーもいます。実際、PHP も JAVA 言語と同様に、非常にハイエンドになるように書くことができます。
PHP はスクリプト言語です。作成してテストした後は、ブラウザを更新するだけで済みます。これには、販売用のソフトウェアとしてパッケージ化することができません。外。しかし、近年 Phalcon フレームワークが登場し、その開発チームが立ち上げた Zephir 言語は PHP 言語と同じように C コードを書くことができ、最終的にはバイナリ PHP 拡張機能にコンパイルできるようになり、ソース コードを保護するだけでなく、走行パフォーマンスを向上させます。
PHP には、Phalcon、Laravel、Yii、CakePHP、CodeIgnitor、Yaf、Zend Framework など、さまざまな優れたフレームワークがあり、豊富なコンポーネントを備えているものや、MVC のみを実装しているものもあります。
しかし、PHP はバックエンド開発なしではほとんど何もできません。
非常に柔軟な言語である Python は、そのスクリプト言語の柔軟性と優れたパフォーマンス上の利点により、近年バックエンド開発の選択肢の 1 つとなっています。
PHP スクリプト言語の利点があり、ほぼフルスタックであり、デスクトップ ソフトウェア、データ分析、機械学習を作成でき、APP クライアントの作成に使用する人もいます。
Python はバックエンド開発のために生まれたわけではありませんが、Django、Flask、Webpy などのフレームワークによってバックエンド開発が可能になり、これも非常に優れています。 Django フレームワークは優れていますが、開発者があまりにも多くのことを達成できるよう支援しすぎているため、開発者はジレンマに陥ることがよくあります。たとえば、ORM メカニズムは単純なデータの読み取りと書き込みには適していますが、複雑な関連クエリとなると手間がかかり、そのユーザー モジュールは開発者がユーザー、グループ、権限管理、認証ログインなどの一連の機能を実装するのに直接役立ちます。小規模なプロジェクトを開始する場合はユーザー モジュールを構築する必要はありませんが、大規模なプロジェクトのユーザー モジュールは、WeChat や Weibo などのサードパーティのログインやプロジェクト間のセッション共有など、非常に柔軟である必要があります。
Python のサーバー プログラムは、uwsgi と nginx に依存しています。uwsgi は、その機能、パフォーマンス、安定性の問題により、通常、フロントエンド サーバーとして使用されます。 -tier サーバー。小規模な Web サイトの場合、アーキテクチャによりメンテナンスが難しくなります。
スクリプト言語であるため、ソースコードを保護するのは困難です。
プロジェクトの協力とプロジェクトの引き継ぎを容易にするために、フレームワークに基づいて記述されたコードはより標準化され、読みやすくなります。
チームレベルが自分でフレームワークを書けるレベルに達している場合は、この記事を読む必要はありません。優れたフレームワークを作成できる場合は、それを作成しても構いません。その作成方法を学習しているだけの場合は、スタートアップ プロジェクトでそれを試すべきではありません。
3 つの言語の適用可能性を簡単に説明しました。具体的な選択は主にビジネスとチームの客観的な要素に基づいています。新しく形成された既存のテクノロジー システムを意図的に変更する必要はありません。起業家チームの場合、プロジェクトが大規模な場合は PHP の使用をお勧めします。フレームワークは Laravel または Phalcon を推奨します。強力なデバッグ機能を持つチームには Phalcon を推奨します。プロジェクトが小さい場合は、サーバー ソフトウェアに Nginx を使用することをお勧めします。 Django は Django のルールに完全に準拠しており、サーバー ソフトウェアは uwsgi と Nginx を使用します。
——————————————–
[FW]とマークされた記事と情報を除き、このサイトのすべての記事はオリジナルの記事です。ご注意ください:
転載元: Coming X
元のリンク: バックエンド言語の選択。 APP 起業家プロジェクト向け
——————————————–