Сегодня общаясь с другом Максимом получил по средством ушей информацию о том, что сейчас стало модным использовать собственные решения, вместо уже готовых, особенно это касается разработки систем авторизации, аутентификации. Другими словами, вместо Devise и Cancan становится модным создавать собственные решения.
Рассмотрим все плюсы и минусы использования чужих и своих решений.
Плюсы решений сторонних разработчиков:
- Значительная экономия времени на разработку.
- Вы получаете уже протестированное и проверенное решение.
- Вы получаете поддержку со стороны сообщества разработчиков по вопросу использования решения. У того же Devise есть собственное сообщество, где можно решить все проблемы, задать вопросы.
Плюсы собственных решений:
- Вы отлично знакомы с кодом своего решения и вам не нужно изучать чужое решение.
- Собственное решение является более органичным относительно приложения.
- Собственное решение — решение исходя из ваших собственных желаний, которое не накладывает на вас ограничений и полностью реализует такую архитектуру какую вы представляете.
Минусы сторонних решений:
- На пользователей сторонних решений накладываются некоторые ограничения.
- Сторонее решение невсегда хорошо вписывается в архитектуру приложения.
- Очень часто требуется очень сильно дописывать строронее решение.
- Требуется время на изучение стороннего решения.
Минусы собственных решений:
- Необходимо относительно значительное время на разработку, тестирование, исправления и рефакторинг собственного решения.
Честно говоря, мне больше нравится вариант, когда собственные решения комбинируются со сторонними. Например, мне не придет идея писать свой фреймворк, однако мне пришла идея писать свою CMS на Rails и скорее всего в ней будет использоваться собственное решение для авторизации и аутентификации, однако много чего будет взято со стороны: JQuery, возможно Apotomo и т.д.
Очень интересно мнение читателей по поводу использования своего решения или стороннего.