2019-09-01から1ヶ月間の記事一覧
最近、Pythonでコードを書いていて、薄々「継承で使うのはmix-inクラスだけでいいんじゃないか」と感じています。ここでいうmix-inクラスというのは、以下の記事で述べられているような「インスタンス変数を含まず、メソッドのみを持つ多重継承用のクラス」…
Pythonはドキュメントが整備された言語ですが、専門的な用語も多く「結局この機能をどう使えば良いんだ」と思ってしまうことがあります。 この間同僚と abc モジュールの話になり、「結局何のメリットがあんのや」という話になりました。私は abc.ABC を使う…
今日は @classmethod と @staticmethod の使い分け方が話題になりました。私はなんとなく「コンストラクタが複数ある場合は @classmethod を使う」ようにしています。ただ、他の使い道も自分が知らないだけであるんじゃないかと思い、少し調べてみました。 …
会社のコードレビューで、同僚のコードが少しクラス設計が微妙だった(委譲で十分なのに継承でわかりづらくしていた)ことを指摘したことがあります。「こういう場合は委譲ではなく継承を使うべき」という指針として「リスコフの置換原則」や「is-a関係」を…
すごく優秀で論理的な考え方をする人でも、自己認識(自己評価)はとんでもなくて「あいつは俺のこと嫌いだから」とか「あの人は不勉強だから」みたいな雑なレッテルを貼っていて、他の人が客観的に見るとその人のそういう態度に戸惑っているだけということ…