Este artículo proviene de un motor de traducción automática.

Nota del editor

Por qué C++ aún importa

Keith Ward

Keith WardUno de nuestros objetivos después de la rueda en msdn Magazine fue para acercarla a los lectores. Y una de las cosas que siempre nos ha dicho es que tenemos que tratar de no C++ como el tío loco en el ático.

Hemos escuchado, y esto es el resultado. Este mes ve el retorno de uno de nuestras más populares columnas, Windows de Kenny Kerr con C++. Kerr escribió esta columna durante años, y estamos encantados de bienvenida de nuevo el desarrollo Yoda de C++. A kick off derecha, pedí Kerr algunas preguntas que C++ en el contexto del entorno de desarrollo de hoy. Aquí es lo que tenía que decir.

**¿Qué ventajas mantenga C++ sobre C#?**Kenny Kerr: Hay casos donde C++ tiene más sentido. ¿Por qué Microsoft ¿desarrolló los servicios Web de Windows nativo [WWS] API largo después de Windows Communication Foundation [WCF] estaba bien establecida como el estreno de pila de servicios Web? Sin duda, la.NET Framework es ideal para haciendo XML y el manejo de solicitudes HTTP. Bueno, resulta que C++ puede producir considerablemente mejor rendimiento mientras utiliza menos memoria (bit.ly/czhaLd).

¿Esto realmente importa? Si usted es un banco de inversión con capital suficiente para construir grandes redes informáticas, tal vez no. Sin embargo, si su cliente está desarrollando netbooks y tabletas o smartphones, o está preocupado por el uso de batería o tiempo de inicio para portátiles o necesidades para escalar su servidor Web para gestionar solicitudes de vídeo de cien millones sin necesidad de servidores Web de cien, entonces empieza a importa mucho.

**¿Cómo C++ con el Web y asociados a las tecnologías?**Todos los principales navegadores Web y servidores Web están escritos en C++. Los sistemas operativos que ejecutan estas aplicaciones también están escritos en C++. Si muchos desarrolladores reflexionar sobre ello o no, C++ claramente juega un papel fundamental en la toma de la Web un entorno rápido y Rico para usuarios y desarrolladores por igual. Por supuesto, cuando algunos desarrolladores piensan en lenguajes de programación, son realmente pensar cómo pueden utilizar para desarrollar aplicaciones de estos servidores y navegadores Web. Es donde los lenguajes específicos de dominio pueden desempeñar un papel crítico.

JavaScript es la opción obvia para desarrollo de aplicaciones para el explorador. Muchos lenguajes específicos de dominio juegan un papel clave en la construcción de las aplicaciones de servidor de SQL para manipular los datos, Razor para la producción de marcado. Hay, por supuesto, nada le impide escribir aplicaciones de servidor Web en C++. Muchos lenguajes específicos de dominio requieren distintos tiempos de ejecución que pueden no ser apropiados para algunos escenarios: las aplicaciones de servidor shrink envuelto ven dispositivos incrustados. IIS también tiene un gran API C++ para el tratamiento de aspectos críticos para el rendimiento de una aplicación Web, tales como manejo de I/O o procesamiento cuadros gráficos.

**¿Cuáles son algunos de los cambios más grandes en C++ con la versión más reciente?**En lugar de pensar en términos de cambios, debe pensar en términos de lo que hace bien C++ y cómo pueden hacer mejores las cosas. C++ no cambió mucho, pero ha mejorado en muchas formas de hacer más fácil hacer las cosas que C++ tradicionalmente ha sido buena en hacerlo.

Por ejemplo, C++ tiene mucho que decir sobre la potencia y el rendimiento, pero no siempre es tan simple como podría ser. C ++ 0 x va un largo camino hacia lo más sencillo para los desarrolladores de aplicaciones y más expresivo para el desarrollador de biblioteca construir abstracciones más poderosos que son aún más eficientes, pero de una manera más simple y más intuitiva. Mover la semántica, por ejemplo, tiene algo que era muy difícil hacer antes y hace no sólo eficientes, pero también simple para desarrolladores de biblioteca y aplicación. Lambdas son otro gran ejemplo de C ++ 0 x hacer C++ más expresivo al tiempo que reduce la necesidad de crear objetos de función que fragmentan innecesariamente la estructura de una aplicación.

**¿Cuáles son sus principales objetivos con su nueva columna?**Creo que C++ y Windows juntos hacen una poderosa combinación de producción de grandes aplicaciones. Muchos desarrolladores han perdido de vista, impulsado en gran medida por el énfasis de Microsoft en el.NET Framework. Espero poder mostrar a los desarrolladores que es factible y incluso agradable: escribir aplicaciones para Windows con C++ usando la API de Windows. Al igual que el.NET Framework, la API de Windows sigue ampliándose a ofrecen más capacidades. Basta con mirar las aplicaciones como Internet Explorer 9 para desarrollar el potencial de C++ en Windows 7. También creo que Windows 8 y más allá va a promover aún más las capacidades específicamente para los desarrolladores de C++.