2010-06-14 5 views
3

곧 Modbus 드라이버를 프로그래밍해야하는 프로젝트를 시작하겠습니다. 나의 초기 접근 방식은 자바로하고 싶었지만, 상사가 Modbus에서 경험이있는 회사와 접촉 한 적이 있었고 C가 Modbus에 접근하는 더 좋은 언어라고 말했다. 그래서 내 상사는 C에 대해 거의 요구했습니다. C 지식은 그리 크지 않기 때문에 Modbus 드라이버가 적절하고 안정적인 순서로 작동하도록 배울 필요가있었습니다.Modbus 드라이버 : C 대 Java

그래서, 당신은 모드 버스에서의 경험을 가진 사람을 유래로 내 질문 : 얼마나 중요 자바 대 C의 선택은 될 수 있을까? modbus 사이트는 C가 자바보다 모든면에서 뛰어났다면 왜 자바 라이브러리를 갖고있는 것일까 요? 줄 수있는 이점에 대해 C를 올바르게 배우는 것이 유용할까요?

+0

나는 그것을 사용하려고 계획한다면 C를 배우는 것이 좋다라고 생각합니다. Java와 비교하면 꽤 간단합니다 (일단 포인터를 잡으면 거의 완료됩니다). – INS

+1

드라이버라고 할 때 운영 체제 장치 드라이버 또는 사용자 수준의 API를 의미합니까? 전자의 경우 C를 거의 사용해야합니다. 그렇지 않으면 문제가되지 않습니다. –

+0

운영 체제 드라이버가 아닙니다. 그것은 드라이버라는 것입니다. 왜냐하면 그것이 내가 항상 그것을 말하는 것이기 때문에 ... – cpf

답변

2

이 난 단지 (주택 구현에) C/C++에서 모드 버스의 일부 구현을 사용하지만, 모드 버스의 일부 open source implementations이 있습니다. 나는 면허가 당신에게 어울리는 경우에 그들이 사용될 수 있다고 생각합니다. 자바에서도 구현할 수 있습니다 - 선택의 문제입니다. 이 경우 선택을 정당화해야합니다.

다음 :this implementation은 BSD 라이센스하에 있습니다. 당신은 그것으로 무엇이든 할 수 있어야합니다 - 그러나 근원을 언급하는 것을 잊지 마십시오.

+0

내부적으로 C/C++을 사용하는 이유는 무엇입니까? 오픈 소스 구현에 대해 알고 있으며, 라이센스는 확실히 괜찮습니다. 우리는 코드의 일부를 최종 사용자에게 알리고 라이브러리를 만든 사람에게 크레딧을 제공하는 것을 "두려워하지"않습니다. 내가 만들고있는 유일한 고려 사항은 안정성, 속도, 리소스 사용에 대한 시간 - 학습 - 괜찮은 -c입니다. – cpf

+6

높은 안전성 응용 프로그램을 개발하면 결정적인 실행 시간과 응용 프로그램 (메모리 , 열린 파일 등). 이것은 더 낮은/중간 수준의 언어에서 더 쉽게 제어 할 수있는 C/C++ 언어로 쉽게 구현할 수 있습니다. Java의 가비지 컬렉터는이 범주에서 우리의 표준에 따릅니다. C는 단기간에 배우기 쉽지 않지만 리소스에 대한 엄격한 제어는 Java보다 몇 가지 장점이 있음을 인정해야합니다. – INS