Codesys первый взгляд
Codesys во все версиях это конечно система еще та. Конечно надо отдать должное разработчикам и в коммерческой хватке, штука платная, и в создании системы, которая напрочь отринула существующую практику и тенденции развития в программировании. В общем, разрушим до основания, а затем.. Проходили. Codesys имеет 5 интерфейсов программирования, из которых один текстовый, один отдаленно похож на ассемблер, а остальные графические. Нам не привыкать, хоть мышкой, хоть клавиатурой.. В наше время, когда языки программирования легко конвертируются из одного в другой, нет ни JS-like, ни самого распространенного C/C++, ни чего-то более «продвинутого» вроде Rust.
Хотя возможность подключения внешней библиотеки есть, она просто фантастична. Я имею ввиду обычную .so или .dll. Свои то есть, и packages есть, но версии…
Что же все таки умеет Codesys? Во-первых умеет быть системой самой в себе. Как бы ни озвучивалось в качестве достоинства соответствие стандарту IEC 61131-3 (МЭК 61131-3) но современным «это» не назовешь.
Почему Codesys нельзя назвать полноценной системой? Потому что она выполняет только очень узкую функцию создания пользовательского приложения. Такая себе система для разработки всего-то одного приложения. То есть поверх линукса или другой оси еще крутится приложение, в своем runtime то есть в эмуляторе. Красота.
Все усилия только о надежности. Наверное есть смысл. Надежность определяется руками программиста, а здесь наверное основной тезис «как бы чего не вышло». И все по частям, все платное, все в розницу.
Если хотите составить свое впечатление попробуйте. В сравнении с любой полноценной IDE.Лучше один раз увидеть..
Теперь о достоинствах Codesys, не все же так ужасно, работает как-то.
В общем достаточно удобна. Просто делается визуализация, клац мышкой пару раз и все ОК. правда в стандартной поставке ничего толкового нет, и много нередактируемых параметров у элементов. Нет возможности добавить новый или отредактировать элемент, как в QT. Проприетарщина в чистом виде.
Интересное решение когда Вам недоступен цикл main(){}. Он тщательно скрыт. Что-то от verylog есть, от поведенческих блоков. Не так конечно красиво, но для сельской местности вполне.
Удобна загрузка и отладка. Если учитывать, что это только приложение а не вся информация из системы, то ничего так.
Для кого предназначена Codesys? Для тех кто работает с промышленными контроллерами. Я бы поставил под сомнение название промышленные, но это уже не софт. И только. Очень узкая область применения. Отсутствие интеграции с с какими либо системами более высокого класса . И уж совсем отсутствуют средства вывода архитектуры программного обеспечения, схемы системы, эскизного проекта, документации типа doxygen, и других плюшек. Никакая для проектных работ. Даже раздел проекта не тянет. Вывод какой?..
Компания — разработчик среднего уровня, примеров много, в состоянии разработать свой собственный техпроцесс, и программное обеспечение соответственно. Чтоб минимизировать потерю времени на разработку и запуск в производство нового изделия. Тем более что очень много еще в электронике ручного труда. Типа как на галерах. Хотя уменьшить его можно значительно, и совсем не сложно. Что экономит время разработки.
Время — деньги или Codesys forever.
Но оказывается, все совсем не так. Все намного серьезнее.