ホームページ  >  記事  >  バックエンド開発  >  Douban の開発言語: 万能の Python

Douban の開発言語: 万能の Python

大家讲道理
大家讲道理オリジナル
2016-11-07 17:47:011589ブラウズ

パール(Perl)のまばゆい光を前に、スピリット・スネーク(パイソン)は天と地に届く能力を持っています。 MS-DOS、Amiga、BeOS、OS/2、VMS、QNX などの OS 上で実行でき、Perl や VB よりも高速で優れており、「スター ウォーズ」言語だけでなく、C 言語や C++ 言語よりも拡張性が高くなります。 「スタートレック」などの超大作スタントやアニメーション制作を手がけ、NASAの管制室にも侵入した。真実については、レポートをお読みください。

Perl (パール) 言語については、インターネット上の誰もが知っており、理解している言語であると言えます。高速に動作し、操作が簡単で、ユーザーはそれを使用すると無限の楽しみが得られます。しかし、欠点もあります。オープンであるがゆえに複雑さも伴い、大規模プロジェクトの処理に使用する場合は特に混乱する可能性があります。

それにもかかわらず、ほとんどのインターネット プロジェクトは依然として Perl を構築するための「ヒーロー」として依存しています。

でも、仕方がない。最新の推奨ソフトウェアは Python (Spirit Snake) と呼ばれるもので、その歴史は Perl の 1/4 に過ぎず、多くの類似した特徴を持っています。

パイソンの名前は、多くの有名な俳優を擁し、多くの有名なスクリーンイメージを生み出した有名なコメディ一座モンティ・パイソンに由来しています。では、インターネットの世界におけるPythonのイメージとはどのようなものなのでしょうか?

より高速でより優れた Python

Perl と同様に、Python もインタプリタ型言語であり、完全にオブジェクト指向のアプローチを採用しており、言語構造は C 言語と Perl 言語の中間に位置します。これは高度な言語とみなされますが、その組み込みインタプリタは非常に基本的なもので、プログラミング言語全体を構成する関数、演算子、およびキーワードはわずかです。その利点はそれだけではなく、一連のモジュールを通じて拡張することができます。 Perl や VB ステートメントよりも高速かつ優れており、C や C++ 言語よりも拡張性が高くなります。

同様に、Python によるプログラム ステートメントの処理は、まず解釈およびコンパイル システムを通じて一連のバイト コードに変換され、次に Python の仮想マシンによって処理されます。 Python は、主にその膨大な関数ライブラリにより非常に効率的に設計されているため、ユーザーはシステム環境やオペレーティング システムに入る必要がなく、モジュールを参照する必要もありません。 Python でプログラミングする場合、コストと時間をあまり費やさなくても、小さなプログラムは小さなプログラムのままです。

Python は、Core プラットフォームに加えて、MS-DOS、Amiga、BeOS、OS/2、VMS、QNX、その他多くのオペレーティング システムでも実行できます。ハンドヘルド コンピュータ上で Python プログラムを実行することもできます。パール(Perl)のまばゆい光を前に、スピリット・スネーク(パイソン)は天と地に届く力を持っています。

Python は、Core プラットフォームに加えて、MS-DOS、Amiga、BeOS、OS/2、VMS、QNX、その他多くのオペレーティング システムでも実行できます。ハンドヘルド コンピュータ上で Python プログラムを実行することもできます。

Python には次の注目すべき機能もあります:

優れた適応性

Python は一連のプラットフォームでサポートできます。その適切にコンパイルされた形式は、Windows および MacOS および独自の Tk 拡張プラットフォーム上で動作し、ユーザーフレンドリーなインターフェイスの開発に使用できます。 UNIX およびその他のプラットフォームでは、Python はプログラマがソース コードとしてコンパイルしたり、他の事前に作成されたバイナリ コードとともに使用したりできます。その優れた適応性により、クロスプラットフォームに適用できます。UNIX プラットフォームで作成されたプログラム セグメントの 95% は、何も変更せずに Mac および PC で使用できます。 Tk プラットフォームのサポートを拡張することで、GUI 形式に基づくアプリケーションが、統一されたインターフェイスを維持しながら、大きな労力をかけずに上記 3 つのプラットフォーム間を自由に切り替えることも可能になります。

この自然なクロスプラットフォーム実行機能により、Python は一部のプラットフォームの拡張プラットフォームもサポートできるため、他の言語や環境への適応プロセスが簡素化および排除されます。 SunOS/Solaris ツールには Sun オーディオ デバイスが付属しており、SGI バージョンにはオーディオおよびビデオ インターフェイス (OpenGL を含む) が付属しているのと同様に、Windows Pytyon インタープリタにも Visual C++ クラス ライブラリと Windows オーディオ ドライバー インターフェイスが付属しています。 COM オブジェクトと通信するための関数もあります。

超高機能

Python はほとんど何でもできます。そのコアは小さいですが、ほとんどのアプリケーション ソフトウェアを設計するのに十分な基本的なプログラム ブロックが含まれています。また、場合によっては、プログラミング言語を C、C++、Java 言語に拡張して使用できるため、作成できないプログラムはありません。 Python インタープリターには、ネットワーク通信、テキスト処理、および正規表現のマッチングのための言語の機能を拡張する補足モジュールの非常に強力なライブラリも付属しています。

Python の主な機能は、多くの低レベルの複雑なタスクをプログラマから隠すことですが、特定のオペレーティング システムへの低レベル アクセスのためのフック、拡張機能、その他の関数もサポートできます。この高低両方の特性により、Python は C や Visual Basic、あるいはその中間のレベルの言語と同じレベルの言語とみなすことができます。

並外れた拡張性

Python自体はC言語で書かれており(一部の拡張プラットフォームはC++言語で書かれています)、オープンソースコードを使用しているため、プログラム自体を積極的に拡張することができます。さらに、ネットワークや DBM データベース アクセスなどのいくつかの基本コンポーネントや、Tk などの他の多くの高度なツールを含む、プログラミング言語の多くのモジュールが C および C++ インターフェイスでサポートされています。

さらに、Python は C または C++ 言語に統合できるため、Python 言語を使用してアプリケーションにプログラミング インターフェイスを提供できます。クロスランゲージ開発支援機能により、両言語を同時に使用できるため、C言語でプログラムを書き直すことなくPythonでアプリケーションを設計し、C言語環境に移行することも可能です。時間。

JPython は完全に Java 言語で書かれた Python インタープリターです。つまり、あらゆる Python プログラムを Java オブジェクトまたは Python オブジェクトを使用するアプリケーションに接続できます。

優れたシンプルさ

上記の Python の基本的な機能を理解すると、プログラミング言語の内容を理解するのは比較的簡単です。言語コアは小さく、形式とスタイルは簡潔です。他のすべてのコンポーネントと拡張機能はまったく同じ構文を使用するため、Python でのプログラミングは高速になります。

しかし、これはPython言語が複雑ではないという意味ではありません。その多くの拡張機能とライブラリは、効果的に使用する前に慎重に検討する必要があります。

超高機能

このような広範なサポートと他の人の長所から学ぶ能力により、Python はさまざまな問題に対処するのに特に効果的です。以下はその機能の簡単な紹介です: 電卓:

Python でサポートされている拡張プログラムは NumPy と呼ばれ、多くの標準数学ライブラリへのインターフェイスを提供できます。 Python 言語は無限の精度も備えており、100 桁の数値の算術だけを処理できます。

ワープロ:

Pythonはあらゆるデータを分割、蓄積、要約することができます。このモジュールは、ログ ファイル行の要素を分割し、組み込みのデータ型に従って情報を記録および要約し、最終的に出力できます。その正規表現ライブラリにより、プログラマは emacs、Perl などを使用できるようになります。 これは、Python の全能性を再度証明するものです。かつて、一部のプログラマーは Python を使用して、非常に複雑な SGML 処理ツールをコンパイルしていました。

便利なアプリケーション開発:

Python はプログラマーにとって明確であり、Python を使用したプログラミングは迅速かつ効果的です。その広範なモジュール ライブラリは、さまざまなプロトコル、ツール、ライブラリへのインターフェイスを提供します。再開発の苦痛を回避します。

Python は Tk ツールもサポートしているため、アプリケーション ソフトウェアは数時間で完成しますが、Perl 言語では 2 ~ 3 日、C 言語では数週間かかる場合もあります。

クロスプラットフォーム開発:

Python は、さまざまなプラットフォームを中立的な方法でサポートします。ユーザーが使用するシステムに異なるプラットフォームが含まれている場合は、その適応性を確保するために Python を使用するのが最善です。システム 他のツールを使用する可能性。プラットフォームを頻繁に切り替えるユーザーにとって、Python は理想的な選択肢です。

エンドユーザーにソフトウェアサービスを提供する場合、Pythonは代替手段でもあり、異なるアプリケーションソフトウェアを同時に使用してプログラミングする時間と費用を回避できます。

システムデバイス

Pythonはオペレーティングシステムの低レベル部分の煩わしさを避けるように設計されていますが、これらの低レベル部分に積極的に入る必要がある場合は、対応するツールや拡張機能を介して行うことができます。 Python はオペレーティング システムと同じ機能にアクセスでき、バックアップと拡張が可能です。また、バックアップと拡張された機能により、Python のすべての適応性とインターフェイス機能が強化されます。

インターネットプログラミング

Pythonには、ネットワークスロット上で基本的なプロトコルレベルの通信を実行できる標準モジュールが付属しています。たとえば、POPサーバーから電子メールを読みたい場合は、Pythonに付属のライブラリモジュールでそれを行うことができます。さらに、Python は XML、HTML、および CGI ライブラリ ファイルもサポートしているため、ユーザー入力要件を解析し、Web サーバーを通じて最高品質の結果を生成するために使用できます。

プログラマーは、Python の組み込みインタープリターを備えた Apache、Unix、および Windows Web サーバー用のモジュールをコンパイルすることもできます。 CGI プログラムの機能に基づいて、Python ステートメントを個別にロードすることなく簡単に実行できます。

データベースプログラミング

Pythonには、Orcle、Informix、mySOL、PostgreSqlなどの一般的なデータベースシステムに接続できる拡張モジュールが無数にあり、Pythonとは独立して完全なSQL環境を提供できるGadflyと呼ばれるツールもあります。 Python には強力なテキストおよびデータ処理機能があり、異なるデータベース間の接続として使用できるため、これらのデータベースに付属の概要ツールやレポート ツールよりも有利です。同時に、さまざまなシステムをサポートしているため、同じインターフェイスを使用して任意のデータベースに接続できます。 Tk を使用して、サポートされているプラ​​ットフォーム上にフロントエンドを構築すると、高速クロスプラットフォームの独立したデータベース クエリ ツールがすぐに利用できるようになります。

その他

Python には幅広い用途があり、小さなカーネル、豊富な機能、多様なデータを備えた Python は、プログラム構築の優れた基盤を提供します。 C と C++ の利点を組み合わせた Python プログラムは、適切な構造とメソッドを採用する限り無限に拡張できます。 Python には多くの大きな利点があることに加えて、欠点もあります。

Pythonの欠点を列挙するのは本当に簡単ではありません。 Python では、ほとんどの機能が拡張モジュールで提供されており、問題が解決しない場合でも、C または C++ で拡張プログラムを書き直すだけで機能を追加できることがわかります。

Python を批判する人は、Python に特定の機能が欠けていると言うのではなく、その機能を理解していないと言っていることがよくあります。 Python には正規表現がサポートされていないというよくある不満もありますが、実際には正規表現を処理するために使用できるモジュールが 2 つあり、そのうちの 1 つは Perl 言語の文構文を完全にサポートするために使用することもできます。正規表現の処理は言語に組み込まれていませんが、それができないというわけではありません。

Perl、Rebol、Java ステートメントと比較して、Python の利点はカーネルが小さいことです。これにより、実行時にロードする必要があるコードが少なくなるため実行時間が短縮され、この機能により適応性も高まります。

Python ステートメントの簡潔なスタイルに慣れると、その強力な利点がすぐに明らかになるでしょう。これを使用して作成されたプログラムは永久に残ります。

Pythonの理想的なユーザーグループ

さまざまなタイプの問題を解決するには、さまざまなタイプのユーザーが適しています。ほとんどの場合、これらの問題は機密性が高いため、一般には知られていません。商業開発に活用し、開発成果を実証する大手企業もある。

Red Hat は Python と Tk を使用して、オペレーティング システムを設定および管理するためのビジュアル インターフェイスの開発に成功しました。システム全体が Linux オペレーティング システムを完全に制御し、ユーザーの選択に従って構成ファイルを自動的に更新できます。

Infoseekは公開検索エンジンにPythonを使用しています。同社はまた、Python を使用してソフトウェアをカスタマイズし、エンドユーザーがサイトからコンテンツを簡単にダウンロードできるようにします。

NASA も多くの分野で Python プログラミング言語を使用していますが、最も有名なのはミッション管制センターでのミッション計画に Python を使用していることです。 path などは、Python のスーパー コンピューティング能力を完全に反映しています。

『プラネット・ステーション』、『アビス』、『スタートレック』、『インディ・ジョーンズ』などの超大作作品のスタントやアニメーション制作で主導的な役割を果たしている業界、インダストリアル・ライト社もPythonを使って商業アニメーションを制作しています。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。