Я пишу архитектурный и дизайнерский документ для разработки программного обеспечения в нашей компании, который будет содержать правила и рекомендации для разработчиков. Он ориентирован на веб-приложения J2EE, но я постоянно упоминаю одни и те же базовые «ингредиенты» (из-за отсутствия лучшего слова и во избежание слов), чтобы вводить и защищать определенные варианты.Документ ключевых компонентов хорошей разработки программного обеспечения?
К ним относятся следующие:
- Абстракция: сосредоточив внимание на «что» вместо «как».
- Инкапсуляция: сокрытие «как».
- Разделение проблем: деление на отдельные неперекрывающиеся структуры.
- Низкое сцепление и высокая степень сцепления: использование любых разделов.
Преимущество включения их в то, что, когда документ не упоминает что-то конкретно, легко указать на эти ключевые ингредиенты, чтобы они служили своего рода уловкой.
Недостатком были бы такие реакции, как «Да, отлично, но мне просто нужно знать, какой класс мне нужно расширить для реализации этого контроллера».
Я правильно определяю и обсуждаю эти общие проблемы во-первых, или я должен просто «придерживаться точки»?
Я согласен, идея «заставить кого-то написать документ, который сделает всех других парней лучше кодеров», просто не будет делать эту работу. – NeedHack
@Carl Хорошие баллы, но в группе 15+ вам нужна форма документации, как резервная копия, иначе все могут понравиться. Вам нужно заранее изложить некоторые правила, иначе вы просто будете обсуждать/исправлять вещи после фактов, что является более дорогостоящим. – eljenso
@Chris Это не о других парнях, это о том, чтобы облегчить работу * моей *, поскольку я ленивый :) Я не пытаюсь улучшить мир, я просто хотел знать, если листинг некоторых общих принципов в документе будет быть полезными, чтобы избежать или разрешить некоторые обсуждения. – eljenso