パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

Python、2 年連続 TIOBE Index で最もレーティングを伸ばしたプログラミング言語に」記事へのコメント

  • 時代に取り残されたお爺さんには何が良いのかわからない

    • venv、pip、poetry 等と環境系は整ってはいるけど、逆に増えすぎてて最初は戸惑う。誰か経験者がいれば、そこら辺は各ツールの現状と個人的な好みを加えつつ整備してくれる。

      たが、python の経験が少ないとそこら辺が大変。動かし方やビルド環境が落ち着くまでに色々かかる。C/C++ がメインだった人は完全に慣れるまで半年ぐらいかかる。

      他言語経験者だった場合は、一度、開発体制の歯車がカッチリ合うと早い。

      依存関係としては、ライブラリなどが多いと API の動作変更や削除など 意図しない変更を避けるために、プログラム事に全てを囲っておかないと危ない。 別の言い方をすると、一プログラム事の venv かな。 そうしないと、静的リンクが出来ないので、こっちのプログラムは動くけど、あっちが動かなくなったがある。 C++ や C でも動的ライブラリを使うと起きる問題だけど、静的ライブラリで逃げられる。 これは、緩いライブラリ API の塊で、グループの数が多かった場合に陥る問題。 この為に特別な処理をいれる必要があった。

      言語としてはやりたいことは google で探すと、大体解説と共に載っている。 細かい一つ一つの実装は大体これで見付かる。

      pytest が秀逸でテストを書きやすい、付け足しやすい。 unittest の patch で関数呼び出しの戻り値を入れ換えたり、 特定の関数に渡す引数を調べられたりして、取っても強固。 C/C++ もあれこれあるけど、色々と手間がかかるし、低レベル関数乗っ取りはかなり無理。

      シェルスクリプトよりも書きやすくて、それなりの速度で動けば良い所だと手軽。 C/C++ だと構造体やクラスを作るところを dict で済ませられる事も多い。

      json ライブラリも便利。 ファイルに json で読み書き。内部構造としても、json のまま保持したりする。 ある意味、データとコードが同じになるので、テストで使う json データも 直打ちだったり、ファイルから読み込んでも一、二行で済むので楽。 別の言い方をすると、最悪の場合、プロジェクト毎に書かれている C/C++ の 設定ファイルの書式と各種 API を書くような人は Python ではいない。 Pytho では json で読んで、必要な dict キーがあるかの検査をする程度。

      ただ、型指定は弱い。 typing と言って、変数型や関数の戻り型を指定できるが、言語としては無視している。 意図していない型で渡して、例外の原因になっている事もある。 酷いのだと、デバッグに print を入れたら、そこで例外が投げられるようになって 余計何が起きているのか分からなくなったり。 スクリプト言語主体の人達はそこら辺が寛容すぎて間違ったものが渡されていてもなかなか気にしない。 静的型言語主体の人達はどんな型が渡されるかとても気になって、気になってしょうがない。

      長くなったが、一言でまとめると「開発環境がこなれて安定し、利用者が慣れてると、 とっても便利。短い行数で意図する事が出来るので、慣れると作業が早くなる。」

      元、C/C++ を主体にしていた者が、ここ一年程 Python だけの環境で作業した感想。

      親コメント

アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家

処理中...