¿Existe alguna limitación para usar WinRT en lugar de .Net? [cerrado]

7

Según mi entendimiento, crear una aplicación que se ejecute en múltiples arquitecturas requiere virtualización, y la virtualización reduce el rendimiento, ya que crea una capa de abstracción.

¿Si Windows 8 es compatible con las arquitecturas Intel y ARM, deberíamos esperar un rendimiento más lento con una aplicación WinRT en lugar de una aplicación .Net que se ejecuta en un dispositivo Intel?

Además, ¿WinRT admitirá la conectividad de la base de datos y el acceso al directorio activo?

    
pregunta jerrykobes 04.07.2012 - 05:21

2 respuestas

12

Por lo que he visto, WinRT es en realidad un "no administrado "capa de software basada en objetos COM nativos, por lo que NO esperaría ver un gran impacto en el rendimiento al invocar las API. De hecho, es muy probable que estas funcionen mejor que las aplicaciones .NET en el CLR, ya que es probable que sean "más cercanas al metal" que las aplicaciones puramente .NET.

TengaencuentatambiénquepuedeimplementarlasAPIdeWinRTinvocadasdesdeaplicaciones.NET(o,yaquequierenqueelrumoraumenteyatraigaaloshipstersdelaweb,enHTML5yJavaScript),perosonlibresdeimplementarsuaplicacióncompletamenteenC++siPrefieresytepreocupanlascapasadicionales.

  

WinRTesesencialmenteunaAPIbasadaenCOM,aunqueconfíaenunCOMmejorado.  [...]WinRTpermiteunainterfazrelativamentefácilde  variosidiomas,[...]esesencialmentenoadministrado,  APInativa.Esteformatocomúndemetadatos[basadoen.NETECMA335]  permiteunasobrecargasignificativamentemenoralinvocarWinRTdesde  Aplicaciones.NETcomparadasconunP/Invoke,ysintaxismuchomássimple.

    

-Desde WinRT de Wikipedia ( énfasis mío )

También, considere consultar el Lenguaje de las extensiones de componentes C ++ / CX :

  

El nuevo lenguaje C ++ / CX (Extensiones de componentes) ,   que toma prestada alguna sintaxis de C ++ / CLI, permite la creación y el consumo de   Componentes de WinRT con menos pegamento visibles para el programador en comparación con   Programación clásica de COM en C ++ [...]. C ++ regular [...]   también se puede utilizar para programar con componentes WinRT , con la biblioteca [a] llamada    Biblioteca de plantillas de Windows Runtime C ++ (WRL) , que es   similar en su propósito a lo que proporciona Active Template Library para COM.    Sin embargo, MSDN Library recomienda usar C ++ / CX en lugar de WRL .

     

- Desde WinRT de Wikipedia ( énfasis mío )

El Guardian también proporciona un artículo interesante sobre rechazo aparente de .NET a favor de C ++ para desarrollar aplicaciones basadas en WinRT .

El mismo artículo apunta a una gran explicación de WinRT comparada a Silverlight y WPF en StackOverflow.com .

Con respecto a sus otros puntos, WinRT en sí mismo no lo limita ni le impide interactuar con una base de datos o AD. Simplemente no lo hace fácil, y la pregunta es más sobre cómo quieres hacerlo.

    
respondido por el haylem 04.07.2012 - 06:58
0

Con respecto a su pregunta sobre la parte de conectividad de la base de datos, a partir de ahora winRT no tiene soporte para la mayoría de los controladores de base de datos. SQLLite es el que se soporta a partir de ahora.

El modo ideal sería acceder a la capa de datos a través de los servicios. y tu no deberías estar conectándote directamente a la base de datos como el servidor SQL, Oracle y cualquier otra base de datos para esa materia.

puede usar db indexado y sqllite para las opciones de almacenamiento de datos locales.

    
respondido por el Explorer 21.03.2013 - 10:34

Lea otras preguntas en las etiquetas