elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Migrar programa de VB6
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Migrar programa de VB6  (Leído 3,879 veces)
madumo

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Migrar programa de VB6
« en: 26 Enero 2018, 12:12 pm »

Buenas a todos.
Tengo un programa de gestión de muchas muchas líneas de código, hecho en Visual Basic (muchos años de trabajo). Se me plantea la cuestión de que en unos años no funcionará, y quisiera migrarlo a otra plataforma estable, económica, fiable y estéticamente apetecible.
He intentado migrarla a vb.net, pero me resulta muy costoso de programar, y no obtengo mejores resultados que los actuales, ya que al final no es más rápido ni tampoco más estético.
He leído algo sobre Velneo, pero no estoy segura de que sea lo que necesito, tampoco sé precios.
Me gustaría que me orientasen sobre este asunto.

Muchas gracias.


En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: Migrar programa de VB6
« Respuesta #1 en: 26 Enero 2018, 22:16 pm »

Es una pregunta muy genérica, para abordarla en detalle.
Si no logras mejor rendimiento, a buen seguro es poque traduces línea por línea, a su equivalente en NET, y no debe ser así.

En general recuerdo que para vb2003 y vb2005 había un asistente de importación, que entre otras cosas te daba sugerencias que en efecto servían para optimizarlo. Aunque los mejores resultados se obtienen refactorizando el código para NET y para ello debes haber adquirido cierto dominio de NET, o al menos saber qué tienes a disposición para solucionar qué problemas.

Si tienes cuestiones concretas pregunta...


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: Migrar programa de VB6
« Respuesta #2 en: 26 Enero 2018, 23:48 pm »

He intentado migrarla a vb.net, pero me resulta muy costoso de programar, y no obtengo mejores resultados que los actuales, ya que al final no es más rápido ni tampoco más estético.

VB.NET es un lenguaje de programación, en lo que debes reflexionar es cual tecnología de .NET Framework elegir, me explico, probablemente hayas decidido migrar tu programa a la tecnología Windows Forms y por eso quizás no hayas notado diferencias estéticas apreciables a simple vista, pero si quieres mirar hacia el futuro y con todas las ventajas y beneficios en comparación, entre ellos estéticos, entonces deberías migrar tu programa a la tecnología WPF (Windows Presentation Foundation), haciendo uso de VB.NET y XAML.

ya que al final no es más rápido

Migrar de VB6 a VB.NET o mejor dicho a la máquina virtual de .NET Framework ya es un gran paso de optimización, claro que todo depende de como sea tu código fuente original en VB6 y como sea la adaptación y refactorizaciones que hagas en VB.NET. Un fallo muy común en este tipo de escenarios de migración o simplemente de gente nueva en VB.NET es ponerse a utilizar los miembros de compatibilidad de VB6 en VB.NET (ej. Len(), Left(), Mid(), etc), que aunque es puro código .NET te puedo asegurar que el código fuente es pura moralla, muy poco óptimo, así no vas a mejorar mucho el rendimiento general del código, tienes que utilizar siempre los equivalentes actuales, no los miembros de compatibilidad para la migración de VB6. En general lo mejor que puedes hacer viniendo de VB6 es ignorar/evitar utilizar (casi)cualquier miembro del namespace Microsoft.VisualBasic, dicho de otro modo: no sigas programando al estilo de VB6 en VB.NET, ese no es el camino correcto para optimizar nada... que es lo que a ti te interesa conseguir.

Ten en cuenta que de forma opcional siempre puedes recurrir a la herramienta NGEN (Native Image Generator) de Microsoft para impulsar de forma muy notable la velocidad de inicio (startup) de tu aplicación, eso sí, como contra afectará negativamente a la velocidad general de respuesta de los controles de la UI, pero el impacto negativo en ese sentido no se suele apreciar a menos que tu app sea muy..."pesada". Tú decides si te compensa ese tipo de mejora.

Por supuesto creo que no hace falta mencionar que para obtener beneficios en el rendimiento/velocidad, y suponiendo que en tu caso sea factible, siempre puedes adaptar tu código fuente antiguo para intentar hacer uso de la programación asíncrona / multi hilo / paralelismo en .NET.

Saludos.
« Última modificación: 27 Enero 2018, 00:14 am por Eleкtro » En línea



madumo

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Migrar programa de VB6
« Respuesta #3 en: 29 Enero 2018, 09:05 am »

En primer lugar, muchas gracias por contestar.
Es cierto que pasé el asistente para migración de VB6 a .NET, y que supongo que se ha traducido todo "línea a línea", pero llevo ya unos años trabajando con .NET y he hecho algunos cambios al programa, como conexiones, accesos a datos y tal. Debe ser que los cambios que le he hecho no son suficientes, y que tendré que hacerlos a mayor escala. He utilizado Windows Forms, porque es lo que me resultó tras pasar el asistente, y es que no sabía que hubiera alguna otra opción. Trataré de buscar información sobre XAML y WPF, a ver si puedo adaptarlo a mi proyecto.
Es que he leído algo sobre Velneo, pero parece que sería empezar desde cero, y estamos hablando de un programa de muuuchas líneas, y de muuchos años, que quizás si hablamos de empezar de cero buscaríamos otra opción y olvidarnos del código escrito.
Muchas gracias por vuestras aportaciones y me pondré a investigar por esta línea que me indicáis.
¿Para convertir mi programa en WPF, tendría que empezar de cero? o puedo "importar" o copiar-pegar o alguna otra solución?
« Última modificación: 29 Enero 2018, 09:31 am por madumo » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Migrar de Vb6 a PHP
PHP
hernan_mardel 5 8,226 Último mensaje 29 Septiembre 2007, 15:49 pm
por [ Alberto]
migrar programa c# de console a entorno windows
.NET (C#, VB.NET, ASP)
jugran28 3 3,826 Último mensaje 29 Noviembre 2007, 20:40 pm
por Hadess_inf
migrar
Windows
tigred 2 2,718 Último mensaje 27 Marzo 2012, 17:41 pm
por tigred
Apple prepara un programa de renovación para migrar al iPhone 5
Noticias
wolfbcn 0 1,379 Último mensaje 7 Junio 2013, 14:58 pm
por wolfbcn
Migrar programa de VB 6.0 a Laravel
Programación General
p4md4 2 3,010 Último mensaje 12 Febrero 2018, 04:31 am
por p4md4
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines