예전에 java로 구현해본 자료구조랑 알고리즘을
python으로 다시 작성해보고있습니다.
python을 분석이랑 간단한 스크립트 용으로만 사용하다보니
java로 구현한걸 그대로 옮길려니깐 추상화 쪽이 조금 막히네요
예를들면 폴더 구조가
graph/
__init__.py
graph_base.py <-- abstract class만 정의 돼있음
directed_graph.py <-- 구상 클래스 정의
undirected_graph.py <-- 구상 클래스 정의
이고,
directed_graph.py 를 보면
from .graph_base import GraphBase
class DirectedGraph(GraphBase):
...
이런식으로 작성할려고하는데 이게 맞는건가요?
보통 어떤식으로 작성하는지 알고싶습니다.
뭐 니맘이긴 한데 나누는게 낫긴 하지.
https://github.com/networkx/networkx/tree/master/networkx/classes
참고해라
크 ㄳㄳㄳ
python에서 추상 클래스 정의하려면 ABC를 상속했던 거 같음
클래스를 안 쓰고 기본 자료구조만 쓰기