新着Pick
221Picks
Pick に失敗しました

人気 Picker
Pythonは主に機械学習・深層学習にも使われますし、それ以外にもライブラリが充実しているので様々な分野で使われます。私は学部1年生向けにプログラミングを通じて数学や物理を理解するという演習を、3年生向けに人工知能演習を提供していますが、確かにどちらもPythonを利用しています。

Pythonはそもそもスクリプト言語で、コンパイル言語であるC言語と比べるには無理があるし、PythonでOSを作るなんてことはやりにくい。良し悪しを言い始めるときりがありません。

これまでの多くのピック記事で多くの方がおっしゃっているように適材適所です。プログラミングは道具です。例えて言うならペンチとラジオペンチの優劣を語るくらい無意味です。それぞれの言語の得意・不得意を理解し、使い分けることが肝要かと。

そういう意味ではいまのPythonは料理に例えると万能包丁、工具に例えると十徳ナイフくらいの「これさえあれば完璧ではないけど一通り大丈夫」的な使い勝手はあると思います。あと、他の方がPythonを使ってコードを書きGithubなどで公開されるので資産の蓄積がなされているのも大きいです。
こういう記事多いですけど、物足りなさを感じます。言語は用途によって使い分けるものだから、用途別のランキングとか、この記事の場合検索エンジンのクエリを元にしていると言うことだから、各言語において何が検索されているのかなどのコンテクストが知りたい。
「言語の歴史」を語る上ではこういうランキングも価値があるのだけれども、ビジネスを考えたり、キャリア作りを考えたりする上で、こうしたランキングを参考にするのはかなり危険。
プログラミング言語は用途によって強い弱いがあるので、ちゃんと考えて使いましょう。

しかし当然のように、「Pythonは機械学習で強いので使われています」と「OSなどでPythonを使用するにはメモリ消費量が多すぎる・計算が遅すぎる」って話が並んでるのは面白いよね。機械学習なんて計算の塊なので、計算の速さやメモリ消費量の少なさがものすごく重要。
このトリックは、「PythonのライブラリはPythonで書かれていない」ということで、機械学習は「ライブラリを呼び出す」という処理で大体できてしまう、というところにあるのが肝。ライブラリが豊富で、決まった処理をするのは早いけど、オリジナルの処理を書くと遅い。そこら辺はPythonの大きな特徴かな?
いろんなプログラム言語が増えてきて、学生さんからもまずどれから入ったらいいですかと聞かれる機会も多いです。山崎先生書かれているように性格も能力も異なる多様性がある世界なので、それぞれの領域や目的をしっかり見定めた上で選ぶとしかいいようがない世界ですね。

それでも僕の領域である建築などであれば、いわゆる3Dモデリングのソフトウェア内でもカスタム化(ソフトウェア内でプログラム言語を使って同時の機能を部分的に追加する)の言語としてPythonをサポートしているのが標準化されてきているし、他の領域と接続する、その他ある程度ユーザーやデザイナー的立場で汎用性を求めるということだと、Pythonの優位性は確実に高まっているのは間違いありません。プログラム言語にもある程度トレンドがある中で、一応今始めるならPythonがいいんじゃない?と言うことは実際多いです。

建築や3DCGなどの世界は特に、最近はいわゆるビジュアルプログラミングといわれる、アイコンを論理モデルのようにつないでいくタイプの、疑似的なプゴグラミングも実務の主流になりつつあります。そうした自分の主戦場で使うソフトウェアとの相性などもプロダクションで使う上での選択の重要なポイント。

もちろんもっとハードコアな開発やる人とか数学的な探求する人、むしろグラフィック領域の人とそれぞれ目的が変われば向いている言語も異なります。周辺の先行ユーザーの動向やネット上での評判、ユーザーコミュニティの状況やライブラリの充実度など、条件となる要素を把握してそれらのリサーチをする能力、自習できる能力や環境なども、これからのデジタル環境では重要になります。プログラミング言語の選択だけではない、より広い視野と行動力とのセットで教育も進めていきたいところです。
Pythonも使っているけど、Numerical Recipesが名著すぎていまだにFortranでコーディングしています。Mathematicaではエラーが出るような数値積分の実行や連立微分方程定式が解けたり、こちらの解決したい問題に対して柔軟に使えるのが強み。

>引用
『 Fortranがトップ20言語に再び定着していることは注目に値するといえるだろう。少し前の2020年7月のランキングでは、Fortranの順位は50位まで落ち込んでいた。しかし2021年に入り、Fortranの順位は20位まで急上昇した。1950年代にIBMで開発されたFortranは、今でも世界中のもっとも強力なスーパーコンピューターで頻繁にコーディングに使用されている。しかし、米国のFortran標準化委員会の委員の中には、この言語が歴史的に得意としてきた領域が、ほかの言語に侵食されつつあると考えている者もいる。Fortranの問題は、これに対抗しようにも、新しい機能を導入すると古いコードが動かなくなるリスクがあるということだ。』
よし、将来に備えてPython勉強しよう!

なんてことはどうでもいいとして、メモリの消費量に言語そのものが影響するとか、プログラミングを全くしない人からすると何のことだかさっぱり分からないかもしれないですね。
世の中の仕組みを理解するには、プログラミングが最適。

どの言語を使うか考えるのはもちろん楽しいけれど、まずはもっとたくさんの人たちに「プログラミングを通じて世の中を見る」という体験をしてほしいなぁ。
なかなか驚きですね。Phthonが1位ですか?!
記事にもありますが、Fortranがいまだにランキングしていることもびっくりです。
Pythonは環境が構築しやすいので重宝します。あと、他の言語は使ったことがないのでわかりませんが、コマンドが基本英語ベースのおかげかコマンドの意味を理解しやすいです。スマホ片手に調べながらプログラミングを行っても何とかなりました。
Fortranがあるのに、COBOLがない…Rubyがあって、うれしい。

(以下、記事中から引用)
2021年9月のTIOBEのプログラミング言語のトップ10は、C、Python、Java、C++、C#、Visual Basic、JavaScript、アセンブリ言語、PHP、SQLだった。

また11位から20位までは、Classic Visual Basic、Groovy、Ruby、Go、Swift、MATLAB、Fortran、R、Perl、Delphiとなっている。

※個人的な見解であり、所属する会社、組織とは全く関係ありません
一度Cをまともに勉強しておけばある程度どの言語にも順応出来るのかなと。
ヨーロッパの言語で言うところのラテン語みたいな。いや、知らんけど。
関連記事一覧
Pythonの用途を知った上でPythonエンジニアを目指そう
アンドエンジニア
273Picks

東京駅界隈にAIカフェロボット「root C」、サブスクも--New Innovations、JR東海と連携
CNET Japan
7Picks

シトロエンに新しい旗艦登場!──「C5 X」がベールを脱いだ
GQ JAPAN
3Picks

C・ロナウド、来季ユベントス残留は「60%」? 去就は今季の終え方次第か
フットボールチャンネル | サッカー情報満載!
2Picks

C・ロナウド、ユーロ2020敗退で今後はどうなる? 得点王や世界記録の行方は
フットボールチャンネル | サッカー情報満載!
2Picks

C・ロナウドが相変わらず凄すぎる。わずか1試合で達成した数え切れないほどの新記録とは?
フットボールチャンネル | サッカー情報満載!
2Picks

C大阪、ACL決勝トーナメント進出! 2位の傑志と引き分けるも、グループJ首位が決定
サッカーダイジェストWeb | 専門3誌のオリジナル記事が満載!
2Picks

どうしたC・ロナウド。不発続きの低調パフォーマンスに批判殺到、去就も不透明?
フットボールチャンネル | サッカー情報満載!
2Picks

【J1】首位川崎はドローも、2位名古屋が今季初黒星で勝点差は6に。ともに勝利の鳥栖が3位、C大阪が4位に浮上!
サッカーダイジェストWeb | 専門3誌のオリジナル記事が満載!
2Picks

アプリで注文、サブスクプランも--JR新橋駅北改札外にAIカフェロボット「root C」
CNET Japan
2Picks