외부 라이브러리 사용 시 비즈니스 로직과 분리
- 외부 라이브러리 사용하는 경우 언제든 라이브러리 교체가 가능하도록 분리해둘것.. (이 시점까지도 라이브러리 교체는 없었지만..;)
- 라이브러리 유틸 <---> 구현체(라이브러리 유틸 참조 및 인터페이스 구현) <---> 비즈니스 로직 인터페이스
190423
SFTP 파일 배포, SSH Command 실행부분의 jSch 라이브러리 사용 로직 통합
- 인터페이스를 사용하기엔 두 기능에 대한 세션 연결 코드가 일치함 (중복)
- 다르게 구현되어야할 기능은 채널 open/close와 send(file)/run(command)
- 세션 연결 코드는 공유하면서 다르게 구현할 부분만 구현할 수 있는 방법을 찾아야..
- 방법은 추상 클래스 -> 추상 메소드는 채널 open/close, 구현 메소드는 세션 connect/disconnect
- send(file)/run(command) 기능은 각각 상속받을 SSH, SFTP 관련 클래스에서 따로 구현