Skip to content
This repository has been archived by the owner on Oct 18, 2018. It is now read-only.

Разработка спецификации #1

Open
etki opened this issue Nov 12, 2014 · 6 comments
Open

Разработка спецификации #1

etki opened this issue Nov 12, 2014 · 6 comments

Comments

@etki
Copy link

etki commented Nov 12, 2014

Нам нужно придумать общую спецификацию проекта - простенькое описание функционала, который мы будем реализовывать.

Самые очевидные вопросы, которые вертятся у меня в голове, звучат так:

  • Какие минимальные возможности должен предоставлять блог (делятся ли пользователи на роли админ - писатель - читатель, или существуют только админы и анонимы; нужны ли нам теги к записям; нужна ли история ревизий постов и т.п.)?
  • Какую роль будет принимать javascript в отображении? (никакой / только анимация / анимация и аякс / rest api + рендеринг на js)
  • Если выбирается последний пункт в предыдущем вопросе, то достаточно ли мы хардкорны для риалтайм обновлений, или все-таки это стоит отодвинуть в дальний ящик и задуматься об этом, только если дело пойдет очень-очень жорошо?
  • Какие опции предоставляет админка?
  • Будем ли мы кэшировать?
  • Нам интересно построить игрушку для тестирования или реально рабочую платформу?
  • Достаточно ли у нас сил, чтобы попытаться запихнуть это в отдельный контейнер, который будет ставиться сам по себе?

(вообще я уже за этот короткий список написал столько функционала, что полностью его у нас вряд ли получится реализовать)

При желании можно отталкиваться от этого проекта (в папке HTML можно посмотреть визуальное представление)

Страница вики (можно редактировать прямо на ходу, ничего страшного не будет)

@vania-pooh
Copy link

@etki вы, кажется, решили серьезно покодить судя по списку фич. :) Советую посмотреть книжку по software estimation и трезво оценить свои усилия. Времени будет примерно 1.5 месяца или чуть больше. Больше упора советую сделать на тесты и CI, т.к. целью школы является именно автоматизация разработки. Я бы сделал так:

  • Написать минимальный прототип блога с минимумом функциональности
  • Добавлять новые фичи отдельными PR, когда основное будет готово

@etki
Copy link
Author

etki commented Nov 14, 2014

@vania-pooh да я люблю мечтать, да

@vania-pooh
Copy link

👍 всегда нужно мечтать, иначе ничего не сдвинется с места.

@pacahon
Copy link
Contributor

pacahon commented Nov 17, 2014

У меня вопросы по https://github.com/autoschool/splinter/wiki/Specification

  1. Не думаю, что дорастём до api версии 2, но всё же. Будем в пространство /admin/ помещать такие урлы?
  2. Пользуясь best practicies используют же вроде обычно
    /admin/posts для коллекций и /admin/posts/{sid} для конкретного поста.
    Соответственно POST для /admin/posts/{sid} должен вернуть 405 заголовок. PUT обновить. Хотя это теория, на практике сейчас спокойно можно PUT отсылать? Или PUT реализуют через POST?
  3. Шаблончики натырим из бесплатных бутстраповских шаблонов или сначала прототип рисовать будем, потом сами набирать? ИМХО, я бы на это не стал время тратить. Просто выбрал бы что-нибудь из существующего по запросам bootstrap blog templates и bootstrap admin templates.

@etki
Copy link
Author

etki commented Nov 18, 2014

@pacahon > Пользуясь best practicies используют же вроде обычно
/admin/posts для коллекций и /admin/posts/{sid} для конкретного поста.
Соответственно POST для /admin/posts/{sid} должен вернуть 405 заголовок.

Вообще да, но у нас не полноценный rest с js-фронтэндом. Можно попробовать, я просто не знаю, как это со стороны бекенда будет выглядеть.

@etki
Copy link
Author

etki commented Nov 29, 2014

Итого: на девелопмент сейчас уходит слишком много времени, его сложно (и, наверное, не нужно) планировать надолго. Проще всего, наверное, будет использовать систему issue как таск-трекер, в котором каждый может по лейблам выбрать свободную задачу, закрепить ее за собой (lock issue) и выполнить. Таск-трекер набивать по мере продвижения интеграции / разработки.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants