Уголок Программиста

Добавить
в Избранное

Уважаемые Посетители!

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

Alex_soldier              
(alex_soldier@mail.ru)    
Главная Материалы Методики Проекты

РАЗДЕЛЫ САЙТА

Главная страница Мира Идей

Статьи о Космосе и Вселенной

Каталог   Лучших   Рассылок

Лаборатория WEB-мастера
Уголок Программиста
Игровая Зона

Правила оформления кода

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

Итак, некоторые соглашения, которых следует придерживаться при выполнении заданий:


0. Использование библиотек сторонних разработчиков
Поскольку у каждого участника команды своя версия Delphi, свои предустановленные пакеты и свои предпочтения, необходимо обеспечить полную совместимость кода. А это возможно только с помощью стандартных средств. Тем не менее этот вопрос обсуждаем, т.е. если что-то поможет реально сократить проект, это обязательно будет учтено!


1. Структура проекта
Проект строится по блочно-модульному принципу. Идет разделение на 3 слоя: Интерфейс, События, Действия.

Интерфейс - модуль содержит только формы и вызовы событий, закрепленных за объектами.

События - модуль содержит процедуры, являющиеся шаблоном реакции на каждое событие.

Действия - собственно, модули с программным кодом каждого пункта реакции на событие.

Получается что-то вроде шаблона проектирования MVC (Model View Controller)

Структура модулей проекта такова:

[+] Проект (одна или несколько форм)
[  ] => event.pas - "События" (вызовы реакции на события)
[  ] ===> eng.pas - "Движок" (управляет визуальной частью)
[  ] ===> act.pas - "Действия" (управляет обработкой данных)
[  ] ===> sta.pas - "Статистика" (подсчет частоты событий)
[  ] ===> lib.pas - "Библиотека" (код из прошлых проектов)



2. Шаблон подпрограммы-События
Каждому событию соответствует несколько действий. Первые два всегда будут: сбор статистики (увеличить счетчик данного события) и "движок" (т.е. открыть окошки, вкл/откл опции или пункты меню и т.д.).

Символ "#" я использую для маркировки неготовых фрагментов, а символ "+" - для пометки сделанных.


3. Шаблон подпрограммы-Действия
На этом уровне следует особенно строго подойти к стилю написания кода, что в случае обнаружения ошибки быстро выявить, в какой части она произошла.


4. Именование подпрограмм
Собственно, по поводу этого вопроса не стоит озадачиваться, т.к. я задаю их имена при проектировании. Собственно, выбирая задание, вы просто сообщаете мне имя выбранной подпрограммы.


5. Именование переменных и констант
Здесь я ни в чем не собираюсь вас огроничивать, поскольку все переменные являются локальными. Единственная просьба - давать им все-таки осмысленные имена.


6. Глобальные переменные и константы
Здесь ситуация чуть интересней. Эти сущности в некоторов колическтве обязательно будут присутствовать в проекте. Имена у них, как правило, получаются весьма длинными. Чтобы не набирать каждый раз вручную, можно ввести префиксы в начале имен и воспользоваться автоподстановкой по первым буквам. Почти Венгерская нотация (Hungarian Notation) с небольшими доработками:


7. Использование объектов
Как и в случае с локальными переменными, здесь не будет ограничений. Единственно: если вы создаете объект, то не забудьте в конце его уничтожить и освоботить память. Использование глобальных объектов обговаривается отдельно.




Мир Идей:
∙ Форумы ∙
∙ Космос ∙
∙ Heroes ∙
∙ Зона И ∙
∙ WEB ∙
∙ AML ∙
∙ Program ∙
∙ Каталог ∙


(C) Copyright 1998 – 2006 by Alex_soldier

Сайт сделан по технологии AML