Informática en general > Dudas informáticas
'escala' De Los Lenguajes De Programación
JuanK:
--- Cita de: "Eternal Idol" ---
--- Cita de: "JuanK" ---adicional a eso una sintaxis mas clara, una implementacion de POO mas limpia, una sana costumbre de no nombrar las APIS o los componentes con nombres obsoletos, el uso de namespaces, comprobacion de tipos seguros en tiempo de compilacion, el garbage collector, y muchas otras cuialidades del lenguaje que no existen en C++ como por ejemplo los indexers, los properties, los atributos, los delegados, la implementacion nativa de safe threads etc.
--- Fin de la cita ---
Los namespaces existen en C++, el garbage collector se puede implementar con bastante facilidad (eso no quiere decir que nos resulte util su funcionalidad comparada con su perdida de rendimiento ver Smart Pointers de cualquier manera). Muchas de las cualidades que nombras se pueden implementar (ver Boost http://en.wikipedia.org/wiki/Boost_library) y otras muchas mas vendran con el nuevo standard (ver http://en.wikipedia.org/wiki/Technical_Report_1) como pueden ser tablas hash o expresiones regulares.
¿Es esto realmente necesario para el lenguaje? Yo diria que no, util es, pero no es necesario. C++ no es una caja cerrada sino todo lo contrario, lo que no hay se puede implementar a mano sin ningun tipo de problema.
--- Fin de la cita ---
ok, pero en C# ya estan implementadas, asi que porque esperar.. y ojo, no digo que C++ sea malo porque de hecho lo adoro.. pero no me voy a poner a hacer un garbage colector ni a implementar todas las cosas de C# , ni a esperar a que otros lo hagan cuando ya lo tengo listo :lol: .
Tampoco escojeria lenguaje C o C++ para hacer una aplicacion en 3 dias cuando en C# la puedo hacer en horas... desde luego hay cosas que aunque quisiera no las podria hacer en C# como un Sistema operativo o que se yo.
x.cyclop:
--- Cita de: "JuanK" --- Tampoco escojeria lenguaje C o C++ para hacer una aplicacion en 3 dias cuando en C# la puedo hacer en horas... desde luego hay cosas que aunque quisiera no las podria hacer en C# como un Sistema operativo o que se yo.
--- Fin de la cita ---
Perdón, pero eso es una tontería.
Esa comparación solo se haría entre Vb y Asm, allí si tardarías un buen en hacer una aplicación de gestión en Asm.
Si en C# tardas 1 hora, en C++ tardas 1 hora y cuarto como máximo. Obviamente teniendo la misma experiencia en los 2.
:whistling:
JuanK:
--- Cita de: "X.Cyclop" ---
--- Cita de: "JuanK" --- Tampoco escojeria lenguaje C o C++ para hacer una aplicacion en 3 dias cuando en C# la puedo hacer en horas... desde luego hay cosas que aunque quisiera no las podria hacer en C# como un Sistema operativo o que se yo.
--- Fin de la cita ---
Perdón, pero eso es una tontería.
Esa comparación solo se haría entre Vb y Asm, allí si tardarías un buen en hacer una aplicación de gestión en Asm.
Si en C# tardas 1 hora, en C++ tardas 1 hora y cuarto como máximo. Obviamente teniendo la misma experiencia en los 2.
:whistling:
--- Fin de la cita ---
Lo dices porque no tienes experiencia en ningún desarrollo de tran envergadura ni tampoco ninguna experiencia a nivel de administracion de proyectos.
El dia que empieces a hacer desarrollos en serio, dejaras de decir tonterias :whistling: .
Para la muestra nada mas hay que comparar cuanto se tarda uno en trabajar con Web Services en java ( nivel 5) y cuanto mucho menos se tarda en C# (nivel 5 tambien)... ahora que cuanto tardare en C++ (nivel 4) :whistling: dependera de muchas cosas...
Incluso puede que codificando en algunos casos muy sencillos ( como el que panteas) tardes tan solo un poco mas en C++ que en C#... pero ve a hacer cuenta cuanto te demoras debugueando en C++ y cuanto en C#... y cuanto tiempo mas invertiras en el mantenimiento de ese aplicativo en C++ en subsecuentes oportunidades.... y cuanto con C#...
Ejemplo
Imaginemos esos 15 minutos de los que hablas ( asumamos que a los mucho sean 15, en un desarrollo de verdad seguramente sera mucho mas :whistling: )
15 minutos por hora son 25% mas de tiempo utilizado por hora, por lo cual si una empresa le paga a 10 desarrolladores digamos en pesos colombianos
2.000.000 a cada uno al mes por un desarrollo en C#, al año serian
2.000.000*10*12= 240'000.000 de pesos
pero si lo hacen en C++ ( con el supuesto que dijimos) realmente tendria que invertir el 25% mas osea:
2.500.000*10*12= 300'000.000 de pesos
asi que facil
300 -240 = 60 millones de pesos colombianos
una empresa que gaste 15 minutos mas por cada hora de desarrollo por usar C++ en vez de C# pierde al año 60'000.000 de pesos...
en dolares son +/- 30.000 dolares
Asi que como veras aun suponiendo que solo sea el tiempo que dices y suponiendo que sea una empresa muy pequeña de solo 10 desarrolladores ya estas perdiendo mucho dinero.
Es bueno usar C++ solo si es necesario, pero si no e necesario para que perder tanto dinero?
En la empresa donde trabajo son +/- 150 desarrolladores y +/- 300 personas mas en otros cargos y muchos dependen del desarrollo, es decir si falla el desarrollo debentrabajar mas o repetir trabajo ( ejemplo la gente de pruebas , administracion de la configuracion etc) asi que creeme que tus supuestos tansolo 15 minutos en una empresa de verdad se convierten hasta en 1 o dos dias mas de trabajo... nadmas hay que ver cuanto se tarda en realizar un set de pruebas... por no hablar del resto...
pero imaginemos que siguen siendo tus 15 minutos...
150 empleados C#
150*2.000.000*12 =3.600'.000.000 de pesos al año
150 empleados C++ ( que tardan 25 % mas o sea que es como si les pagaran 2'500.000)
150*2.500.000*12 =4.500'000.000 de pesos al año
Asi que en el supuesto de que en mi empresa 150 personas desarrollaran en C# y de un año a otro pasaran a hacerlo en C++, y suponiendo solo 15 minutos mas por hora ( lo cual ya quedo claro que se convierte en mucho más que eso) perderia al año:
900'000.000 de pesos
o sea +/- 392.000 dolares
... :whistling:
Eso es lo malo de pensar solo como programador, no se ve más alla...
por eso yo soy de los que insisto en formarce integralmente.
Para un programador usar C++ es 'lo mejor' porque 'si es un buen lenguaje' y realmente solo porque se siente mejor consigo mismo usando las herramientas que implican mayor dificultad y practica... para un gerente de proyecto ese chiste del programador le puede costar quebrar la empresa... o dejarla en manos de la competencia...
sergiotarrillo:
--- Cita de: "explorer" --- Y lo que dice su- es cierto, que la venta de libros representa los deseos de los programadores por aprender, pero no coincide a veces con los puestos de trabajo (absolutos). Y ni siquiera la gráfica de trabajos representa un estado actual. Hay pocas ofertas de trabajo de PHP, por ejemplo, porque es muy fácil encontrar desarrolladores en PHP. Sí que ayudan a ver tendencias.
--- Fin de la cita ---
esta buena esa web, no la conocia, voy a "bookmarkearla", pero lo malo es que solo es para USA, o bueno eso parece. Asi se solo se aplica a esa realidad :(.
Se podrá usar esas estadístias para generalizarlas al mundo entero? :blink:
Y a lo que dice JuanK es cierto. Pero yo lo veo hasta donde quieres llegar es decir cual es la meta en tu vida, puede que siendo programador seas feliz. Algunos empiezan ensamblando, programandor, analista, arquitecto, jefe de proyecto, ....
Cada etapa tiene su visión, y como dicen hay que ir quemando etapas, y por supuesto depende a hasta donde quieres llegar.
Saludos,
Eternal Idol:
--- Cita de: "JuanK" ---ok, pero en C# ya estan implementadas, asi que porque esperar.. y ojo, no digo que C++ sea malo porque de hecho lo adoro.. pero no me voy a poner a hacer un garbage colector ni a implementar todas las cosas de C# , ni a esperar a que otros lo hagan cuando ya lo tengo listo :lol:
--- Fin de la cita ---
Boost ya existe eh, hace años, creo que es claramente anterior a .NET aunque da lo mismo. Y eso ya corre a cuenta de cada uno, si necesito usar algo muchas veces y solo implementarlo una realmente no me molesta. Otros prefieren no hacer mas que "pegar" componentes, es una cuestion personal mas que nada.
--- Cita de: "JuanK" ---Tampoco escojeria lenguaje C o C++ para hacer una aplicacion en 3 dias cuando en C# la puedo hacer en horas... desde luego hay cosas que aunque quisiera no las podria hacer en C# como un Sistema operativo o que se yo.
--- Fin de la cita ---
Como siempre hay que ver la aplicacion, hablando de C++ si ya la hiciste una vez y tenes bien aislado el dominio del problema del dominio de la interfaz ciertamente podes llegar a tardar 3 dias como decis la primera vez y media hora las siguientes con lo cual el benificio de la reutilizacion de codigo propio supera al de la reutilizacion de codigo ajeno. De cualquier manera asumo que hablas de programas bastante repetitivos ya que en horas es dificil hacer algo nuevo de la nada ...
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa