2010-02-22 2 views
2

불행히도 저조한 글을 쓴 동료 중 상당수가 C++ 레거시 코드 모듈을 사용하고 있습니다. 각각은 다른 일을하고 있지만 리눅스에서 실행되는 모든 GNU C++ 코드입니다.C++ 레거시 프로젝트 워크 플로우에 대한 프로그래밍 언어 결정

매우 시급한 데모를 위해 워크 플로우 용 단일 C++ 모듈을 만들기 위해 컨트롤러 프로그램을 작성하고 싶습니다. 또한 프런트 엔드 웹 응용 프로그램을 작성하여 클라이언트가 컨트롤러에 작업을 제출할 수 있도록해야합니다.

내 주요 기준은 다음과 같습니다

  • 개발 속도 (매우 긴급한 데모)
  • 좋은 C와 바인딩 ++의
  • 원활한 도입을 (내가 레거시 코드 나 다른 언어로 다시 작성하지 않으려했다) 팀에 새로운 프로그래밍 언어 (일부 파이썬, 자바와 펄 지식을 가지고)

어떤 프로그래밍 언어가 내 요구에 최선을, 그리고 왜에 맞는?

상세 사항 : JNI를 작성하는 종류의 쓸모없는 요즘 너무 많은 일, 그리고 같은

나는, C++과의 완벽한 결합을위한 파이썬 향하다. 그러나 우리 팀의 아무도 파이썬 프로그래머가 아닙니다. 나는 파이썬 (서버 측 프로그래밍 경험이 전혀 없다)을 알고있다. 작년에 Java EE 앱을 개발했지만 JNI가 좋은 솔루션이라고 생각하지 않습니다. 한 팀원 만이 Perl을 알고 있고, 다른 팀원은 순수한 C++ 프로그래머입니다.

+1

"cauz '는 무엇을 의미합니까? –

+2

SWIG를 사용하여 언어 바인딩을 생성하는 경우 언어 선택은 Python, Perl, Java 등을 지원하므로 문제가되지 않습니다. http://www.swig.org/compat.html#SupportedLanguages ​​ –

+0

혼란, 나도 내 자신의 어휘에 익숙해 ;-). Cauz '=> 왜냐하면 – Lily

답변

3

"매우 시급한 데모"부분을 언급하면서 복잡성에 따라 약 한 달이 걸린다 고 가정하면 익숙한 것을 계속 사용합니다. 사실, 파이썬을 유지 관리하는 것이 더 쉬워 질 것입니다. 파이썬을 배우는 것이 실용적이라고 생각한다면, 파이썬을 익히는 것이 좋을 것입니다.

나는 팀이 파이썬을 배우고 기본적인 것들을 배우게하고, 더 깊은 부분을 배우면서 확장/구현을위한 클래스를 만들 수 있다고 말하고 싶다. 그렇게하면, 배우면서 일을 끝내게됩니다.

0

파이썬을 사용합니다. Python C API를 사용하여 매우 기본적인 래퍼를 작성한 다음 Python에서 언급 한 함수를 비교적 쉽게 호출 할 수 있습니다.

2

긴박감을 감안할 때 C++을 고수해야합니다.

없으면 리팩토링 할 때 선호하는 언어로 자유롭게 전환 할 수 있습니다. 그것은 그것을 할 시간이 될 것입니다.

무엇을해야합니까 어떤 식 으로든 다시 작성하거나 기능을 변경하지 않고도 다른 언어로 "포트"할 수 있습니다. "최고의"결과를 기대할 수있는 것은 시간 낭비입니다. 끝나면 새로운 버그가 없다는 것입니다.

+0

입니다. 또한 다른 프로그래머가 C++을 알고 있기 때문에 필요에 따라 코드를 가져올 수 있습니다. – Joel