2010-03-27 5 views
8

현재 Windows 컴퓨터에서 심각한 쌍 프로그래밍을 연습하는 직장에 있습니다. 우리는 키보드와 마우스 세트를 모두 가지고 있으며, 모니터가 두 대있어서, 운전자를 아주 쉽게 전환 할 수 있습니다.하지만 세션에서 몇 가지 포인트가 있습니다. 동시에 내 쌍을 테스트하고 싶습니다. 구현을 작성합니다.리모컨이 아닌 쌍 프로그래밍 도구

같은 컴퓨터에 두 개의 커서와 키보드 포커스를 효과적으로 가질 수있는 프로그램이 있는지 궁금합니다. 그들이 존재하지 않는다면 나는 내 자신의 해결책으로 실험하려고한다. 그러나 이것을 가장 잘 수행하는 방법에 대한 의견을 듣고 싶다. 나는 .Net 3.5 기술에 가장 익숙하지만 Java를 알고 있으며이 문제를 해결하기 위해 C++을 배우려합니다.

내가 솔루션을 직접 만들었다면 하나의 하드웨어 장치 (즉, 설치된 특정 마우스)의 입력을 받아 Windows가 포인터를 이동하는 것을 방지하고 대신 자신의 프로그램을 이동할 수있는 길을 간다. 포인터를 독립적으로.

+0

지나치게 복잡한 것 같습니다. 마우스/키보드에 KVM 스위치를 사용하고 페어링하지 않으려면 모니터/키보드 마우스 중 하나를 다른 컴퓨터로 전환하는 것이 가장 좋은 이유는 무엇입니까? – Paddyslacker

+0

상황을 자세히 설명하면 데스크톱이 있고 일주일에 한 번씩 쌍을 전환하면 다른 개발자 컴퓨터 옆에서 컴퓨터를 이동할 수 없습니다. – JonathanTech

+0

동일한 시스템에 있다면 마지막으로 작은 기능이 하나 있습니다. 소스 제어를하지 않고이 작업을 수행하고 싶습니다. Google Wave와 같이 편집 한 파일에 대한 클라이언트간에 편집하는 것과 비슷합니다. 우리는 희소 한 체크 인을 사용하고 있기 때문에 지속적인 통합으로 인해 코드가 깨지기를 좋아하지 않습니다. (완료되지 않았기 때문에 리 팩토링으로 인해 많은 일이 발생합니다) – JonathanTech

답변

15

뭔가 내가 한 번했던 :

는 두 개의 책상을 가지고 각 개발자는 책상에 앉아 때 다른 개발자를 향하도록 서로 마주 그들을 놓습니다.

각 개발자는 두 대의 모니터를 가져 오며 그 중 하나는 다른 개발자의 컴퓨터에 연결됩니다.

각 컴퓨터는 해당 모니터를 다른 모니터로 미러링/복제하도록 설정됩니다. 즉, 각 개발자는 서로 대면하고 있지만 각 개발자는 다른 개발자가 컴퓨터에서 수행중인 작업을 볼 수 있습니다.

그런 다음 각 개발자는 "Synergy2"(http://synergy2.sourceforge.net/)라는 무료 소프트웨어를 컴퓨터에 설치하고 개발자가 화면 가장자리를지나 마우스 커서를 다른 모니터가 보이는 쪽을 향해 움직일 때 구성합니다 , 개발자는 다른 개발자의 인터페이스와 상호 작용할 수 있습니다.

이렇게하면 상황이 요구하는대로 항상 다른 사람이 무엇을하고 있는지 볼 수 있으며, 운전에서 샷건을 타고 서로 움직일 수 있습니다.

때로는 하나의 개발자가 항상 운전하고 다른 하나는 항상 산탄 총을 타는 고전적인 방법처럼 작동하지만 결국에는 독립적으로 또는 함께 작업 할 수있는 기회를 제공합니다.

사실 나는 월요일에 나의 현재 직장 동료들과 함께 이것을 시도 할 것을 제안 할 것이라고 생각한다!

+0

지금 내가 듣고 싶은 열린 마음의 유형입니다. 이것은 정말로 좋게 들린다. 그리고 우리는 벌써 중간에있다. 정말이 아이디어가 마음에 들었습니다. 비록 순수한 '하나의 기계'가 아니라고해도, 내가하려는 것을 성취 할 수있을 것입니다. 나는이 아이디어가 원격 팀에게도 잘 적용될 수 있다고 생각한다. – JonathanTech

+0

잘 작동합니다. 나는 이전 직장에서 여러 달 동안 다른 개발자와 똑같은 방식으로 쌍을 이뤘고 우리는 함께 좋은 결과를 얻었다. – RibaldEddie

0

클래식 페어 프로그래밍은 2 명의 프로그래머가 PC에 앉아 있지만 코드를 작성하는 프로그래머가 한 명뿐입니다.

+1

예,하지만 새로운 것을 시도하고이 훌륭한 것을 진화시킬 수 있습니다. 아이디어는 더 많은 것이 그것으로부터 올지도 모른다. 전통을 위해 항상 전통에 갇혀 있으면 더 나은 것을 발견하지 못할 것입니다. 나는 내가 제안한 것을 시도하고, 상황이 개선되는지보기를 원합니다. 그렇지 않다면 나는 상관하지 않으며 실험을 즐겁게하고 있습니다. 어쨌든 – JonathanTech

+0

, 하나의 파일을 동시에 편집하는 것이 좋습니다. 소스를 컴파일하려하지만 동료가 코드를 오류로 작성하려고합니다. 너는 그 때 무엇을 할 것인가? 당신이 다른 일을하고 있다면 - 내 방식은 SCM + 병합을 사용하는 것입니다. – zerkms

0

나는 VNC를 사용하지만, RDP는 아마 잘 작동하도록 만들 수있다. 내 파트너의 VNC 서버에 연결하면 자신의 데스크톱을 볼 수 있고, 화면에 입력하고, 커서를 움직일 수 있습니다. 그러나 API를 찾거나 내 자신의 코딩을 할 때 창을 최소화 할 수 있습니다. 다른 모니터, 또는 그냥 내 브라우저/편집기를 넣어.

2

귀하의 의견을보고 나면 여러 대의 키보드가있는 단일 컴퓨터를 사용하는 것과 같은 컴퓨터를 사용하지만 두 사람이 서로 다른 프로그램에 입력하는 것처럼 보입니다. 이 작업을 수행하는 프로그램을 작성했지만 사용자 정의 응용 프로그램에서만 작동합니다.당신이 $ 100 정도를 지불 할 경우

, 몇 가지 프로그램은 당신이 시도 할 수 있습니다 :

모든 위의 프로그램 중 하나는 단일 컴퓨터와 함께 사용하도록 설계되었습니다. 여러 개의 몬스터/키보드/마우스를 사용할 수 있습니다.

여러 모니터가있는 단일 컴퓨터의 용어는 멀티 헤드입니다. 다중 모니터 및 키보드가있는 단일 컴퓨터의 용어는 멀티 시트입니다.

+0

멀티 시트는 다른 사용자와 동일한 데스크톱을 공유하려는 여러 로그인 (예 : BeTwin 및 SoftXpand의 제공)을 원하지 않으므로 잘못된 아이디어를 제공합니다. 하지만 내가 언급 한 다른 프로그램을 살펴볼 것입니다. 감사합니다. – JonathanTech

+0

나는 그 솔루션을 살펴 보았고, 리소스를 늘리는 데는 유용하지만 내 상황에 맞는 솔루션은 없습니다. – JonathanTech

+0

스테이션 중 하나에서 VNC를 실행하면 다른 스테이션의 바탕 화면을 복제 할 수 있습니다. 너가 원하는게 그거야? – Gabe

0

작업하는 동안 테스트를 수행하는지는 알지 못하지만 저렴한 클래스의 솔루션이 항상 있습니다. 단 하나의 클래스에 대한 코드를 작성한 다음 그 코드를 보내면됩니다. 완료되면 가져 오기.

예제 상황 : 뭔가를위한 양식 응용 프로그램을 만들고 거기에 맞춤 시계가 경과 시간을 표시하게하고 싶습니다. 한 사람이 주 기계 (필요한 경우 테스트 할 수있는 능력이 더 많습니다.)를 작성하고 코드를 작성하는 동안 두 번째 사람은 시간 경과 시계에 대한 클래스를 작성하는 저렴한 컴퓨터에 있습니다. 가져온 다음 vairables를 "Namespace.Class.Variable"로 호출 할 수 있습니다. 이것은 두 사람이 동시에 일할 수있게 해주는 또 다른 옵션이 될 것입니다. 만약 당신이 서로 옆에 앉아 있다면, 다른 사람이하고있는 것을 여전히 볼 수 있고 다른 사람들에게 타이핑 할 수있는 권한이 있다고 가정 할 때 일의. 두 화면이있는 2 대의 컴퓨터보다 더 좋은 옵션 일 수 있습니다. P