VB6 응용 프로그램을 .NET 플랫폼에 적용하는 것은 VB.NET 또는 C#과 상관없이 재 작성과 거의 같습니다. Java 플랫폼에서 .NET 플랫폼과 비교해 볼 때 더 많은 노력이 필요하다고 생각하십니까? 생각을 공유하십시오!VB6 응용 프로그램 마이그레이션
답변
위법은 아니지만 잘못되었습니다. .Net으로 이식하는 것은 일반적으로 까지보다 쉽게 다시 작성합니다.
.NET에 대한 완전한 재 작성을 수행 우리는 단지 소수를위한이 방법을 추천 할 것입니다 ... [변환보다] 잘 할 훨씬 더 비용이 많이 들고 어렵 :
여기 Microsoft UK에서 공식 조언이다 상황. 내가 .NET의 초기에 함께 일
많은 기업들이 개선을위한 강한 욕망에 의해 부분적으로 구동 재 작성에서 처음 보았다 : 재 작성에 자문을 마이크로 소프트 사람에 의한 blog post에서
기본 아키텍처 및 코드 구조를 .NET으로 옮겨 가면서 동시에 사용할 수 있습니다. 불행하게도 그 프로젝트 중 많은 부분이 어려워졌고 몇몇 프로젝트는 완료되지 않았습니다. 해결하려는 문제가 너무 많습니다.
이 순서대로 다음 두 단계를 수행하는 것이 좋습니다.
- 마이그레이션 또는 다시 쓰기 이유를 적어 두십시오. 어떤 이점이 있습니까? 장점은 개발 팀을 행복하게 유지하는 것일 수 있습니다. 이는 충분히 좋은 이유 일 수도 있습니다. 잘 모르겠습니다. 알고 계시고 관리자/사용자가 동의하십시오.
- 닷넷 마이그레이션을위한 5 가지 기본 옵션을 설명하는 screencast으로 Microsoft UK advice을 확인하십시오. 가장 좋은 것을 결정하십시오. 그것은 다시 쓰일 수 있지만 눈을 뜨고 들어갑니다.
실제 질문에 대한 대답 : .Net 또는 Java에서 전체 재 작성이 쉬울까요? 팀이 가장 잘 알고있는 것이 바로 mainly depends on입니다. 또한 SLaks와 마찬가지로 응용 프로그램이 COM과 상호 작용하는지 여부에 따라 약간 다릅니다.
매우 멋진 로고가 있습니다. :) – SoftwareGeek
@BhejaFry 감사합니다. 나는 그것이 마침내 인정 받았기 때문에 기쁘다! – MarkJ
감사합니다. MarkJ. 게시 한 위의 링크에서 언급 한 전체 재작 성 이유는 우리 상황에 완벽하게 유효합니다. 그러나 .NET 컨설턴트로서 저는 관리자에게 Java 플랫폼이 아닌 .NET 플랫폼으로 이식하는 것이 더 낫다는 것을 확신시켜야합니다. 그는 자바 개발자가 많기 때문에 돈을 절약 할 수 있다고 생각합니다. 이 응용 프로그램의 COM 종속성을 평가하려면 기존 VB6 코드를 참조해야합니다. 하지만 다른 사람들이 COM 의존성에 관해서 말했듯이, 좋은 점이 있습니다. – WinFXGuy
응용 프로그램에서 COM을 사용하는 경우 Java에서보다 .NET에서 다시 작성하는 것이 훨씬 쉽습니다. 그렇지 않으면 .Net으로 포팅하는 것이 다소 쉬울 것입니다.
자세한 답변을 원하시면 신청서에 대한 자세한 내용을 제공해주십시오.
VB6 앱을 다시 작성하려는 노력은 사용자가 목표로 삼는 언어의 문제 그 이상입니다. VB 응용 프로그램은 COM 개체 및 Java에서 동등한 기능이없는 특정 VB 관련 라이브러리 메서드에 의존하지만 .NET에서는 이식성이있을 수 있습니다.
프로젝트의 모든 종속성을 포기하지 않으려면 .NET을 사용하면에 대해 다시 작성할 수있는 더 쉬운 대상이 될 수 있습니다. 특히 기존 응용 프로그램의 일부 동작을 유지해야하는 경우 라이브러리 또는 기타 종속성으로부터.
또 다른 고려 사항은 팀이 가장 잘 알고있는 플랫폼이 될 것입니다. Java 전문 지식이 많지만 .NET 전문 지식이 거의 없으면 Java가 좋은 선택 일 것입니다.
COM 의존성에 대해 좋은 점, 감사합니다! – WinFXGuy
다른 프레임 워크에 동등한 구성 요소가 있는지 여부에 대한 질문보다 COM 자체에 대한 문제가 훨씬 적습니다. COM은 단지 구성 요소 기술이며 일반적으로 VB6 코드로 함께 붙인 미리 패키지 된 코드의 기능이 더 큰 문제입니다. 구성 요소를 "종속"이라고 생각하지 마십시오. 이것은 자동차의 엔진을 "의존성"이라고 부르는 것과 같습니다. – Bob77
@Bob LBushkin이 의미하는 바는 그것이 메소드/컴포넌트가 Java에서 동등한 기능을 가졌는지 여부입니다. 즉, 기능에 관한 것입니다. 그냥 BTW - 혹시 실제로 자동차 엔진을 다른 유형의 엔진으로 교체 한 적이 있습니까? 가솔린 -> 전기 또는 휘발유 -> 디젤이라고 말하십니까? 확실히 가능하지만 꽤 비싼 것 같습니다. – MarkJ
Visual Studio에 포함 된 도구를 포함하여 VB6에서 VB .NET으로 마이그레이션 할 수있는 도구가 있습니다. This tool은 VB6를 C#으로 마이그레이션합니다. 어떤 도구를 사용하든 도구가 출력하는 코드에 대해 많은 수작업을해야하지만 완전한 Java 다시 작성보다 작업이 적을 수 있습니다.
기존 응용 프로그램의 아키텍처와 코드 구조에 따라 코드를 완전히 다시 디자인하고 다시 작성하는 것이 더 좋을 수도 있습니다.이 경우에는 .Net과 java 중에서 선택하는 것이 많지 않을 수 있습니다. .
그 도구는 약한 소리. 내가 아는 한 최고의 마이그레이션 도구를 가지고있는 Artinsoft.com 또는 VBMigration.com을 확인하십시오. 그들은 둘 다 마이그레이션 된 코드에 대한 최소한의 수동 작업을 요구하며 확실히 재 작성보다는 훨씬 적습니다. 오, 그리고 재 작성에 대해 신중해야합니다. http://stackoverflow.com/questions/2812224/migration-of-a-vb6-application/2815414#2815414 – MarkJ
Netcoole 도구와 Artinsoft를 모두 사용했습니다. 나는 Netcoole이 매우 약하다고 동의하지만, 매우 싸다! 출력물에 대한 많은 수작업을해야 할 것입니다.이 도구뿐만 아니라 Artinsoft는 탁월한 마이그레이션 서비스를 제공합니다. 훨씬 더 비싸지 만 마이그레이션 작업을 직접 수행 할 필요가 없습니다. Artinsoft는 또한 Visual Studio에서 제공되는 업그레이드 마법사를 작성했습니다.이 마법사는 주요 도구의 축소 버전입니다. – Polyfun
그러나 응용 프로그램이 제 3 자 COM 개체를 많이 사용하는 경우에는 .NET을 사용하는 것이 더 좋을 수도 있습니다. – WinFXGuy
자바 바이트 코드 컴파일러 인 Jabaco를 사용할 수도 있고 VB6과 거의 비슷한 IDE와 구문을 가지고 있습니다.
당신은 더 많은 정보를 찾을 수 있습니다 : ArtInSoft 그냥 .NET으로 마이그레이션하는 것처럼
http://www.jabaco.org/
http://www.jabaco.org/board/
는 마이그레이션 도구를 사용합니다.
VB.Net에 내장 된 VS 마이그레이션을 사용하여 VB 6 응용 프로그램을 마이그레이션 할 수 있습니다. 그게 도움이되는지보십시오. VB 6에서 C#으로 마이그레이션 할 계획이라면 ScaleOvenStove 사용자가 권장 한 것을 권할 것입니다.
마이그레이션 도중 총 노력뿐만 아니라 마이그레이션 후 유지 관리 비용도 줄이는 것이 중요합니다. 많은 요소가 TCO를 발생 시키지만, .NET 툴, 커뮤니티, 프레임 워크 및 C# 언어는 개발자 생산성, 운영 관리 가능성 및 성능면에서 Java를 충족 시키거나 능가한다고 생각합니다.
나는 COM 유지의 용이성이 결정적인 요소라고 생각하지 않는다. 사실 VB6을 .NET으로 마이그레이션했지만 COM을 유지하는 것이 VB6 마이그레이션을 수행하는 중요한 목적을 극복하지 않아도 될 것이라고 생각합니다. 즉, 잘 지원되고 실행 가능한 플랫폼으로 이동하여 개발 비용과 위험을 줄이는 것입니다. 나는 당신에게 말할 이유 :
VB6와 함께 사용 된 인기있는 COM 라이브러리와 컨트롤의 대부분 이 몇 년에 진화하지; 중 많은 수가 더 작은 공급 업체가 으로 사라 졌거나 여전히 제품을 지원하는 경우 새로 제공되고 개선 된 .NET 버전을 제공합니다.
마이그레이션 후 기존 COM과 디버깅의 측면에서 추가 복잡성과 함께 생활 수단, 빌드 및 배포 생활. 또한 COM 구성 요소는. NET (즉, .NET 유형 및 규칙을 사용하지 않음) 일반적으로 과 함께 사용하면 코딩 및 디자인이 복잡해 지므로주의해야합니다.
여전히이 규칙 에 몇 홀드 아웃 및 예외가 있습니다와 .NET 교체는 항상 최선의 선택이 아니라 일반적으로 마이그레이션 팀이 적어도 하나의 을 찾을 수있을 것입니다. NET 대체 옵션 거의 모든 COM 구성 요소를 사용합니다. 신중하게 시간을내어 을 평가하고 개 중 하나를 선택하여 업그레이드하면 해당 옵션이 마이 그 레이션 후에 처리됩니다.
마이그레이션 할 VB6 인 을 상호 운용하고 싶지는 않습니다. 자신의 코드를 상호 연결하면 복합 전환이 더 길어지고 일반적으로 에 다시 추적이 필요하고 재 작업/다시 테스트가 이미 코드 개 코드로 마이그레이션되어야합니다. 분명히 이것은 효율적이고 이해할 수있는 업그레이드 경로가 아닙니다.
"출력물에 많은 수작업을해야한다"는 한 가지 더 요. Great Migrations 제품은 새로운 프로그래밍 가능 마이그레이션 도구입니다. 이 도구는 마이그레이션 팀이 생성 된 코드의 품질을 점진적으로 향상시켜 마이그레이션 프로젝트를 완료하는 데 필요한 수작업을 줄일 수 있도록 설계되었습니다. 여기에는 복잡한 다중 VBP 마이그레이션을 처리하고 .NET 구성 요소를 사용하기 위해 VB6/COM 코드를 재구성하는 작업을 자동화하여 번역이보다 정확 해집니다. 이러한 기능은 VB6 코드베이스가 매우 크고 자주 변경되며 마이그레이션 중에 크게 재 설계되고 정리되는 경우 특히 유용합니다. 이것은 도구 지원 재 작성이라고 부르는 민첩한 마이그레이션 방법입니다.
면책 조항 : 저는 Great Migrations를 위해 일합니다.
- 1. VB6 응용 프로그램 타이밍
- 2. 레거시 VB6 응용 프로그램 대체
- 3. 오픈 소스 VB6 응용 프로그램
- 4. SetParent() VB6 응용 프로그램에서 C# 응용 프로그램
- 5. DCOM 문제 CruiseControl.net에서 VB6 응용 프로그램 빌드
- 6. 오류 70 VB6 exe 응용 프로그램
- 7. VB6 Outlook 2003 클라이언트 응용 프로그램
- 8. VB6 COM + 응용 프로그램 다시 설치 문제
- 9. iphone 데이터 마이그레이션 및 응용 프로그램 디자인
- 10. IE에서 크로스 브라우저로 응용 프로그램 마이그레이션
- 11. "장고 응용 프로그램 마이그레이션"의 의미는 무엇입니까?
- 12. .NET/MySQL 응용 프로그램 마이그레이션. to DB2
- 13. JSF를 사용하여 다른 서버로 응용 프로그램 마이그레이션
- 14. 간단한 응용 프로그램을 응용 프로그램 대리인에서 ViewController 클래스로 마이그레이션
- 15. 마이그레이션 프로그램 개선을위한 도움말
- 16. VB6 : 모든 사용자 세션에서 단일 인스턴스 응용 프로그램
- 17. 네이티브 컴파일 VB6/Best Desktop 응용 프로그램 언어의 상태
- 18. VB6 응용 프로그램 .NET DLL 호출 OutOfMemory 예외
- 19. 일부 VB6 응용 프로그램 용 Windows 7 UAC 매니페스트 파일
- 20. VB6 웹 응용 프로그램 - RM 또는 Non-RM - 정말 중요합니까?
- 21. Windows 서버 2008에서 실행되는 comdlg32.ocx가 필요한 VB6 응용 프로그램
- 22. 내 응용 프로그램 (VB6)에서 OpenOffice.org 맞춤법 검사기 사용 방법
- 23. 실버 라이트/wcf 웹 응용 프로그램 vb6 windows 응용 프로그램 마이 그 레이션
- 24. VB6 컴파일 된 응용 프로그램으로 작동하지만 VB6 IDE에서는 작동하지 않는 VB6 App + .Net 구성 요소
- 25. 응용 프로그램 서명 마이그레이션 Windows와 Linux 간의 이식
- 26. IIS를 통해 구성된대로 웹 응용 프로그램 설정 마이그레이션
- 27. Windows 2000 서버에서 실행중인 응용 프로그램을 Windows Server 2008로 마이그레이션
- 28. VB6 응용 프로그램의 데이터베이스 암호
- 29. VB6 응용 프로그램에서 MySQL에 연결
- 30. VB6 Windows Me에서 작동하지 않는 프로그램
팀에는 많은 Java 개발자가 있으며 Java 플랫폼에서 구현중인 현재 프로젝트가 있습니다. 하지만 그들은 기존의 VB6 앱을 사용하여 새로운 기술로 마이그레이션하려고합니다. 매크로를 사용하여 VBA 및 단어 템플릿을 사용하지만 PDF 솔루션에서 제거해야합니다. – WinFXGuy
가능한 복제본 : http://stackoverflow.com/questions/395/how-do-you-migrate-a-large-app-from-vb6-to-vb-net –
아닙니다. 제 질문은 .NET에 비해 vb6 애플리케이션을 Java로 마이그레이션하는 장단점에 관한 것입니다. – WinFXGuy