記事
5翻訳
PythonがGoogleにとって十分に強力な理由新しいプロジェクトを開始する準備が整いました。 開発にはどの言語を選択する必要がありますか?
または、この質問を再定式化するために:
あなたは仕事を探しています、あなたはどの言語を学ぶ必要がありますか?
この記事のタイトルから、Pythonが正しい答えだと思います。 しかし、なぜですか?
答えは、Pythonは強力な言語だということです。 しかし、それはどういう意味ですか? プログラミング言語を強力にするものは何ですか?
Pythonが効率的
今日、大量の知的エネルギーがビッグデータに費やされています(その分析と処理の両方のため)。 処理するデータが多いほど、使用するメモリを管理することが重要になります。
Pythonは、
式ジェネレーターと
関数ジェネレーターの両方を提供します。
ジェネレーターは、一度に1項目ずつ、物事の反復処理を可能にします。 リストの通常の反復処理にはリストが必要であることを理解し始めるまで、これはそれほど素晴らしいとは思えません。 リストはメモリを占有します。 非常に大きなリストは多くのメモリを消費します。
特に便利な場合(プロセスの長いチェーンがある場合)、データセットへの適用が必要です。 ジェネレーターを使用すると、1つの要素のソースデータを同時にキャプチャし、プロセスチェーン全体に送信できます。
多くの場合、あるサイトから別のサイトにデータを転送する必要があります。 転送するサイトの一部には、10年の履歴とギガバイトのデータがあります。
Collective.transmogrifierジェネレーターに基づいた移行ツールを使用して、サイトデータを読み取り、複雑な相互依存データ更新を生成し、読み取り専用メモリの新しいサイトでオブジェクトを処理、作成、保存できます。
さらに大きなデータセットを扱うアプリケーションの場合、このようなツールは不可欠です。 David Beasleyの
優れたプレゼンテーションには、システムタスクにジェネレーターを使用する非常に魅力的な例が含まれています。 想像してみてください、あなたの想像力が暴走しているのが見えます!
Python高速
わかった、わかった。 鼻水が聞こえます。 Pythonはインタプリタ言語ですよね? 彼らは遅くありませんか?
実は、近年、Pythonのパフォーマンスを改善するために驚くべき作業が行われています。
PyPyプロジェクトは、一般的にPythonを高速化することを目的と
しています (そして
、これについて素晴らしい仕事をしています )。
Numbaは、既に持っているコードにデコレーターを追加するだけ
で 、
驚くほどの速度の向上を実現できます。
したがって、高性能コンピューティングを行いたい場合、今日のPythonは実行可能なオプションであると言いたいと思います。
Pythonは広く普及しています
Pythonはかなり前から存在しており、ほぼすべての活動分野で使用されています。 Redditスレッドは、システムの自動化、テスト、ETLからゲーム、CGI、Web開発に至るまでのタスクへの回答について、
「職場でのPythonの使い方」調査を作成しました。
DisneyはPythonを
使用し
て 、その創造的なプロセスを
サポートしています。
MozillaはPythonを使用
して膨大なコードベースを
探索し、 Pythonに組み込まれた多くのオープンソースパッケージをリリースします。
Pythonのパブリックパッケージディレクトリである
PyPiを確認
すると、
これらのカテゴリの約
300で利用可能な40,000個のアドオンが表示され
ます 。
基本的に、Pythonで何かをしたい場合、誰かが既にそれを持っている可能性がかなりあり、ゼロから始める必要はありません。
PythonはPythonではありません
私は最近、
なぜ非常に多くの種類のPythonがあるのかについての投稿を読みました。
著者は、Pythonは実際には言語ではなく、言語の説明だと考えています。 これは、Pythonを任意の方法で実装できることを意味します。
ほとんどの人がやり取りするPythonは、Cで書かれた実装であるCPythonです。CPythonの機能の1つは、Cで書かれたコードとの純粋な統合を提供することで、Cライブラリのラッパーの実装は比較的単純です。
ただし、Javaコードとの深い統合を提供する
Jython 、C#および.NETコードを
操作する
Iron Python 、ObjectiveCツールを使用してPythonコードを
記述するPyObjc 、さらにJavaScript用にPythonをコンパイルする
pyjsもあります。
したがって、これらの言語のいずれかで既にソフトウェアスタックを使用している場合、作業環境にPythonを含めるのは非常に簡単です。そのため、すべての機能を最大限に活用できます。
Pythonは簡単です
Pythonは習得しやすいという評判があります。 言語構文は読み取り用です。 これ
については
多くの議論がありますが、事実はそれを物語っています。
Pythonの人気の多くは、
科学計算などの分野に集中しています。 この分野で働く人々は主に科学者であり、プログラマーのみです(彼らがいる場合)。
NumPyや
SciPyなどの高度なシステムは、ソフトウェアエンジニアのチームではなく、作業を完了するために必要なツールを作成したドメインエキスパートによって設立されました。
それについて考えてください。
新しいプロジェクトを作成し、特定の分野で作業している場合、どの問題を解決する必要があるのかを誰に任せたいですか? もちろん、この分野の専門家と開発者を雇うことができます(そして、最終的には必要になります)。 あなたは彼らにお互いに話すことを教えることさえできます(そして最終的には、これも必要になります)。 しかし、あなたが始めたばかりの場合、何をするのが最善ですか?
専門家に直接力を与える言語を選択する必要があると思います。
Pythonを選択します。