Я бы рекомендовал, если возможно, использовать проверенные библиотеки. Особенно для SSH-стороны SFTP - поскольку ошибки в реализации могут привести к уязвимостям безопасности.
Это, скорее всего, опытный человек, и вы можете обнаружить, что ни одна из библиотек (SharpSSH и т. Д.) Не является подходящей, вы должны рассмотреть возможность разделения своей реализации в свою библиотеку и открыть ее для две причины:
- Если это вам полезно, это может быть полезно для кого-то еще.
- Вы могли бы получить полезный обзор кода
Учитывая все это, другие руководящие принципы, чтобы следовать будет похож на другие события, но, возможно, с большей строгостью в отношении безопасности и тестирования. Убедившись, что вы запускаете статический анализ и что вы проверяете единицу для случаев сбоя.
Также: Используйте, но не доверяйте нижним уровням OSI model, которые предоставляются вам. Если есть сценарий, который разбивает ваш код, вы можете поспорить, что сеть найдет его в конце концов.
Надеюсь, это поможет.