Программист abap что это
Хочу всё знать. Язык ABAP
Краткая справка
ABAP/4 – проприетарный (т.е. не распространяющийся свободно) язык программирования высокого уровня, разработанный немецкой софтверной компанией SAP и предназначенный исключительно для работы с выпускаемым ей ПО. В январском рейтинге популярности языков ABAP/4 занимает 22 место прямо перед Scratch.
Он был разработан в 1983 году для работы с внутренней системой SAP R/2. Цифра 4, которая присутствует в названии, не имеет практического смысла и лишь указывает, что язык относится к 4 поколению. SAP R/2 – это система управления предприятием, предполагающая стандартную связь между клиентской базой и сервером. Позднее была заменена трёхзвенной системой R/3 – клиент, сервер приложений и система управления базами данных.
Синтаксис
Во многих источниках вы можете найти замечание про схожесть синтаксиса ABAP с COBOL. Однако не стоит принимать это за чистую монету, схожесть касается исключительно внешнего вида, в то время как структура и возможности совсем разные. Сравните базовый код любого программиста “Hello World”:
WRITE / ‘Hello World’.
DISPLAY «Hello, world.».
END PROGRAM HELLO-WORLD.
Согласитесь, не так уж много общего. ABAP значительно удобнее, понятнее для программистов, работающих на популярных языках
Область применения
Работа
Если ABAP не является языком, вечно мелькающим в списке требований работодателей, если его не изучают в университетах, то это совсем не означает, что он не востребован. ABAP имеет свою аудиторию, эко-систему, поэтому требует от соискателей осознанного выбора будущей деятельности. Прямо сейчас на популярном рекрутинговом ресурсе вы можете найти свыше 100 вакансий, причём среди них есть те, где знание продуктов компании SAP и опыт работы с ABAP – едва ли не единственное требование.
Полезные ссылки
ABAP Community – официальное сообщество разработчиков;
ABAP-blog – один из немногих очень качественных и визуально приятных отечественных ресурсов, где можно почитать про программирование на ABAP;
Викиучебник – основы на русском языке;
Habrahabr SAP ERP ABAP – дополнительный набор справочных ресурсов по ABAP и всему, что его касается;
Habrahabr Course Guide – путеводитель по онлайн-курсам ABAP.
Книги
Мы продолжаем говорить о не самых популярных языках программирования, заслуживающих тем не менее внимания настоящих гиков. В этот раз речь пойдёт о языке ABAP/4 или просто ABAP. О том, что эта самая четвёрка в названии означает, зачем нужен этот язык, а главное где и как ему обучиться – далее.
Краткая справка
ABAP/4 – проприетарный (т.е. не распространяющийся свободно) язык программирования высокого уровня, разработанный немецкой софтверной компанией SAP и предназначенный исключительно для работы с выпускаемым ей ПО. В январском рейтинге популярности языков ABAP/4 занимает 22 место прямо перед Scratch.
Он был разработан в 1983 году для работы с внутренней системой SAP R/2. Цифра 4, которая присутствует в названии, не имеет практического смысла и лишь указывает, что язык относится к 4 поколению. SAP R/2 – это система управления предприятием, предполагающая стандартную связь между клиентской базой и сервером. Позднее была заменена трёхзвенной системой R/3 – клиент, сервер приложений и система управления базами данных.
Синтаксис
Во многих источниках вы можете найти замечание про схожесть синтаксиса ABAP с COBOL. Однако не стоит принимать это за чистую монету, схожесть касается исключительно внешнего вида, в то время как структура и возможности совсем разные. Сравните базовый код любого программиста “Hello World”:
WRITE / ‘Hello World’.
DISPLAY «Hello, world.».
END PROGRAM HELLO-WORLD.
Согласитесь, не так уж много общего. ABAP значительно удобнее, понятнее для программистов, работающих на популярных языках
Область применения
Работа
Если ABAP не является языком, вечно мелькающим в списке требований работодателей, если его не изучают в университетах, то это совсем не означает, что он не востребован. ABAP имеет свою аудиторию, эко-систему, поэтому требует от соискателей осознанного выбора будущей деятельности. Прямо сейчас на популярном рекрутинговом ресурсе вы можете найти свыше 100 вакансий, причём среди них есть те, где знание продуктов компании SAP и опыт работы с ABAP – едва ли не единственное требование.
Полезные ссылки
ABAP Community – официальное сообщество разработчиков;
ABAP-blog – один из немногих очень качественных и визуально приятных отечественных ресурсов, где можно почитать про программирование на ABAP;
Викиучебник – основы на русском языке;
Habrahabr SAP ERP ABAP – дополнительный набор справочных ресурсов по ABAP и всему, что его касается;
Habrahabr Course Guide – путеводитель по онлайн-курсам ABAP.
Книги
Кто такой ABAP-разработчик и почему стоит выбрать это «нишевое» направление
В мире существует множество языков программирования. Одни из них очень популярны и в каком-то смысле стали брендами, о которых знают даже люди, чья работа не связана с IT. К ним можно отнести JavaScript, Java, Python, PHP и иные.
Другие языки малоизвестны, но при этом на них написаны решения, которые служат фундаментом для всемирно известных компаний и мировой экономики в целом. Один из таких языков — ABAP.
Алексей Яременко, директор украинского офиса LeverX Group, свою карьеру в IT начинал, как и многие, с позиции разработчика. В 2012 году перед ним стоял перед выбором: какой язык программирования выбрать? Знакомый посоветовал Алексею пойти на курс по ABAP в LeverX Group. До этого он ничего не слышал об ABAP. Но после поиска информации в интернете Алексей решил, что нужно идти.
Сейчас, спустя почти 10 лет, Алексей рассказывает, почему стоит изучать «нишевые» языки программирования.
ABAP (аббревиатура от Advanced Business Application Programming) — это проприетарный высокоуровневый язык программирования, который был создан компанией SAP еще в начале 80-х и является основным языком разработки «классических» продуктов SAP. O SAP тоже многие могли не слышать. SAP — немецкая компания, лидер на рынке производства программного обеспечения для управления бизнесом и автоматизации бизнес-процессов. Капитализация SAP на данный момент составляет примерно 148 миллиардов евро, а количество сотрудников превышает 103 тысячи человек.
В какой-то степени продукты компании уже стали стандартом благодаря отличной интеграции со сторонними системами, расширяемости и кастомизации стандартных решений.
Решениями SAP сегодня пользуются Apple, Amazon, IBM, Walmart и другие, в том числе многие крупнейшие компании Украины, которые уже автоматизировали бизнес-процессы.
SAP приводит вот такую короткую справку о своих клиентах:
Больше информации о компании можно найти на официальном сайте.
Кто же такие ABAP-разработчики, чем они занимаются и какие у них есть перспективы?
За почти 50 лет в портфеле SAP набралось более 300 продуктов для любой сферы и вида бизнеса. Используются различные технологии как «классические», так и самые передовые: AI, Machine Learning, Predictive Analytics, IoT, Blockchain и другие. Самый главный продукт SAP — ERP-система, последнее поколение которой называется S/4HANA.
Такие продукты являются стандартными решениями, которые легко автоматизируют и оптимизируют рутинные бизнес-процессы. Зачастую у разных клиентов, которые занимаются одним и тем же бизнесом, процессы сильно отличаются. Нужна кастомизация, которой занимаются ABAP-разработчики.
Подавляющее большинство продуктов SAP написаны на ABAP, поэтому он используется для расширения их функционала. Под расширением можно понимать как дополнение стандартного функционала или изменение стандартной логики, так и написание новых решений, которые будут выполняться на сервере приложений SAP (у SAP есть своя платформа SAP NetWeaver, все приложения выполняются на сервере).
Если говорить о классическом ABAP, то взаимодействие пользователей и разработчиков с системой происходит через Web-браузер, специализированные клиентские приложения (SAP GUI и NetWeaver Business Client) или через более известную многим IDE Eclipse. Вести разработку можно через SAP GUI и Eclipse.
А вот как выглядит редактор кода в ABAP Workbench (транзакция для работы с объектами):
ABAP постоянно развивается, в нем есть атрибуты современных языков программирования, а некоторые моменты реализованы даже удобнее, например работа с таблицами.
Задачи, которые решают ABAP-разработчики, очень разные: от простой обработки данных для аналитики до сложных интеграций с различными сервисами. В принципе на ABAP можно написать что угодно, даже игры, но все же назначение у языка другое — решение задач реального бизнеса.
Зарплаты ABAP-разработчиков часто выше зарплат в других «мейнстримовых» языках (к сожалению, зарплатная статистика на DOU не набрала достаточного количества анкет по ABAP, но если посмотреть на Glassdoor и Indeed, то зарплаты ABAP выше, чем во многих других популярных направлениях). Тому есть две причины:
Начать писать код на ABAP легче, чем на других языках программирования. Это позволяет быстрее получить необходимые навыки для работы на проектах.
Дело в том, что система SAP является открытой и разработчик всегда имеет доступ к коду, чтобы посмотреть, как реализованы те или иные функции. Часто задачи на разных проектах схожи, поэтому многое уже написано до вас. Это значительно облегчает разработку.
Клиенты SAP — мировые лидеры, которые стараются внедрять инновационные решения, чтобы увеличить прибыльность своего бизнеса, совершенствуя процессы. На таких проектах, как правило, много различных систем и технологий взаимодействуют друг с другом, что позволяет разработчикам получить новый и интересный опыт. Часто заказчики хотят видеть команду у себя онсайт. Это открывает прекрасную возможность побывать в разных странах и расширить кругозор.
ABAP-разработчики крайне востребованы в развитых странах (Германия, США, Канада и другие). ABAP-специалистов не хватает на IT-рынке, и компании активно привлекают их, не ограничивая офферы географией.
Из недостатков могу выделить только то, что вы как специалист привязываетесь к экосистеме SAP, к определенному комьюнити и корпоративному рынку. Похожее есть и в других областях, например разработчики мобильных приложений очень зависят от экосистем Apple и Google, но мобильному разработчику запустить свой стартап проще, поскольку его клиенты — обычные люди, у каждого из которых есть мобильное устройство, а для разработки нужен только компьютер. С ABAP такой сценарий реализовать сложнее.
Каждый ABAP-разработчик может развивать свою карьеру в следующих направлениях:
Я отметил SAP Developer, а не ABAP Developer, намеренно. Продукты SAP постоянно развиваются, в них появляются новые технологии (AI, ML, Predictive Analytics, IoT), облачные решения, библиотеки и другое. Большое количество продуктов SAP сейчас разрабатываются как Web-приложения. Бэкенд, как правило, пишется на ABAP (но бывают и разработки на Java и Node.js), а фронтенд разрабатывают с использованием фреймворка SAPUI5 (фактически это собственная JavaScript-библиотека пользовательского интерфейса, разработанная и поддерживаемая SAP). Такое «соседство» различных стеков и технологий открывает свободу выбора для освоения новых навыков и наращивания своей экспертизы.
Как я уже говорил, ABAP-разработчики решают задачи бизнеса, поэтому часто погружаются в бизнес-процессы. Огромные возможности продуктов SAP делают их достаточно сложными, они требуют настройки, а также обучения пользователей. Поэтому в мире SAP есть еще одна очень популярная роль — SAP-консультант.
SAP-консультанты должны прекрасно понимать как бизнес-часть, так и продукт SAP, поэтому часто они специализируются на одном из модулей. Чтобы быть консультантом, нужно обладать отличными коммуникационными навыками, любить работать с документацией. Также этим специалистам приходится проводить огромное количество настроек и тестов.
Вы можете стать Solution и Enterprise Architect, если вам нравится решать задачи на высоком уровне и у вас есть большой опыт реализации проектов. Архитекторы разрабатывают архитектуру решений в рамках конкретного модуля или продукта, выстраивают целую IT-инфраструктуру из большого количества систем.
openSAP — бесплатные курсы компании SAP дают общее понимание той или иной темы.
SAP Training — профессиональные курсы компании SAP. Стоят дорого, как правило, их оплачивают компании. По результатам выдаются сертификаты, которые очень котируются на IT-рынке.
SAP ABAP Programming — курсы LeverX Group. Мы более восьми лет проводим бесплатные образовательные курсы, где обучаем всему, что нужно для разработки на ABAP и решения задач, которые встречаются на реальных проектах. Курс длится полтора месяца, и по его итогам мы приглашаем лучших выпускников присоединиться к команде.
Кто такой ABAP-разработчик и почему стоит выбрать это «нишевое» направление
В мире существует множество языков программирования. Одни из них очень популярны и в каком-то смысле стали брендами, о которых знают даже люди, чья работа не связана с IT. К ним можно отнести JavaScript, Java, Python, PHP и иные. Другие языки малоизвестны, но при этом на них написаны решения, которые служат фундаментом для всемирно известных компаний и мировой экономики в целом. Один из таких языков — ABAP. До определенного момента я тоже о нем не знал.
Меня зовут Алексей Яременко, я являюсь директором украинского офиса LeverX Group. Свою карьеру в IT я начинал, как и многие, с позиции разработчика. В 2012 году я стоял перед выбором: какой язык программирования выбрать? И один мой знакомый посоветовал пойти на курс по ABAP в LeverX Group. До этого я ничего не слышал об ABAP. Но после поиска информации в интернете я решил, что нужно идти.
Сейчас, спустя почти 10 лет, я могу сказать, что это был правильный выбор, который сильно изменил мою жизнь и понимание, почему стоит изучать «нишевые» языки программирования. Этим видением я хочу поделиться с теми, кто хочет начать или изменить свою карьеру в IT и стоит перед выбором специализации.
На DOU об этом еще никто не писал, хотя вакансии есть. И потенциал направления огромный. В конце статьи будут ссылки на тот самый бесплатный курс по ABAP. Но обо всем по порядку.
Что такое ABAP и SAP
ABAP (аббревиатура от Advanced Business Application Programming) — это проприетарный высокоуровневый язык программирования, который был создан компанией SAP еще в начале и является основным языком разработки «классических» продуктов SAP. O SAP тоже многие могли не слышать. SAP — немецкая компания, лидер на рынке производства программного обеспечения для управления бизнесом и автоматизации бизнес-процессов. Капитализация SAP на данный момент составляет примерно 148 миллиардов евро, а количество сотрудников превышает 103 тысячи человек.
В какой-то степени продукты компании уже стали стандартом благодаря отличной интеграции со сторонними системами, расширяемости и кастомизации стандартных решений.
Решениями SAP сегодня пользуются Apple, Amazon, IBM, Walmart и другие, в том числе многие крупнейшие компании Украины, которые уже автоматизировали бизнес-процессы.
SAP приводит вот такую короткую справку о своих клиентах:
Больше информации о компании можно найти на официальном сайте.
Офис SAP в Вальдорфе
Чем занимаются ABAP-разработчики
Кто же такие ABAP-разработчики, чем они занимаются и какие у них есть перспективы?
За почти 50 лет в портфеле SAP набралось более 300 продуктов для любой сферы и вида бизнеса. Используются различные технологии как «классические», так и самые передовые: AI, Machine Learning, Predictive Analytics, IoT, Blockchain и другие. Самый главный продукт SAP — ERP-система, последнее поколение которой называется S/4HANA.
Такие продукты являются стандартными решениями, которые легко автоматизируют и оптимизируют рутинные бизнес-процессы. Зачастую у разных клиентов, которые занимаются одним и тем же бизнесом, процессы сильно отличаются. Нужна кастомизация, которой занимаются ABAP-разработчики.
Подавляющее большинство продуктов SAP написаны на ABAP, поэтому он используется для расширения их функционала. Под расширением можно понимать как дополнение стандартного функционала или изменение стандартной логики, так и написание новых решений, которые будут выполняться на сервере приложений SAP (у SAP есть своя платформа SAP NetWeaver, все приложения выполняются на сервере).
Если говорить о классическом ABAP, то взаимодействие пользователей и разработчиков с системой происходит через Web-браузер, специализированные клиентские приложения (SAP GUI и NetWeaver Business Client) или через более известную многим IDE Eclipse. Вести разработку можно через SAP GUI и Eclipse.
Пример пользовательского интерфейса Fiori Launchpad в браузере
Пример пользовательского интерфейса в SAP GUI
А вот как выглядит редактор кода в ABAP Workbench (транзакция для работы с объектами):
Пример реализации игры 2048 на языке ABAP
ABAP постоянно развивается, в нем есть атрибуты современных языков программирования, а некоторые моменты реализованы даже удобнее, например работа с таблицами.
Задачи, которые решают ABAP-разработчики, очень разные: от простой обработки данных для аналитики до сложных интеграций с различными сервисами. В принципе на ABAP можно написать что угодно, даже игры, но все же назначение у языка другое — решение задач реального бизнеса.
Почему стоит изучать ABAP
Высокий уровень зарплат
Зарплаты ABAP-разработчиков часто выше зарплат в других «мейнстримовых» языках (к сожалению, зарплатная статистика на DOU не набрала достаточного количества анкет по ABAP, но если посмотреть на Glassdoor и Indeed, то зарплаты ABAP выше, чем во многих других популярных направлениях). Тому есть две причины:
Порог входа ниже
Начать писать код на ABAP легче, чем на других языках программирования. Это позволяет быстрее получить необходимые навыки для работы на проектах.
Дело в том, что система SAP является открытой и разработчик всегда имеет доступ к коду, чтобы посмотреть, как реализованы те или иные функции. Часто задачи на разных проектах схожи, поэтому многое уже написано до вас. Это значительно облегчает разработку.
Крутые проекты
Клиенты SAP — мировые лидеры, которые стараются внедрять инновационные решения, чтобы увеличить прибыльность своего бизнеса, совершенствуя процессы. На таких проектах, как правило, много различных систем и технологий взаимодействуют друг с другом, что позволяет разработчикам получить новый и интересный опыт. Часто заказчики хотят видеть команду у себя онсайт. Это открывает прекрасную возможность побывать в разных странах и расширить кругозор.
Возможности релокации
ABAP-разработчики крайне востребованы в развитых странах (Германия, США, Канада и другие). ABAP-специалистов не хватает на IT-рынке, и компании активно привлекают их, не ограничивая офферы географией.
Недостатки
Из недостатков могу выделить только то, что вы как специалист привязываетесь к экосистеме SAP, к определенному комьюнити и корпоративному рынку. Похожее есть и в других областях, например разработчики мобильных приложений очень зависят от экосистем Apple и Google, но мобильному разработчику запустить свой стартап проще, поскольку его клиенты — обычные люди, у каждого из которых есть мобильное устройство, а для разработки нужен только компьютер. С ABAP такой сценарий реализовать сложнее.
Куда можно расти
Каждый ABAP-разработчик может развивать свою карьеру в следующих направлениях:
Я отметил SAP Developer, а не ABAP Developer, намеренно. Продукты SAP постоянно развиваются, в них появляются новые технологии (AI, ML, Predictive Analytics, IoT), облачные решения, библиотеки и другое. Большое количество продуктов SAP сейчас разрабатываются как Web-приложения. Бэкенд, как правило, пишется на ABAP (но бывают и разработки на Java и Node.js), а фронтенд разрабатывают с использованием фреймворка SAPUI5 (фактически это собственная JavaScript-библиотека пользовательского интерфейса, разработанная и поддерживаемая SAP). Такое «соседство» различных стеков и технологий открывает свободу выбора для освоения новых навыков и наращивания своей экспертизы.
Как я уже говорил, ABAP-разработчики решают задачи бизнеса, поэтому часто погружаются в бизнес-процессы. Огромные возможности продуктов SAP делают их достаточно сложными, они требуют настройки, а также обучения пользователей. Поэтому в мире SAP есть еще одна очень популярная роль — SAP-консультант.
SAP-консультанты должны прекрасно понимать как бизнес-часть, так и продукт SAP, поэтому часто они специализируются на одном из модулей. Чтобы быть консультантом, нужно обладать отличными коммуникационными навыками, любить работать с документацией. Также этим специалистам приходится проводить огромное количество настроек и тестов.
Вы можете стать Solution и Enterprise Architect, если вам нравится решать задачи на высоком уровне и у вас есть большой опыт реализации проектов. Архитекторы разрабатывают архитектуру решений в рамках конкретного модуля или продукта, выстраивают целую IT-инфраструктуру из большого количества систем.
Где учить ABAP
openSAP — бесплатные курсы компании SAP дают общее понимание той или иной темы.
SAP Training — профессиональные курсы компании SAP. Стоят дорого, как правило, их оплачивают компании. По результатам выдаются сертификаты, которые очень котируются на IT-рынке.
SAP ABAP Programming — курсы LeverX Group. Мы более восьми лет проводим бесплатные образовательные курсы, где обучаем всему, что нужно для разработки на ABAP и решения задач, которые встречаются на реальных проектах. Курс длится полтора месяца, и по его итогам мы приглашаем лучших выпускников присоединиться к команде.
В избранное В избранном 1
Похожие статьи
79 комментариев
Если вы, слышите аббревиатуру SAP — бегите от такого проекта так чтоб аж тапки сверкали. Я много лет думала, что скучней банковского проекта и тестирования экселек быть ничего не может, но потом поняла, как я ошибалась 🤣🤣
что скучней банковского проекта и тестирования экселек быть ничего не может
А як вам роль automation tester в automotive, де всі тести написані на VB script. І ще й заохочували тим, що таке в Києві ви знайдете тільки у нас. 😀
це правда був 2012 рік.
Намного интересней, чем SAP, серьёзно))
Алла, люди ведь разные, кто-то вполне может иметь мнение отличное от озвученного. Поинтересуйтесь на досуге списком лучших работодателей Германии по опросам за последние годы. 🙂
Удивляет количество недовольных комментариев! Понятно, что АБАП язык не новый, без синтаксического сахара как в JS, направленный на разработку под САП и специалисты идут обычно в большой Ентерпрайз. Но в этом его и основное преимущество как по мне.
Понимание, что востребованность в хороших спецах будет даже и через несколько лет и в разных точках мира, разве не этого хотят большая часть разработчиков. Можно ли такое сказать про Фронтенд например, или отдельные стеки которые на волне хайпа стали лидерами сейчас у работадателей?
По зарплатам. Почему никого не удивляет когда в ВУЗах за относительно небольшие зарплаты работают люди знающие и учащие других С или С++. Примерно так и с САПом. Человек, который хочет развиваться в этом направлении по карьере будет знать и свою цену.
По идеи самого автора. Это хорошая возможность как по мне, даже для тех, кто далек от разработки. Сам хочу записаться, единственно хорошо если можно обучение в случае попадания в группу проходить дистанционно, так как многим сложно добираться и фактор основной работы.
Основное занятие у разработчика — поддержка легаси кода. В САП язык древний, много названий полей/переменных на немецком.
Я бы мог добавить сюда порцию негатива, но его тут и так много поэтому попробую его наоборот разбавить =)
Кроме ентерпрайз разработки, в абапе есть еще опенсорс. Это довольно интересные продукты типа github.com/abapGit/abapGit (гит клиент для сапа), типа github.com/abaplint/abaplint (свободный статистический анализатор кода, написанные на typescript), и даже развивающийся github.com/abaplint/transpiler — фришная реализация компилятора абапа.
Все это открытые инструменты, которые позволяют делать на абапе то, что в обычной разработке уже давно стало стандартом — код ревью, юнит тестирование, элементы CI и т.п. Дело это довольно интересное, особенно учитывая, что не нужно тыкаться в темноту в поисках хорошего процесса, а достаточно посмотреть на современные стандарты разработки и адаптировать. И дело это нужное тем самым ентерпрайзам (хотя они местами еще это не поняли), которые за это готовы будут платить. А следовательно это возможность пройти такой путь быстрее и сказать слово в масштабах абап сообщества в целом. Мы в нашей компании такие инструменты используем, пытаемся следовать современным стандартам и привносить свою толику в развитие комьюнити и от себя. Это интересно. В популярных языках сделать такой вклад банально сложнее.