Совместная работа над проектом
Современные интернет-приложения сложны и, как правило, в их разработке участвует несколько человек. Для взаимодействия разработчиков между собой служат так называемые системы контроля версий (VCS-VersionControlSystem, другая распространенная аббревиатура -RCS,RevisionControlSystem). Существует несколько систем контроля версий:CVS,SVN,GIT. Независимо от конкретной реализации, все они выполняют следующие функции:
Версионность файлов. Фиксация произведенных данным разработчиком изменений по шагам. Возможность откатить каждое зафиксированное изменение по отдельности либо несколько последовательно проведенных изменений.
Слияние результатов нескольких разработчиков в единую версию, разрешение конфликтов.
Поддержка ветвей. "Ветви" можно определить как "версии приложения" (в отличие от "версий файлов"). Они позволяют вносить значительные изменения, не трогая основную версию приложения. "Версии файлов" существуют внутри "ветвей".
На следующем рисунке показана разница между "версиями" и "ветвями". C0 - начальныйcommit, самая первая версия некоего приложения. Пусть приложение состоит из одного файла -main.cpp. До точкиC2 включительно существуют версии этого файла. То есть, были некие изменения - их зафиксировали при помощи операцииcommitи, при необходимости, эти изменения могут быть отменены. ПослеC2 существуют уже 2 раздельных ветви этого файла. Предположим, Вы вносите новый функционал. Текущую ветку приложения -master- Вы при этом не трогаете, она установлена и работает. Новые функции добавляются в ветку, которая называетсяiss53. Коммитов, разумеется, может быть сколь угодно много, на приведенном рисунке их 2 (C3,C5). После того, как новый функционал отлажен - его можно объединить с ранее имевшейся веткойmaster, что продемонстрировано точкойC6.
Репозиторий позволяет нескольким программистам совместно работать над одними и теми же текстами программ, не мешаясь друг другу. На определенном этапе развития проекта одного только репозитория может оказаться недостаточно. Кроме того, репозитории, как правило, плохо предназначены для совместной работы с бинарными файлами. Поэтому крупные проекты, как правило, кроме системы контроля версий, используют и другие программы, позволяющие организовать совместную работу над проектом: менеджеры задач, системы организации совместного доступа к документам и так далее.
-
Содержание
- Оглавление
- Введение.
- Предмет рассмотрения данного курса.
- Одно-, двух- и многоуровневые приложения.
- Интернет.
- Адрес в интернете
- 2001:0Db8:11a3:09d7:1f34:8a2e:07a0:765d
- Имя в интернете
- Службы (сервисы)
- Сокета.
- Что такое "сокета" (socket) ?
- Создание серверной сокеты (пример на языке c).
- Сериализация
- Основы верстки: таблицы
- Основы верстки: фреймы
- Основы верстки: позиционирование участков сайта
- Протокол http
- Структура запроса (Request).
- Структура ответа (Response).
- Перспективы развития http.
- Интернет-приложения
- Web-приложения
- Web-сервисы
- Особенности проектирования
- Особенности пользовательского интерфейса
- Программирование интернет-приложений
- Объектно-ориентированное программирование
- Классы и объекты
- Жизненный цикл класса
- Статические члены класса
- Инкапсуляция
- Наследование
- Полиморфизм
- Интерфейсы
- Событийно-ориентированное программирование
- Совместная работа над проектом
- Технологии создания web-клиентов
- Dom (Document Object Model)
- Каскадные таблицы стилей
- JavaScript
- Обфускация и динамическое получение скриптов
- Java Applets
- ActiveX/npapi
- Adobe Flash
- Web-серверы
- Nginx (engine X)
- Технологии, применяемые на стороне сервера
- ИнтерфейсCgi
- КонцепцияMvc
- Сервлеты
- JavaScript
- Хранение данных