1 Введение в спецификации
В этой спецификации в основном предусмотрены правила и меры предосторожности, которые Delphi Source Rolarch должны следовать в процессе написания. Цель написания этой спецификации состоит в том, чтобы поддерживать поддержание привычек написания исходного кода разработчиков программного обеспечения компании. Это, чтобы каждый участник группы мог понять код других членов группы, чтобы облегчить вторичное разработку технического обслуживания системы памяти исходного кода.
2 Формат единицы
2.1 Основные требования
2.1.1 СДАРТАЦИЯ
В отступление - это два пространства, подвергшихся воздействию повышения читаемости при изменении уровня исходной программы. Правило отступа состоит в том, чтобы отступить два пространства для каждого уровня. Вкладка не допускается. Потому что вкладка будет создавать различные эффекты из -за разных настройки, сделанных пользователем. Когда вы сталкиваетесь с началом или вводите суждение, цикл, обработка исключений, с заявлением, объявлением типа записи, декларацией класса и т. Д., Добавьте один уровень. Классовые объявления и т. Д. Будут уменьшены на один уровень.
2.1.2 Начнется… конец
Заявление BEGIN и END оператор должны занять одну строку в исходной программе, например:
для i: = от 0 до 10 начинается // неправильное использование
конец;
для i: = от 0 до 10 DO // Правильное использование
Начинать
конец;
2.1.3 пространства
Добавьте места на обоих концах операторов и символах логического суждения, такие как: i: = i + 1;, A и B и т. Д.
Но при добавлении кронштейнов нет места.
Например: if (a> b) и (
if (a> b) и (a <c), затем // Правильное использование
2.1.4 переменные
Старайтесь не использовать сокращения, попробуйте использовать существительные.
Все глобальные переменные в модулях должны быть предварительно профиксированы с «F». Если между несколькими модулями требуется обмен данными, он должен быть реализован путем объявления атрибутов.
2.2 Описание блока
При создании нового файла модуля сначала настройте описание устройства в следующем формате.
{********************************************* ******** *******
Авторские права? (C)? 2000-2004? ********* Отдел технического развития компании
Проект: --- Проект, которому принадлежит этот блок
Модуль: --- функциональный модуль, к которому принадлежит этот блок
Опишите: --- Функция этого блока
Автор: --- Создать
Дата: --- Дата создания
Номер версии версии:
Модификация истории: --- Модифицировать историческую область
{******************************************
Изменить нет: --- Изменить номер
Модификатор: --- Модифицировать
DateTime: --- Изменить время
Причина: --- Причина модификации
Изменить нет: --- Изменить номер
Модификатор: --- Модифицировать
DateTime: --- Изменить время
Причина: --- Причина модификации
**********************************************
********************************************* ******* *****}
2.3 Описание процессов и функций
{********************************************* ******** *******
PrceDureEname/FunctionName:
Ввод: A --- Описание параметра ввода, B --- Описание ввода параметра, C --- Описание ввода параметров
Вывод: x --- Описание выходного параметра
Const: S --- Постоянное описание, T --- Постоянное описание
var: x --- Описание переменной, J --- Описание переменной
Опишите: ---- Описание функции
Если процесс или функция не записаны создателем устройства, добавьте следующие элементы позже:
Автор:
Дата:
********************************************* ******* *****}
3 Наименование элементов управления
Название управления может использоваться со следующей сокращением, но используемое аббревиатура добавляется между именем управления '_':
Стандартная вкладка
ММ ТМАЙНМЕНУ
PM TPOPUPMENU
MMI Tmainmenuitem
PMI Tpopupmenuitem
LBL Tlabel
EDT TEDIT;
Mem tmemo
Btn Tbutton;
CB Tcheckbox
RB Tradiobutton
lb tlistbox
CB TCOMBOBOX
SCB Tscrollbar
ГБ TGROUPBOX
RG Tradiogroup
PNL Tpanel
Cl tommandlist
Дополнительная вкладка
SG TSTRINGGRID
DG Tdrawgrid
Img Timage
SHP Tshape
bvl tbevel
SBX TScrollbox
CLB Tchecklistbox
Spl Tsplitter
STX TSTATICTEXT
Cht Tchart
Win32 Tab
TBC TtabControl
PGC TpageControl
Ил Тимэгелист
повторно
TBR TTRACKBAR
PRB TPROGRESSBAR
Ud Tupdown
HK Thotkey
Ани Танимат
dtp tdateTimepicker
телевидение TTREEVIEW
lv tlistView
HDR Theadercontrol
STB TSTATUSBAR
TLB Ttoolbar
Clb tcoolbar
Система вкладка
tm?
Pb ?? Tpaintbox
MP? TmediaPlayer
OLEC? TOLECONTANER
ddcc? tddeclientConv
ddci? tddeclientitem
ddsc? tddeserverconv
ddsi? tddeserVeritem
?
Вкладка образцов
GG ??
CG ??
SPB?
spe?
Дол?
Cal?
IBEA?
?
Вкладка ActiveX
CFX?
VSP ??
f1b ??
VTC ??
grp ??
?
Win31 Tab
DBLL ??
DBLC ??
ts ????
Ол ????
TNB ??? Ttabbednotebook
nb ????
HDR ??? Theader
flb ???
DLB ???
DCB ??
FCB ??
Midas Tab
PRV ??
CD ??
QCD ??
DCOM?
Оли?
SCK ??
RMS ??
середина ??
Интернет вкладка
csk? tclientsocke
SSK? Tserversocket
WBD? TWEBDispatcher
pp ??? tpageproducer
TP ??? TqueryTableProducer
DSTP?
nmdt ?? tnmdaytime
nec ??? Tnmecho
nf ???? tnmfinger
nftp ??? tnmftp
nhttp ?? tnmhttp
nmsg ?? tnmmsg
nmsg ?? tnmmsgserv
nntp ??? tnmnntp
npop ??? tnmpop3
nuup ??? tnmuuupocessor
SMTP ??? TNMSMTP
nst ???? tnmstrm
ns ??? tnmStrmserv
ntm ??? tnmtime
nudp ?? tnmudp
PSK ??? Tpowersock
ngs ??? tnm GeneralServer
html?
URL?
Sml ?? Tsimplemail
Вкладка доступа к данным
DS?? Tdatasource
TBL?? Ttable
qry??
sp?
DB ?? Tdatabase
SSN?? Tsession
BM ?? Tbatchmove
USQL ?? TupdatesQL
Вкладка «Управление данными»
DBG?? Tdbgrid
dbn ?? Tdbnavigator
DBT ?? TDBText
dbe?
DBM?? Tdbmemo
DBI?
dblb ?? tdblistbox
DBCB?
DBCH?
dbrg ?? tdbradiogroup
dbll ?? tdblookuplistbox
dblc ?? tdblookupcombobox
dbre?
dbcg ?? tdbctrlgrid
DBCH ?? Tdbchart
Вкладка «Решение куб»
dcb ?? tdecisionCube
dcq ?? tdecisionQuery
DCS?
DCP ?? TdecisionPivot
dcg ?? tdecisiongrid
dcgr? tdecisiongraph
Qreport Tab
QR ?? TQUICKREPORT
QRSD? TQRSUBDETAIL
QRB ?? TQRBAND
qrcb ?? tqrChildBand
qrg ?? tqrgroup
QRL ?? TQRLABEL
qrt ?? tqrtext
qre ?? tqreexpr
QRS?? TQRSYSDATA
qrm ?? tqrmemo
qrrrt ?? tqrrichtext
QRDR?? TQRDBRICHTEXT
qrsh ?? tqrshape
qri ??? tqrimage
qrdi?
qrcr??
qrp ?? tqrpreview
QRCH TQRCHART
Вкладка «Диалог»
Opendialog ????????
Savedialog ??????? tsavedialog
OpenPicturedialog? Topenpicturedialog
SavePicturewenalog?
Fontdialog ????????? tfontdialog
Colordialog ??????? tcolordialog
Printdialog ???????? tprintdialog
Printersetupdialog?
Finddialog ?????????? tfinddialog
Заменил?
4 Запрос на модификацию
4.1 Измените историю записи
При внесении утвержденных изменений в исходный файл модификатор должен добавить элемент истории модификации в заголовок файла программы. В каждой последующей модификации модификатор должен заполнить следующую информацию в элементе:
Модификатор:
DateTime:
Причина:
Комментарий:
4.2 Добавить новую строку кода
Новая строка кода должна была прокомментировать строки до и после.
// AB Modify Person;
Добавлена строка кода
// ae
4.3 Удалить строку кода
Используйте строки комментариев для описания до и после удаления строки кода.
// DB изменение человека, время изменения, инструкции по изменению.
// строка кода, которая должна быть удалена (комментарий к удалению утверждения)
// de
4.4 Измените строку кода
Измените строку кода, чтобы удалить строку кода и добавить новые строки кода.
// МБ изменяйте человека, время изменения, инструкции по изменению.
// предварительная строка перед модификацией
Модифицированная строка кода
//мне
5 Наименование файлов
Файл проекта должен использовать значимое имя. Например: файл проекта для системной информации в Delphi называется sysinfo.dpr.
3.7.2 Форма Файл
В соответствии с именем формы: например: если имя формы является frrmmain, то имя файла формы - frmmain.dfm. Соответствующий файл блока - frmmain.pas
3.7.3 Файл модуля данных
Наименование файла модуля данных должно иметь смысл и использовать «DM» в качестве префикса. Например: модуль пользовательских данных называется «dmcustomers.dfm». Соответствующий файл блока rdmcustomers.pas
3.7.4 Файл модуля удаленного данных
Имя файла удаленного модуля данных должно иметь смысл и использовать «RDM» в качестве префикса. Например: модуль удаленных данных пользователя называется «rdmcustomers.dfm». Соответствующий файл блока rdmcustomers.pas
3.7.5 Обычные файлы единиц
Наименование файла устройства должно иметь смысл и использовать «U» в качестве префикса. Например: универсальный блок называется «ugeneral.pas».