2010-06-11 23 views
5

Duplicar posible:
in which area is c++ mostly used?¿Qué tipo de programas usa C/C++ por ahora?

Me comenzó con C en la escuela, fue a Java y ahora lo uso principalmente el (PHP, Perl, Python) de P por lo que mi exposición a la lenguajes de nivel inferior casi han desaparecido. Me gustaría volver a entrar en él, pero nunca puedo justificar el uso de C sobre Perl o Python. ¿Qué aplicaciones del mundo real se están construyendo con estos idiomas? Alguna sugerencia si quiero volver a sumergirme, ¿qué puedo hacer con C/C++ que no puedo hacer fácilmente con Perl/Python?

+6

¿Alguno de los videntes se preocuparía por explicar por qué? –

+0

Mi única exposición a "C like" es con Objective-C cuando hago cosas de iPhone. –

+0

Haha, las "P" –

Respuesta

1

C/C++ puede ser, y es, usado para casi todos los "tipos" de programas.

Hay algunas ventajas importantes a C y C++:

  • potencialmente un mejor rendimiento
  • más fácil de construir bibliotecas interoperables, sobre todo si se trabaja con bibliotecas utilizables de múltiples idiomas.
1

Bueno, los intérpretes para los idiomas de su "P" se escriben con certeza en c/C++. La mayoría del código del sistema operativo está escrito en C/C++. Por el lado de la aplicación, si te gustan los juegos, generalmente están escritos en c/C++. Todo lo que necesite alto rendimiento y/o poca memoria es un buen candidato.

He utilizado Gsoap, una implementación de cliente de jabón C++ para un servicio web que tiene un gran tráfico.

+4

"Mi compilador compiló su compilador"? –

+1

@Kate Gregory: Y para confundir las cosas, debería escribir un compilador de C en Python. – FrustratedWithFormsDesigner

+1

¿Sí? Bueno, ¡MI compilador compiló el compilador de tu compilador! ¡Y tu madre! –

3

pedir prestado algo de texto de la respuesta que tenía para otra pregunta relacionada:

  1. Los controladores de dispositivos en código nativo.
  2. Crunching de número de coma flotante de alto rendimiento (es decir, SIMD).
  3. Fácil capacidad de interfaz con rutinas de lenguaje ensamblador.
  4. Administre la memoria manualmente para ejecuciones de ejecución extendidas.
+0

Entonces, básicamente, si no necesito escribir ninguno de estos, ¿debería seguir utilizando los idiomas que estoy usando ahora? –

+0

Bueno, no son una lista exhaustiva. ¡Pero si su tarea no es engorrosa usando su idioma de elección, entonces continúe usando ese idioma! –

+0

# 4 debe ser una razón __NOT__ para usar C de todas las cosas! –

0

La mayoría de las aplicaciones de escritorio/consola con un sesgo hacia los gráficos dependen en gran medida de C++. Esto incluye software CAD y videojuegos AAA, entre otras cosas.

2

La mayor parte de mi trabajo ha sido C y C++. Estudié ingeniería informática en la escuela y trabajé con dispositivos integrados. Mi maestría tenía un énfasis en gráficos y visualización. Una de nuestras aplicaciones de visualización fue escrita en Python, pero en su mayor parte, los gráficos requieren C/C++ para la velocidad. Ahora trabajo con dispositivos integrados que ejecutan Windows Mobile y Windows CE, todos C++, aunque puedes hacer mucho con C#. Previamente trabajé en simulaciones, que era todo código C++ en el back-end. C++ sigue siendo el rey para IO sensible al tiempo, aplicaciones integradas, gráficos y simulaciones.

Básicamente, si necesita un control estricto del tiempo, pasa al nivel inferior.O si necesita de poco peso (es decir, el tamaño pequeño programa, pequeña huella de memoria)

+1

También trabajo en dispositivos integrados, y he usado C/C++ casi exclusivamente para estos proyectos. He usado lenguajes de alto nivel como Ruby y Python para pruebas y utilidades, y mi compañía ha utilizado Java para un par de proyectos incrustados menos críticos, pero C y C++ son nuestros caballos de batalla. – Maha

2

Algo no científicamente Me tomó un vistazo en Sourceforge y los veinte primeros proyectos/idioma desglose es actualmente así:

  • Java (43.199)
  • C++ (34.313)
  • PHP (28.333)
  • C (26.711)
  • C# (12.298)
  • Pyth en (12.222)
  • JavaScript (10.307)
  • Perl (8.931)
  • Unix Shell (3.618)
  • Delphi/Kylix (3.353)
  • de Visual Basic (3.044)
  • Visual Basic .NET (2.513)
  • Asamblea (2.283)
  • JSP (1.891)
  • Rubí (1.731)
  • PL/SQL (1.669)
  • Objetivo C (1.424)
  • ASP.NET (1.344)
  • Tcl (1.241)
  • ActionScript (1.164)

Perl + Python juntos todavía total de menos de C solo. No tengo idea de por qué Java es tan alto, no conozco ningún desarrollador de Java y no he visto un solo proyecto de Java, ¡pero estoy seguro de que alguien lo está usando! Probablemente por la misma razón, no está viendo mucho C/C++, simplemente no está trabajando en un dominio donde figura altamente. Trabajo en sistemas integrados donde C y C++ son omnipresentes y Python no llega a ninguna parte. Se encuentran diferentes idiomas en diferentes extensiones en different worlds.

Pregunta qué puede hacer con C/C++ que no puede hacer fácilmente con Perl/Python; bueno, la respuesta es mucho, sistemas embebidos en tiempo real para uno; pero si eso no es lo que quieres/necesitas hacer, entonces no hay razón para hacerlo. Por otro lado, podría preguntar lo contrario; Usaría C++ para cosas que podría usar Python, simplemente porque para mí sería más fácil y más rápido (que aprender un nuevo idioma y hacer que las herramientas funcionen)

Cuestiones relacionadas