jpki-rw.jp

過去数年の間に、Pythonの需要が急激に増加し、その人気が衰えることなくできます。PYPLは2019年のプログラミング言語1位で、Pythonを選定し、スタックオーバーフロー(StackOverflow)も開発者を対象にしたアンケート調査に基づいて、2番目に人気のある言語で、Pythonを数えアトヌンデヨ。2009年から2020年までに、Python、C#、C ++の、Java、JavaScriptは、Rの人気を示したグラフを見ると、2018年から、Pythonが継続して最高の位置を占めているのを見ることができます。

Rは、過去数年の間に停滞しています。他の多くの言語にも着実に減少する傾向にありますね。だから、Pythonの上昇は防ぐことができないように見えます。スタックオーバーフロー質問掲示板に上って来た14%の文には、「Pythonの」というタグが付いています。この傾向は、継続して持続していますね。

次に、今のPythonの人気の言語で作成された要因は何でしょうか?その要因として、いくつかのことを挙げてみましょう。

古かった

Pythonのは、90年代から存在してきました。この言葉は、単にPythonは開発言語に成長するための時間が十分ということだけを意味しない。巨大なコミュニティでのPythonの力を加えてくれたことを意味しね。Pythonのコーディングである問題がある場合は、Google検索一度にすぐに解決することができるように関連情報が膨大です。開発者は、自分が直面していた問題と解決方法を共有し、その過程で様々なデータが蓄積され、ユーザーが増えました。この好循環は、Pythonの成長を持ってきましたよ。

ユーザーフレンドリーである

Pythonの文法は、人が読むには非常に便利であるという長所を持っています。まず、データタイプを指定する必要がありません。ただ変数を宣言するだけです。その後、Pythonは変数のデータ型が整数(integer)であるか、浮動小数点(float)であるか、火(boolean)か、または他のか等を文脈を把握して理解します。この点が、初心者にとっては多大な魅力です。もし、あなたがC ++でプログラミングをしたことがある場合は、変数のデータ型を浮動小数点で整数のみ変えてもあちこちでコンパイルエラーが生じるの経験をしてみたでしょう。

PythonとC ++のコードを並べて読んだことがある場合は、Pythonはどのように理解しやすいかも理解することでしょう。C ++のは、英語を念頭に置いて作られた言語にもかかわらず、Pythonのコードに比べるとまったく解釈するのが容易ではありません。

多目的である

長い間、開発者は、数多くの用途に使用できるパッケージを作成しました。だから、ほとんどすべてのものを作ることができるパッケージを見つけることができます。

数字とベクトル、行列を完全に征服したい場合は?超えパイ(NumPy)があなたを助けてくれるでしょう。
科学技術と工学のための複雑な計算が必要な場合?間パイ(SciPy)を書いてみましょう。

ビッグデータの操作と分析をしなければならなら?パンダズ(Pandas)を使用してください。

人工知能を開始したい場合は?間キトロン(Scikit-Lean)を使用してみることができます。

あなたがコンピュータを利用してどのような操作をしてシプドゥン、そのためのPythonのパッケージがどこかにはあるでしょう。近年のマシンラーニング(Machine Learning)が急増していることからわかるように、言葉です。

前詳細を確認する内容に基づいて、あなたは、Pythonが今後長い長いトップの座にとどまるものと考えるでしょう。しかし、他のすべての技術と同様に、Pythonのも弱点はあります。Pythonの主要な欠点を一つずつ見て、これらがどのよう致命的であることを評価しましょう。

速度

Pythonは遅くなります。実際には非常に遅いです。他の言語よりもPythonのを使用して業務を処理すると、平均的に2〜10倍の時間がかかります。ここには、いくつかの理由があります。そのうちの一つは、「動的なデータタイプ」です。他の言語のように、変数のデータ型を指定する必要がないという点を考えてみてください。これは、プログラムが変数のデータ型に関係なく動作することができるようにするために、はるかに多くのメモリを必要とすることを意味しますよ。メモリを多く使用すると、最終的には計算時間が長くかかるようになります。

もう一つの理由は、Pythonのが一度にただ1つのジョブだけを実行することができるということです。これは、Pythonの柔軟なデータタイプからです。Pythonは、それぞれの変数が1つのデータタイプのみが必要です。もし部隊の他のプロセスがある場合は台無しにされることがあります。

しかし、速度はどのように見れば、全く問題にならない場合があります。コンピュータとサーバーが非常に安くなって祈り、私たちは今1秒かからない速度を置いて話をしているからです。そしてエンドユーザーもアプリの読み込み時間が0.001チョインジ0.01チョインジについてはほとんど気にしません。

変数のスコープ

元のPythonでは、変数の範囲が非常に広かった。これは、基本的に式を評価するために、コンパイラがまず、現在のブロックを検索し、そこから呼び出されるすべての関数を順番に検索することを意味します。これらの動的な範囲の問題は、すべての式が可能なすべてのコンテキストで検査する必要があるものであり、これは非常に面倒な作業です。だから、ほとんどの近代的なプログラミング言語が静的な(stastic)変数の範囲を使用している理由です。

Pythonのも、静的な範囲に切り替えしようとしたが、失敗してしまいました。一般的に、内部(inner)の範囲では、外部で宣言された変数を見て、その値を変更することもできます。Pythonでは、外部の変数を参照することはできますが、その値を変更することはできません。これが多くの混乱を招くのです。

ラムダ(Lambdas)

Pythonの柔軟性にもかかわらず、ラムダ使用に当たっては多少制限があります。Pythonでラムダは、式(expression)になることができるだけの構文(statement)になることはありません。一方、変数は宣言しても、構文的に表現しても、常に構文です。これは、ラムダが変数で使用することができないことを意味します。Pythonでこのように表現と構文を共有することは、多少恣意的であり、他の言語では、目に見えない特徴です。

ブランク

ブランクは、コードを読みやすくなりますが、メンテナンスは難しくなります。Pythonでは、空白とインデントを使用して、コードのレベルを区別します。したがって、視覚的にも見栄えが良く、直感的なので理解する非常に簡単。他の言語を例にとると、C ++、中括弧"{}"とセミコロン";"を使用します。これは視覚的にも複雑で、初心者が見た目にも容易ではない、コードをメンテナンスするには、はるかに良いです。大規模なプロジェクトでは、これがはるかに便利です。

ハスケル(Haskell)のような新しい言語では、このような問題を解決しています。このような新しい言語も空白に依存しているが、このような欠点をカバーすることができる他の代替的な文法も提供しています。

モバイル

デスクトップからスマートフォンへの移行が起きているが、Pythonで開発されているモバイルアプリは多くありません。だからといって不可能であることはありません。Pythonのでアプリを開発するためのキビ(Kivy)というパッケージがあるからです。

しかし、Pythonは、モバイルを念頭に置いて作られた言語がありません。だから、基本的な機能を作成することかもしれないが、モバイルアプリ開発をするつもりであれば、用途に合った別の言語を使用することをお勧めします。モバイル用途に広く使用されているプログラミングフレームワークでは、リアクトネイティブ(React Native)、フラッター(Flutter)、アイコニック(Iconic)、コルドバ(Cordova)などがあります。

ランタイムエラー(Runtime Errors)

Pythonのスクリプトを実行するには、まず、コンパイルする必要がありません。代わりに実行されるたびにコンパイルをするので、もしかしたら、コーディングエラーがあるとしても、実行時に表示されます。これはパフォーマンスの低下と時間の消費に続き、数多くのテストが必要です。本当に多くのテストをする必要があるので、初心者にとっては良いかもしれないが、経験豊かな開発者にとっては、Pythonで、複雑なプログラムをデバッグ(debug)ということは、非常に面倒なことではないことがないですね。

Pythonの代替することができるのは何だろう?

ラスト(Rust)は、Pythonだけの安全性を提供し、いくつかの変数も偶然重複して作成されていません。しかし、ラストは所有(ownership)と借用(borrowing)という概念でパフォーマンスに関する問題を解決しています。そして、スタックオーバーフローインサイト(insight)によると、ラストは、過去数年間で最も愛されているプログラミング言語と呼ばれます。

GoもPythonのような初心者には良い言語です。そして非常に簡単で、コードをメンテナンスすることもはるかに簡単です。面白い点は、高(GO)の開発者が就職市場で最も多くの年俸を受けることです。
ジュリア(Julia)は、Pythonと正面に競合する、非常に新しい言語です。大規模で技術的なコンピューティングでの欠点を埋めてくれるんです。ジュリアがない場合は、通常は、Pythonや、MATLAB(MatLab)を使用してC ++ライブラリで完全にパッチしたのに、それ自体が大規模の作業が必要になります。

市場には、他の言語もありますが、Pythonのの弱点を補完することができる言語は、ラスト、高、ジュリアです。この言語は、まだ発展している技術者は、特に人工知能(AI)で優れた活躍を見せています。スタックオーバーフローのタグ数に反映されているように、彼らの市場シェアはまだミミはあるが、すべて明確な成長を見せています。

どこでも見ることができる、Pythonの人気を考えると、少なくとも今後5年間で、多分2020年代の終わりにも、新しい言語がPythonの代替することは容易ではありません。今では、将来の新たな言語の中から任意のものが、Pythonを交換することができるかについて明確に話すのは難しいので、今後もより一層見守らなければならなります。

もしかしたら、開発言語を活用したプロジェクトを準備いただいているか?次に、ウィッシュキャットをどうぞ。Pythonのはもちろん、先に出てきたラストとし、ジュリアなど、様々な開発技術を保有している専門家があなたを待っています。7万人のIT専門人材を無料プロジェクト登録を一度に満たす!

 

 

関連記事