Дизайн веб-проекта, в каком порядке строить вещи? - PullRequest
0 голосов
/ 24 февраля 2012

Мне нужна помощь, чтобы придумать хороший заказ для создания веб-приложения. Я создаю его в django.Это веб-приложение, которое будет иметь множество вещей, таких как голосование, лайки, создание списков, комментирование и т. Д. Поэтому, чтобы в будущем мои возможности оставались открытыми для простоты создания многоплатформенного веб-приложения, я думал о создании веб-сайта "API up».

Не уверен, что я использую правильные термины, но, по сути, я хочу построить все функциональные части, используя REST, например, чтобы комментарий понравился: url.com/api/like/commentID/user/Pass, где пользовательpass не является обязательным, поскольку он может использовать веб-сессию, если она есть.Как только я создаю функции (например, комментарии и т. Д.), Я планирую создавать представления и шаблоны поверх API (например, кнопка «Нравится» - это простая ссылка на функцию, подобную API).

Я думаю, что это немного отличается от моего обычного способа в том смысле, что мне обычно нужно иметь несколько методов, один для типа API, другой для форм представления / шаблонов и тому подобное.

По сути, я спрашиваю, было бы хорошей идеей создать сайт поверх вашего API?

1 Ответ

5 голосов
/ 24 февраля 2012

Сохраняйте это простым и глупым .

Начните с написания простого списка пользовательских историй - не переоценивайте свойпроект.Сгруппируйте их по приложению.Попробуйте разделить ваш проект на множество приложений, но не слишком много.

Управление сложностью - это сущность компьютерного программирования.- Брайан Керниган

Начните свой проект с Пинакс или что-то в этом роде.Так что вы получаете все управление пользователями / настройки / регистрация / etc / etc ... из коробки. Теперь вы можете сосредоточиться на том, что отличает ваш веб-сайт .

Отладка в два раза сложнее, чем в первую очередь писать код.Поэтому, если вы пишете код настолько умно, насколько это возможно, вы, по определению, недостаточно умны для его отладки.- Брайан У. Керниган и PJ Plauger in Элементы стиля программирования .

Код первой версии первого приложения, который должен включать несколько моделей , URL-адреса, представления, шаблоны и статические файлы.

Существует два способа конструирования программного обеспечения: один из способов сделать это настолько простым, чтоОчевидно, что недостатков нет, а другой способ состоит в том, чтобы сделать это настолько сложным, что очевидных недостатков нет.- CAR Hoare, лекция ACM Turing Award 1980 года

Отложить функции, которые не вписываются в стандартный способ кодирования Django (например, требуются хаки,раздувание кода и т.д ..).Максимально полагайтесь на внешние приложения, улучшайте их, а не изобретайте колесо.

Жизнь слишком коротка для запуска проприетарного программного обеспечения.- Bdale Garbee

Кодируйте другие приложения, снова постарайтесь сделать их простыми, если что-то слишком сложное, затем отложите это.

Самый дешевый,Самые быстрые и самые надежные компоненты - это те, которых нет - Гордон Белл

Затем вы должны иметь первую рабочую версию вашего проекта .Время прошло, пока ты это сделал.В зависимости от оставшегося времени, решает, какие из функций, которые вы отложили, наиболее важны для первого выпуска.

Основная задача ученого - не запутатьсясложности его собственного изготовления. "- EW Dijkstra

Сделайте первый релиз , хотя бы частный, ваш проект должен быть в производстве, и вы должны иметь преуспел в крайних сроках Код должен быть элегантным, а пользовательские истории реализованы как-то с простотой в коде. Настроить систему Rolling Release - то есть создать скрипт, который может выдвигатьот тестирования до производства.

И, ребята, давайте будем честными. Осетр был оптимистом. Намного больше, чем 90% кода - дерьмо . "- Аль виро

Теперь вы готовы работать над более сложными вещами .Но не забывайте: использование вашего сайта (пользователи и бизнес-модель) теперь должно диктовать приоритеты .У вас должен быть вменяемый проект , который развивается сам по себе.

Это любопытная вещь в нашей отрасли: мы не только не учимся на своих ошибках, мы также не делаемучитесь на наших успехах. "- Кейт Брейтуэйт

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...