Как на самом деле работают веб-сайты в реальном мире?
Вы провели уже достаточно времени, изучая компоненты, из которых состоит веб-приложение. В проекте Rails, вы сделали (надеемся) собственное. Этот урок позволит вам вздохнуть с облегчением и взглянуть на все со стороны, не погружаясь в детали.
Вы будете создавать приложения для себя, или, может быть, для кого-то еще. В любом случае эти приложения будут частью большего проекта, нацеленного на пользователя, например, вы подумали над тем, чем ваш пользователь будет там заниматься? Очевидно, что приложение - только часть чего-то большего и в реальном мире вам придется взаимодействовать с многими людьми на пути к его созданию.
Мы упоминали, что Rails позволяет разрабатывать приложения очень быстро, также мы упомянули термин "Гибкая разработка (Agile Development)", сейчас у вас есть шанс познакомиться с ним поближе и узнать что он означает. Также, вы узнате о том, как построен процесс разработки в компаниях.
Может быть вы учитесь веб-разработке для создаия стартапа вашей мечты или, возможно, чтобы угодить клиенту. В любом случае, понимание того почему или что вы создаете - одна из важнейших частей разработки продукта, которой нельзя пренебрегать.
Пункты для размышления
Постарайтесь ответить на предложенные вопросы. После выполнения задания попробуйте ответить на них ещё раз
- Какие основные компоненты Rails приложения?
- Что такое Каскадная разработка (Waterfall development)?
- Для чего хороша Каскадная разработка?
- Что такое Гибкая разработка (Agile development)?
- Для чего хороша Гибкая разработка?
- Почему тестирование хорошо подходит к методике Гибкой разработки?
- Что означает DRY?
- Что такое "Роль (Role)" пользователя?
- Что такое "Сценарий Пользователя (User Story)"?
- В чем разница между Фичей (Feature) и "Сценарием Пользователя (User Story)"?
- На какой стадии становления стартапа следует начинать строить веб-приложение?
- Какие члены команды обычно работают сообща, чтобы создать приложение?
Задания:
- Вспомните, как работают веб-приложения The Anatomy of a Web Application (вы можете прослушать аудио, кликнув на ссылку слева) обратите особое внимание на разделение обязанностей между сервером и клиентом. Статья рассказывает о внутренностях работы Rails, что будет полезно для вашей дальнейшей работы.
- Получите обширное представление о методологиях разработки, начните с 36 минуты лекции по SAAS от Беркли (Berkeley). Вы также узнаете, почему Rails хорошо подходит для Гибкой разработки (Agile development).
- Прочитайте ответ Ли Эдвардса (Lee Edwards) на Quora "What's an Efficient Web App Development Process" чтобы быть в курсе современного процесса разработки. Ли Эдвардс - разработчик Pivotal Labs, использующих Гибкую методологию.
- Получите общее представление о стартапах и компаниях, занимающихся веб-разработкой, прочитав ThoughtBot Playbook, интерактивную брошюру о том, как создать продукт (и работать с консультантами ThoughtBot, конечно).
Дополнительные ресурсы
Этот раздел содержит полезные ссылки на дополнительные материалы. Они не обязательны, так что расценивайте их как нечто полезное, если вы хотите поглубже погрузиться в тему
- RailsApps' brief guide to Startup Project Management содержит полезные инструменты, ссылки и терминологию.
- Получите более общее представление о Гибкой методологии (Agile development) из About.com Agile Development entry.