LINUX.ORG.RU

com порты via java || c++


0

2

Всем привет. Есть небольшой вопросик. Есть задача, связанная с com-портами для os linux. Так вот какой язык более подходит для ее решения? Где это делается легче, грамотней, быстрей?

ps программирую на шарпе, но на моно решать эту задачу не хочу.


c||с++, естественно, ибо на java все равно придется возиться с враппером + если будет необходимо будет работать с каким-нибудь бинарным протоколом с устройства могут быть проблемы с типами данных.

mongrel
()

Плюсую предыдущего оратора. Те средства, которые есть для работы с COM-портами в Java, сейчас находятся в крайне плачевном состоянии.

GBullfinch
()
Ответ на: комментарий от GBullfinch

С тем что работать с COM портами, да и с бинарными протоколами на C||C++ проще спорить не буду. Да и Java для работы с COM портами использует native библиотеки на C. Но работать на java с COM портами можно, и даже в некотором роде удобно. Сам пишу софтины, для общения с приборами по COM порту. Пришлось потратить пару часов на написание подходящего под протокол сериализатора, а дальше работать стало быстрее и легче чем на C||C++.

EdmunDD
()
Ответ на: комментарий от EdmunDD

Т.к. нам надо было обеспечить кроссплатформенность (т.е. как минимум запуск на винде и Linux), мы использовали готовую библиотеку rxtx. Уже чинил пару тамошних багов в нативном коде в продакшне, поэтому так и злопыхаю :)

Не стану спорить, что в Java можно работать с COM-портами, но при неправильном приготовлении работа рискует обернуться хождением по минному полю, усеянному детскими граблями.

GBullfinch
()

только pure c, только хардкор!

Ну а если серьезно, то выше уже изложили, почему C/C++ предпочтительнее

solovey ★★
()

Только c||с++ можно разрулить тот адъ когда в протоколе есть куча структур с битовыми полями

Uter
()
Ответ на: комментарий от mongrel

Ну ок, думаю взять С++, в связи с чем маленький вопросик, какая иде в linux удобнее для этого язычка? Eclipse? NetBeans? Что-то еще?

n1l
() автор топика
Ответ на: комментарий от rimsleur

В заголовке автор явно указывает Java || C++. На C++ задачу можно решить с помощью QtSerialPort, если конечно размер зависимостей (библиотеки QtCore) не является препятсвием.

m0rph ★★★★★
()
Ответ на: комментарий от m0rph

По наличию джавы, при том, что указан шарп и моно уже видно, что тс плавает в предмете. Лучше не запутывать его лишними зависимостями.

rimsleur
()
Ответ на: комментарий от n1l

Ясно, я неправильно распарсил предложение. Смысл был такой, что в винде пишу на шарпе, но в линуксе моно использовать нет желания. Тогда да.

rimsleur
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.