Введение
С чего начать новичку, если вы хотите освоить программирование 1С с нуля? Есть несколько путей обучения, все они имеют свои плюсы и минусы – как обучение в домашних условиях, так и очные курсы в учебных центрах. В этой статье я постарался собрать информацию по самостоятельному обучению 1С, чтобы вам проще было подобрать подходящий инструмент и стратегию – будь-то чтение книг и подготовка по бесплатным видео на youtube, или прохождение курсов в онлайн-школах.
Статья вышла большим лонгридом, поэтому пользуйтесь оглавлением, и смело переходите к интересующему разделу.
Содержание
Можно ли самостоятельно освоить 1С программирование с нуля?
Забегая вперед, уверенно отвечу – конечно можно! Распространен стереотип, что программировать можно научиться, только имея профильное образование в ВУЗе, или особый склад мышления, характер, и т.п.
Да, чтобы изучить программирование 1С в домашних условиях, да еще и без наставников, самостоятельно – нужны определенные качества: умение искать информацию, самодисциплина, уверенность в своих силах.
В свое время я так и начинал изучать синтаксис и приемы работы в 1С – тогда еще 7.7. У меня были только книжки из поставки – руководство разработчика, описание языка и т.п. Плюс, кодовая база конфигурации, с которой мне пришлось работать. Там можно было подсмотреть те или иные примеры кода, типовые подходы, какие-то готовые решения.
Так что, если решили изучить программирование на языке 1С с нуля – не бойтесь! Все достижимо.
Почему стоит выбрать именно программирование на 1С?
Этот раздел предназначен в первую очередь для людей, решивших начать карьеру в IT, но стоящих на распутье. Андроид? Кровавый Enterprise? Веб-разработка? Или все же что-то ближе и роднее, на русском языке, да еще вроде и платят неплохо?
У языка и экосистемы 1С есть свои неоспоримые плюсы по сравнению с другими языками программирования:
- Не нужно знать английский язык
- Невысокий порог входа – в языке довольно легко освоиться
- Высокая востребованность – на рынке более чем достаточно вакансий для самых разных уровней
- Большой выбор направлений – мобильная разработка, торговля, кадры и бухгалтерия, BI, и многое другое
Вот наглядный пример с обзором зарплат.
Порог входа достаточно невысокий, и стажером можно устроиться, в принципе, даже без опыта работы. Но тут есть важный нюанс – нужно будет активно расти и прокачивать навыки программирования и разработки в 1С.
Но кто же такие программисты 1С, и почему я думаю, что…
Программирования 1С не существует?
Дисклеймер: изложенное ниже – это исключительно мое мнение, сложившееся за полтора десятка лет в профессии.
Итак, почему же я так считаю? На самом деле, программирование на 1С невозможно без параллельной работы в графической среде разработки – конфигураторе. Ну то есть, я могу представить абстрактного программиста 1С в вакууме, который открывает условно, блокнот, и пишет там код. Это и будет чистое программирование.
А вот то, чем на самом деле занимаются 1С-ники – это именно разработка. Настройка плана счетов, добавление печатной формы, разработка командного интерфейса, ролей и прав доступа – все это можно делать без единой строчки кода!
Язык 1С – это не язык программирования общего назначения. Он достаточно специализирован, и имеет достаточно узкую сферу применения в чистом виде – автоматизацию учета и бизнес-логики – но уж в ней он разворачивается во всей красе!
Поэтому я и пришел к выводу, что просто «программирования на 1С» в чистом виде практически не бывает, а есть разработка на платформе 1С. Требуется знание предметной области, знание возможностей, структуры и объектной модели платформы 1С, наличие базовых представлений о проектировании бизнес-логики, UX/UI, и много чего еще.
5 вариантов обучения программированию в 1С
Все мы разные, усваиваем информацию с разной эффективностью и через разные каналы. Поэтому нет однозначно лучшего варианта обучения, и зачастую бывает полезно комбинировать эти варианты для максимального эффекта.
Самый очевидный, но не самый простой способ научиться программировать на 1С – это взять и начать программировать на 1С! Банально. Обложиться документацией, держать под рукой справку, и пробовать что-то кодить. Бесплатные ролики на Youtube, технические статьи или форумы могут также составить подспорье. Увы, КПД такого подхода будет значительно ниже.
Зачастую отсутствие правильно поставленной базы приводит к печальным последствиям – низкому качеству кода, большому количеству логических и архитектурных ошибок, неэффективному использованию имеющихся инструментов платформы 1С. Поэтому далее под вариантами обучения я рассматриваю именно разные форматы обучающих материалов. Итак, поехали!
1. Книги
Условно их можно разделить на несколько видов.
- Самоучители по 1С для начинающих разработчиков. Часто их структура построена на сквозном примере от простого к сложному. По ним можно с нуля научиться основам программирования на 1С.
- Детальное освоение какого-нибудь механизма платформы – языка запросов, интерфейса, расширений и т.п. Это уже для более опытных разработчиков.
- Сборники «рецептов» кода или советов. Тоже полезно для тех, кто осваивает программирование в 1С с нуля, но больше в качестве подсказок «как правильно», чем стройной системы обучения.
- Профессиональная разработка в системе «1С:Предприятие 8». Эту книгу я вынес в отдельный вид, она уникальна! Судите сами, 2800 страниц формата А4! К сожалению, прочитать ее и освоить все материалы для новичка – да и не только – вряд ли хватит сил и терпения! Сам я неоднократно использовал ее как справочник, и держать ее под рукой – весьма полезно. Единственный минус, такой же огромный, как и эта книга – ее цена.
2. Бесплатные видео уроки и статьи по 1С
Данный формат может отлично подойти для решения конкретных прикладных задач, и чтобы закрыть пробелы в знаниях. Статьями и уроками хорошо пользоваться, когда уже сносно умеешь разрабатывать на 1С, но каких-то аспектов программирования не знаешь. У бесплатных уроков по 1С есть весьма значимый недостаток – они чаще всего разрознены, и не дают целостной картины. Но это же является и их главным достоинством – вам нет необходимости изучать все возможности платформы, достаточно найти урок для конкретного случая. По бесплатным видео и статьям можно научиться делать в 1С очень многое – программировать http-сервисы, настраивать обмен или разобраться в механизмах расчета.
3. Курсы по программированию в 1С в видео формате
Это мой любимый формат, и не только при изучении разработки в 1С! Деление видеокурсов примерно такое же, как и для книг. Соответственно, могут быть как общие курсы по основам программирования на языке 1С, так и узкоспециализированные курсы для специалистов. Что мне нравится в формате видео – это возможность многократного перепросмотра, возможность поставить на паузу или начать с нужного места. Также, формат видео удобен тем, что на экране вы видите тот же самый интерфейс, кнопки, меню и прочее, что и в самой среде разработки! И это выгодно отличает видео курсы 1С программирования от книг.
Минус видео формата в том, что из видео код не скопируешь! В этом случае хорошо, когда к видеоуроку прилагаются тексты модулей, обработки или выгрузка базы, и прочие вспомогательные файлы. Кстати, в моем видеокурсе “Разработчик 1С с нуля” используется именно такой подход. Всю кодовую базу можно посмотреть в приложенных файлах.
4. Онлайн-курсы
В интернете есть несколько онлайн-школ, которые предлагают курсы по 1С в онлайн формате. С участием преподавателя, домашними заданиями, сертификатами и часто даже с обещанием трудоустройства. В среднем, сроки обучения составляют около 7 месяцев – это вполне достаточное время, чтобы с нуля научиться 1С программированию. Цена на эти курсы весьма немаленькая, но для многих начинающих программистов 1С это будет хорошим способом мотивировать себя и не отлынивать от обучения. Кому-то, возможно, не хватает самодисциплины, либо комфортнее обучаться в группе, либо по душе возможность общаться с другими учениками и преподавателем – много причин, чтобы выбрать онлайн-формат. И если вас устраивает цена и качество материала – почему бы и нет?
5. Оффлайн занятия в учебных центрах
Да-да, этот вариант обучения все еще жив, хоть понемногу и сдает позиции. Неоспоримый плюс такого формата – живое участие преподавателя, помощь студентам «здесь и сейчас», а не в форме ответа в чате или по электронной почте. У обучения в формате онлайн или в классах есть общий минус – это привязка ко времени и ограниченная длительность. Если книгу или видео вы приобрели и храните у себя сколько угодно, то занятия «вживую» имеют какую-то длительность – 3 -6 месяцев допустим.
Индивидуальное обучение 1С с наставником
Какой бы вариант изучения 1С вы ни выбрали, все равно остаются вопросы, на которые самостоятельно найти ответ не удается.
- Не получается выполнить тестовое задание или дипломный проект на курсе?
- Не знаете, как готовиться к собеседованиям и каких вопросов ждать?
- Хотите набраться практического опыта, сделать проект для портфолио?
Разумеется, можно разобраться и самостоятельно, потратив значительное количество времени. Но я могу помочь вам срезать путь, не петляя в темноте по граблям.
Хотите освоить 1С программирование быстрее и эффективнее? Жмите большую оранжевую кнопку ниже 😉
Разобравшись с форматами обучения программированию 1С, мы добрались до следующего вопроса.
Зачем книги и курсы по 1С, если есть официальная документация?
На самом деле, это не противоположные вещи, а взаимодополняющие! Курсы не могут заменить, да и не ставят перед собой целью заменить обширную официальную документацию по разработке на платформе 1С!
Нельзя научиться хорошо программировать, только лишь посмотрев видео. Надо брать и программировать! Но уже с пониманием: как лучше, а как делать не стоит. Официальная документация разгрузит ваш мозг от необходимости зазубривать все синтаксические конструкции, параметры, настройки и прочее.
Нельзя научиться хорошо программировать, только лишь изучая документацию. У вас не сложится целостного представления о лучших практиках, подходах, правильном использовании возможностей платформы 1С. И – да простят меня читатели! – без понимания «как правильно» легко начать писать говнокод.
Изучая язык программирования 1С только по официальной документации, вы рискуете научиться плохим паттернам программирования – будете изобретать велосипеды вместо использования штатных механизмов, будете лепить костыли из-за неверного выбора объектов, или архитектуры, или из-за непонимания клиент-серверного взаимодействия, и т.п.
Поэтому я придерживаюсь такого подхода – обучаться именно при помощи курсов или книг, с четкой структурой и последовательным изложением, а документацию держать под рукой, чтобы закрывать различные технические моменты.
Кому может быть полезным программирование 1С кроме программистов?
Возможно, этот вопрос покажется вам странным. Но не торопитесь с выводами. Я повидал много примеров, когда навыки программирования на 1С оказывались полезными для совершенно разных профессий. Ниже я приведу несколько таких кейсов.
Аудиторы и бухгалтера. Даже поверхностное владение языком запросов и конструктором отчетов открывает для бухгалтеров новые двери! Различные проверки правильности учета, поиск ошибок в документах, настройки печатных форм – и все это без необходимости нанимать програмиста! Из показательного – довольно много лет назад аудиторы крупного холдинга, занимающегося металлопрокатом, были просто в восторге, что научились в консоли писать отчеты на языке запросов 1С. В крупном холдинге разработка отчетов и доработка конфигурации были довольно забюрократизированы, с кучей согласований и обсуждений, и все это превращалось в очень затянутый процесс. А тут они получили инструмент формирования нужных отчетов без обращения к программистам 1С! И сэкономили себе вагон времени и нервов.
Руководители небольших компаний. Навыки программирования на 1С для них – в некоторой степени защита от мошенников. Т.е. им труднее «втюхать» простую доработку по цене на порядок выше. Также, это позволяет им трезво оценивать сложность планируемых доработок, компетентность нанимаемых программистов 1С (а ведь зачастую совета спросить не у кого, в штате своего программиста нет, и приходится верить на слово). А для микро-бизнеса это еще и возможность существенно сэкономить бюджет, которого вечно не хватает!
Тут кейс такой. Двое ребят основали небольшой магазин по продаже учебной литературы. И им очень пригодились навыки программирования в 1С, так как они самостоятельно смогли дорабатывать загрузку прайсов поставщиков из Excel, не прибегая к услугам приходящих 1Сников, и тем самым сократили расходы на старте, что позволило им успешно стартовать и не закрыться в первый год.
Системные администраторы в небольших компаниях. Здесь все проще. Зачастую, им приходится тяжелее всего – ведь обычные пользователи часто не делают различия между «айтишниками». И приходится уметь все понемногу – и принтер заправить, и копию базы сделать, и ошибку в отчете найти.
Наверное, есть и множество других примеров – я привел только те, с которыми лично столкнулся за годы работы.
Примерный план самостоятельного обучения с нуля
Итак, вы решили во что бы то ни стало пополнить ряды 1Сников, и хотите научиться программировать в 1С с нуля. Так с чего же начать, как продолжить и когда остановиться?
На последний вопрос отвечу сразу – увы, обучение в мире 1С не заканчивается никогда! Стоит вам только начать, втянуться, и вы обнаружите, что всегда есть что-то, чего вы не знаете. Появляются новые задачи, платформа 1с эволюционирует, появляются новые объекты и конструкции языка – и этот процесс неостановим. Только привыкли к веб-сервисам – держите http-сервисы и json! Освоили и это? Вот вам система взаимодействия и чат-боты!..
А теперь вернемся к первым двум вопросам.
С чего начать разбираться в 1С программировании? Если вы собираетесь изучать программирование 1С с нуля, то самое лучшее – это начать с чего-то простого, с азов разработки в 1С. В зависимости от того, какой формат вы предпочитаете, могу посоветовать
- книга «1C:Предприятие 8.3. Практическое пособие разработчика»
- видеокурс «Разработчик 1С с нуля»
- онлайн курс «Азы программирования в системе “1С:Предприятие 8.3″»
Вне зависимости от того, как вы собираетесь дальше развиваться – в сторону бухгалтерии, управленческого учета, или расчета зарплаты – настоятельно рекомендую подтянуть знания по запросам, разработке отчетов на СКД, и интерфейсам. Это универсальные навыки, они пригодятся при работе с любой конфигурацией.
Следующий шаг – выбрать изначальную специализацию. Классических блока – три.
- Управленческий учет
- Расчет зарплаты
- Бухгалтерский учет
Плюс есть множество их комбинаций и дополнительные направления, такие как бизнес-процессы, веб-сервисы и прочее. Но для начинающего разработчика, повторюсь, достаточно определиться с одним из трех близких по духу блоков, и прокачивать его в первую очередь.
Тут важно оценить ваши исходные условия, бэкграунд. Приведу несколько типовых примеров:
- Оператор 1С или менеджер – чаще всего проще освоить управленческий учет
- Кадровик, hr, расчетчик – соответственно, легче будет даваться расчетный блок
- Бухгалтер, аудитор – очевидно, автоматизацию бухучета вам будет освоить легче.
- Веб-разработчик или программист на другом языке – скорее всего, вам будет легче изучить средства интеграции – это soap и http сервисы, json и xml обмен. Хорошая новость – вам будет легко даваться синтаксис 1С (и да, можно кодить на родном английском!). Плохая новость – очень возможно, что вам будет недоставать знаний предметной области.
В принципе, освоив основы программирования на языке 1С и поглубже изучив хотя бы один из крупных блоков платформы, вы уже сможете пробовать ходить на собеседование на начальные позиции.