문제

우리는 Java 5로 점프 한 상당히 많은 양의 코드를 가지고 있습니다. 유형. 원시 유형에 대한 오류를 생성하도록 컴파일러를 설정하고 수동으로 지우기 시작했지만 현재 속도로는 매우 그것에 대해 오랫동안 2500 오류). 그리고 그것은 Eclipse의 유용한 추론 일반 유형의 빠른 수정과 관련이 있으며, 이는 항상 오류를 제거하지만 종종 추가 작업이 필요한 코드를 생성합니다.

이것을 다루는 더 좋은 방법이 있습니까? Eclipse보다 자동화 된 도구가 더 좋습니까? 리팩토링을 적용하는 방법 모두 일대일로하는 대신 발생? 아니면 그냥 경고를 무시합니까?

도움이 되었습니까?

해결책

경고를 무시하는 것이 좋습니다. 그렇지 않으면 기능을 개선하지 않고도 레거시 코드를 업데이트하는 데 많은 시간을 할애 할 것입니다.

업데이트: 큰 의견 루크 더 많은 가시성을 가져야한다고 생각했습니다."제네릭은 컴파일 타임에 런타임 버그를 잡을 수있는 방법입니다.이 레거시 코드가 버그가 없다면 캐스팅과 관련이 있다고 생각하지 않는 한 내버려 둘 것입니다 (파산하지 않으면 고치지 마십시오)."

다른 팁

내가 아는 한, 당신은 가능한 한 효율적으로 그것을 가고 있습니다. 분명히 완벽하지는 않지만 결국 끝날 것입니다.

그러나 나는 당신이 단계적으로 그것을하는 것이 좋습니다. 코드의 일부가 다른 것보다 더 많은 혜택을 줄 수있는 부분이있을 수 있습니다. 한 번의 스윕으로 모든 것을 시도하면 코드에 새로운 버그를 도입 할 위험이 있습니다. 우리는 컨텍스트 의존적 데이터를 보유한 컬렉션이있는 곳이 있으며 제네릭은 실제로 효과가 없습니다.

기본적으로, 당신이하고있는 일을하십시오. 그러나 한 번의 던지기로 모든 것을 고치지 않고 다른 작업의 일부로 단계로하십시오.

비슷한 도전에 직면 한 우리는 또 다른 이유로 편집 된 코드에서만 Java 5 Style Generics로 업그레이드하기로 결정했습니다. 따라서 doitfast.java에서 수정해야 할 버그가 있다면 Doitfast.java를 업데이트하여 Java 5 Style Generics를 사용하십시오. 정기적으로 편집하고 변경되는 코드의 영역이 빠르게 업데이트됩니다. 이 행동의 몇 주 또는 몇 달 후에 코드 기반의 조건을 재평가 할 수 있습니다.

그것이 당신을 위해 일을 충분히 빨리 끝내지 못하면, 때로는 점심 식사 후 느린 시간을 사용하여 몇 가지 수업을 무의식적으로 정리하고 프로세스 속도를 가속화 할 것입니다.

나는 모든 이전 코드를 업데이트 할 필요가 없다고 생각합니다. 어쩌면 어떻게 든 이전 코드의 어떤 부분이 자주 사용되는지 식별하고 일반 유형을 사용하도록 업데이트 할 수 있습니까? 아니면 원시 유형이 공개 기능에서 반환 될 때만 걱정할 수 있습니까? 이러한 많은 사례는 아마도 개인/로컬 변수 일 것입니다.이 변수는 이미 일반 유형없이 작성되었으며 아마도 잘 작동하므로 다시 작성하려는 노력의 가치가 없습니다.

나는 당신이 당신의 모든 클래스를 선택하고, 컨텍스트 메뉴를 팝업하고, Refactor를 선택할 수 있다는 아이디어로 이해합니다 | 생성하십시오. 작업이 완료되었습니다. IMO (IMO)로 작업하는 것은 확실히 더 즐거운 경험입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top