АЦРК система іменування змінних

Префікси імен змінних у програмних модулях

Правила іменування змінних розробки змін на платформі 1С:Підприємство 7.7.

Префікс відокремлюється від основного імені змінної символом «_» для кращого читання програми.Гл_ - глобальна змінна, процедура або функція. Описана у глобальному модулі з ключовим словом ЕКСПОРТ.м_ - змінна, описана явно чи неявно у поточному програмному модулі. Рекомендується завжди явно описувати змінні модуля на початку тексту модуля за допомогою оператора Перем.л_ - змінна, описана явно чи неявно у поточній процедурі чи функції. Рекомендується ніколи явно не описувати локальні змінні процедур та функцій, а створювати їх за допомогою оператора присвоєння, наприклад: л_НомерРядки=0.п_ - параметр поточної процедури або функції.рд_ – реквізит діалогу. Описаний у формі діалогу.яч_ - осередок таблиці в режимі введення даних. Визначено у таблиці. Може використовуватися в тексті програми як змінні. Є первинним осередком та/або групою сусідніх осередків, об'єднаних командою "об'єднати осередки". Являє собою єдину неподільну одиницю введення та/або відображення інформації в таблиці.від_ - область таблиці. Визначено у таблиці. Являє собою групу осередків таблиці. Використовується, як правило, для форматування осередків області. Відсутність префікса означає, що змінна є реквізитом того об'єкта (довідника, документа, …), модулем якого є фрагмент програми. Як наслідок, у модулях звітів та обробок, у тому числі зовнішніх, не повинні зустрічатися змінні без префікса.

Правила іменування зміннихрозробки змін на платформі 1С:Підприємство 8.

Гол_ - глобальна змінна, процедура або функція для основного режиму конфігурації. Описано в модулі програми з ключовим словом ЕКСПОРТ.ГлВС_ - глобальна змінна, процедура або функція для роботи конфігурації в режимі зовнішнього з'єднання. Описана в модулі зовнішнього з'єднання з ключовим словом ЕКСПОРТ.м_ - (змінна модуля) змінна, описана явно чи неявно у поточному програмному модулі. Рекомендується завжди явно описувати змінні модуля на початку тексту модуля за допомогою оператора Перем.л_ - змінна, описана явно чи неявно у поточній процедурі чи функції. Рекомендується ніколи не описувати локальні змінні процедур і функцій, а створювати їх за допомогою оператора присвоєння, наприклад: л_НомерРядки=0.п_ - параметр поточної процедури або функції.рф_ - реквізит форми. Визначено як реквізит форми (на закладці «Реквізити»). Відсутність префікса означає, що змінна є реквізитом того об'єкта (довідника, документа, …), модулем якого є фрагмент програми. Як наслідок, у модулях звітів та обробок, у тому числі зовнішніх, не повинні зустрічатися змінні без префікса.

Коментар. Давно користуюся цією системою і вже не можу з нею розлучитися. Природа префіксів - "за місцем народження" змінною. Префікс відмінно доповнює зміст, який можна дізнатися з імені змінної. Тому що завжди корисно знати, чи є змінна локальною або оголошена в модулі або це параметр процедури (функції) або взагалі є реквізитом об'єкта, до якого модуль відноситься. Коли писав на 7.7 ​​до цієї системи, був у мене випадок (і потім ще пара випадків, коли іншим допомагав), коли оголошено змінну вмодулі форми та з таким самим ім'ям реквізит діалогу на формі. Вперше дуже важко знайти таку помилку. При використанні префіксів таке просто неможливо. Коли до мене зверталися за допомогою у пошуку помилки і показують модуль без префіксів, я часто говорю: "префіксів немає, тому й не працює". І насправді помилка знаходиться сама, варто лише розставити префікси у модулі. Ну, не всі помилки, звичайно, а ті, які не дозволяли рухатися далі.

Для 8-ки майже все те ж саме, що і для 7.7. Тільки 8 реквізит діалогу відокремлений від даних, тому префікса "рд_" немає. Звернення до елементів форми можливе лише через властивість форми "ЕлементиФорми", так що префікс не потрібен, і так ні з чим не сплутаєш. Проте у формі можуть бути реквізити (які визначені на закладці форми "реквізити"). Для них префікс "рф_". Ще поки не довелося користуватися префіксами "Гл_" і "ГлВС_" - для цього треба конфігурацію з нуля писати.

Хотів ще суфікси ввести, "Посилання" та "Об'єкт". Але не прижилися: писати довго, і хоч для сенсу вони дуже корисні, але гострої проблеми немає. Тому я їх використовую, але тільки у випадках, коли це необхідно, тому в систему обов'язкового застосування вони не записані. Але потрібні вони досить часто, тому що все-таки важливо розуміти, що змінна "л_Контрагент", наприклад, є "л_КонтрагентПосилання" або "л_КонтрагентОб'єкт".

8 правда трохи заважає застосуванню цієї системи. У 8-му помічник введення текстів набагато потужніший, ніж у 7.7. Наприклад, при вставці наперед визначених процедур модуля ми отримуємо заголовок процедури разом з параметрами, які, на жаль, без префіксів «п_». І ставити їх мені іноді ліньки, Тому в моїх текстах можна зустріти невеликі процедури без префіксів, якщо дуже поспішаю. Але вздебільшого все-таки змінюю. І що більше і складніше текст процедури, то більше важливо поставити префікси параметрів.

Зараз і розробники 1С стали використовувати префікс "м" у змінних модулях, щоправда, без підкреслення. На мій смак із підкресленням краще. Але все одно коли читаєш текст якоїсь процедури (функції) і відразу не розумієш, локальна це змінна, параметр процедури (функції) або реквізит об'єкта у мене виникає роздратування. Ну якщо вже дійшли префіксу "м_", то далі просто просяться префікси "п_" і "л_", на мій погляд, звичайно.