Терминология в отношении программирования на платформе 1С

1С КонфигураторНачав осваивать работу с 1С:Предприятием у многих людей в голове возникает полный винегрет с терминологией. Каждый подразумевает свое. Если говорить о конечных пользователях, то тут можно понять, что им абсолютно безразличны понятия платформы 1С:Предприятия и конкретных конфигураций — прикладных решений. Если конечный пользователь путает понятие «Конфигурация» и «Платформа», называя все это просто «1С», не стоит тратить силы и нервы, чтоб ему втолковать различия, если он не хочет их воспринимать.

Сложности в разделении понятий на начальном этапе возникают именно у программистов. Особенно у тех, кто уже имеет опыт разработки программного обеспечения с использованием традиционных средств разработки. Подойдем к этому вопросу именно с точки зрения программиста.

Спросите программиста 1С, на чем он пишет программу. Получите ответ: «На 1С.» Спросите пользователя, например бухгалтера, на чем он работает. Получите аналогичный ответ: «На 1С.» Глядя на программный код на встроенном языке 1С:Предприятия, задайте вопрос на чем это написано. Так же получите ответ: «На 1С.» У неопытного человека уже на этом этапе в голове возникает путаница. Опытный программист 1С прекрасно понимает, что каждый под, вроде бы одинаковым ответом, понимает исключительно что-то свое.

Пойдем дальше. Загляните на сайты по подбору персонала. В описании требований к бухгалтеру можно встретить формулировку подобного вида: «Требуется бухгалтер с опытом работы на 1С.» Или в описании требований к соискателю на должность программиста: «требуется 1С программист на полный рабочий день…» Это я привел самые мягкие и понятные варианты. Иногда встречаются такие формулировки, что «без пол литра» не понять что на самом деле имел в виду автор.

Специалисты, которые занимаются внедрением и разработкой на платформе 1С:Предприятие уже не один год, и имеющие богатый опыт общения к конечными пользователями, прекрасно разделяют у себя в голове, что же на самом деле пользователь имеет в виду. Если человек только начал программировать на 1С, только разложил у себя в голове все понятия по полочкам, сталкиваясь с конечным пользователем не разделяющим эти понятия, попадает в тупик.

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

Если вы новичок в программировании на платформе 1С:Предприятие и ставите себе целью просто научиться «программировать на 1С», то это не совсем верно. Дело в том, что встроенный язык 1С:Предприятия и структура метаданных, которая упрощает создание информационных систем, является лишь основой для создания прикладных решений. В первую очередь, вы должны уметь общаться и понимать вашего конечного пользователя, для которого создаете программу или внедряете на его предприятии уже готовое прикладное решение. Вы должны четко понимать механизмы работы бизнес процессов на предприятии заказчика и как эти процессы отражаются в бухгалтерском учете. Безусловно, нужно знать хотя бы общие принципы ведения бухгалтерского учета.

Без основополагающих знаний научится квалифицированно программировать на платформе 1С:Предприятие для вас будет весьма затруднительно. Точнее, вы сможете создать справочник, отобразить отчет или выполнить другие операции. Но без понимания именно общих принципов ведения учета сделать это правильно и так, как требуется вашему заказчику, будет весьма не просто. Вплоть до того, что опытные программисты могут подсказать как можно правильнее или удобнее реализовать то или иное требование заказчика.

Программирование на платформе 1С:Предприятие — это не просто программирование в обычном понимании этого слова. Такого рода работа требует бОльших знаний нежели только умение писать программный код!