Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
📌 はじめに Pythonで開発を行うにあたり、リンタやフォーマッタ、パッケージマネージャ等のツールの選定は非常に重要な問題です。一方で歴史的な経緯もあり、沢山の選択肢から何を選ぶべきか情報がまとまっていないように感じました。この記事では2021年9月時点でモダンと言えるであろう開発環境を紹介します。基本的にはシェアが高いこと、著名なパッケージで使用されていることを主な選定理由としており、また特定のエディタに依存しないことを前提とします。 本記事で紹介する内容は一つのテンプレートに近く、必要に応じてカスタマイズするもよし、そのまま使ってもよし、として参考になればと思います。(CI/CDについてはPythonとは独立した問題なので触れません。またドキュメント生成はSphinxを推しますが、必須ではないので今回は割愛します。) 📄 要約 "モダン"な開発環境を箇条で列挙すると下記の通りです
最近久しぶりにアルゴリズムイントロダクションを読んでいるのですが、ふと「Python(CPython)のデータ構造に関する各操作の計算量ってどれくらいなのかな?」と気になったので調べてみました。以下のページを参考にしています: Python Time Complexity 以下では $n$ や $k$ といった記号を使います。ここで $n$ はコンテナ内の要素数、$k$ はパラメータ内の要素数かパラメータの値とします。では見ていきましょう。 2021/05/02 コメントでのご指摘を記事に反映しました。ありがとうございます。 リスト まずはリストです。Pythonではリストは内部的にはC言語の配列として表しているようです。そのため、先頭要素の追加や削除を行うとそれ以降の要素をすべて移動する必要があるため大きなコストがかかります。なので先頭に要素を追加したり削除する必要がある場合は、代わりに
初めに 私はSESでエンジニアをしています。そのためいろいろな現場に参画して開発をすることが仕事なのですが、コメントを全く書かないどころかドキュメントもあんまりないという思想のチームに1年従事したときに感じた事を書いた記事です。 開発にはJava,Pythonを利用しているので、これらの言語でサンプルを記載しています。 良かったこと まずは良かったことです。大きく分けては 自身のコーディングスキルの向上 文章力の向上 の2点です。 自身のコーディングスキルの向上 コメントがまったくない。という状態でコードを書いていく場合には、変数名、メソッド名等の命名が非常に重要です。もはや命名さえちゃんとできればコーディング自体はそんなに大変でないといってもいいかもしれません。 SIerの案件ではコメントは多く書けという思想が多いです。そのため、これまでのコードは以下のような感じでした。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く