Я попытаюсь дать некоторые вещи предыдущего ответа не имеет, в то время как пропуская то, что они делали упоминания:
ли это (всегда) скомпилирован?
Ну, интерфейс для программиста говорит «Активировать», а не компилировать, но это потому, что встроено управление версиями. Когда вы активируете что-то, оно скомпилирует его и делает исходную и двоичную версии «активной» версией. Если кто-то пытается запустить источник, который не скомпилирован, он будет автоматически скомпилирован по мере его запуска.
Typestem: строго ли он напечатан?
В принципе, да. ABAP похож на странный переход между Pascal и COBOL. Есть «Символы полей», которые похожи на указатели. Существуют также общие типы. (И общие указатели поля). Одной из самых крутых вещей является то, что существует без разницы между типами ABAP и типами баз данных. Любая сделанная вами таблица автоматически станет типом структуры. То есть ABAP интегрируется с базой данных таким образом, что практически нет других языков. Вы также можете написать SQL, который на самом деле является частью ABAP, а не просто как строка, как на других языках.
Наследование: единичные/многослойные, подобные интерфейсу структуры?
Существуют интерфейсные структуры, я обычно их не использую. Если бы вы сделали много повторно используемых классов, они были бы хорошей идеей.
Коллекции: Имеет ли он коллекцию, кроме массивов? Имеет ли он общие коллекции? Использует ли это понимание List?
Лучше, у него есть «Внутренние таблицы», которые в основном представляют собой тип динамического массива. Они могут быть объявлены практически из любого типа, в том числе в словаре данных. Они могут быть закодированы, отсортированы и т. Д. Существует несколько типов, включая хэшированные и отсортированные варианты.
Любая обработка исключений?
Оба типа ООП и не-ООП.
Что-нибудь замечательное, как и другие известные языки?
Как сказал другой плакат, много. Это очень хорошо при любых операциях с базой данных и повторном использовании сложных структур и типов данных. Это, естественно, кросс-база данных и кросс-платформенная (ОС и процессор). Он имеет очень хорошую систему управления версиями и транспорта. Вся система SAP имеет очень хорошую многоязычную поддержку. Вы можете получить простые экраны с соответствующими заголовками и полями выбора автоматически, что означает, что вы можете делать меньше программ и больше работать. Вам не нужно отображать между типами БД и типами языков и т. Д.
Вещи это не так хорошо:
1. Номера обычно хранятся как ASCII, что делает его менее быстрым по математике во многих приложениях.
2. Большинство структур данных очень нормализовано, что означает, что ваши данные могут распространяться на 50 таблиц. «Звездные» запросы очень распространены. Встроенные функции для извлечения данных (например, логические базы данных) являются вашим другом в этих случаях.
3. SAP пытался быть всем для всех, поэтому существует множество вариантов конфигурации и т. Д., И иногда функция не делает то, что вы ожидали от нее, основываясь на прошлом поведении.
4. ABAP иногда очень многословный. Попробуйте использовать кнопку «шаблон» на чем-то простом, например GUI_DOWNLOAD.
5.SAP был очень амбициозен с тем, что они взяли на себя, и, таким образом, на ранних этапах столкнулись с ограничениями аппаратного обеспечения, операционных систем и систем RDBM. Таким образом, у них есть старые kludges, чтобы справиться с этим, что не очень красиво. (Таблицы пула, Таблицы кластеров и т. Д.)
6. Когда вы активируете программу, она не выполняет полную проверку совместимости с используемыми функциональными модулями. Бывают ситуации, когда что-то активируется без проблем, но затем вылетает во время выполнения, даже в тех случаях, когда его можно было поймать во время компиляции.
Очень frienly tx! Я также попытался проголосовать за вас, но мне все равно нужно зарегистрироваться. Кажется, я могу вернуться позже. – Marc
Отличный ответ, меня тоже очень просветила. Любопытно, что сторонник http://www.volker-wegert.de/ использует PHP-версию с открытым исходным кодом для Drupal для управления контентом для своего сайта. Любопытно, что в случае наличия интерфейса между SAP и Drupal могут возникнуть некоторые интересные «mash-ups». Сохранение систем в процессе разработки, но когда они объединены, могут возникнуть некоторые интересные возможности, например. мощные веб-интерфейсы/веб-приложения для SAP, предоставляемые Drupal. – therobyouknow
@Rob: Я больше разбираюсь в Java, EMF, XText и ABAP. PHP и ABAP на самом деле не мой фетиш :-) – vwegert