Mailinglist Archive: opensuse-es (688 mails)
| < Previous | Next > |
Re: [opensuse-es] OT: De donde no hay no sepuede sacar... Fwd: comp.lang.functional - 3 new messages in 2 topics - digest
- From: Lluis <lmartinez@xxxxxxxxxxxxx>
- Date: Tue, 2 Feb 2010 20:50:41 +0100
- Message-id: <201002022050.46262.lmartinez@xxxxxxxxxxxxx>
On Martes, 2 de Febrero de 2010 00:31:56 Carlos E. R. escribió:
Quizas no haya un lenguaje maravilloso para todo.
Cada uno de ellos, tiene sus ventajas en unos contextos determinados.
Y tambien sus inconvenientes en otros.
C tuvo y tiene una ventaja, es muy proximo a la maquina.
Y alguien experimentado, casi puede saber que generara el compilador.
Si ademas el compilador optimiza de una forma decente.. ya es maravilloso para
muchas aplicaciones.( las que tienen problemas de memoria, de tiempo de
ejecución, de tamaño... etc).
Los OOP son otra historia, no estan enfocados al rendimiento, sino a que el
programador no tenga que pelear contra la maquina, sino contra el problema de
su aplicación.
Los que usan un framework, son un paso mas, hacen la vida facil al programador
en los aspectos rutinarios del sistema,( Haz una lista, pinta una ventana)
dejandole preocuparse mas de su programa, que de su aspecto o de sus detalles.
Evidentemente todo tiene un precio, los frameworks, ocupan memoria y tiempo de
ejecucion.
La mayoria de veces se usa algo que implementa el lenguaje( al fin y al cabo,
lo implemente quien lo implemente son instrucciones maquina) que permite cazar
elfantes, para matar mosquitos.
Java y C# adolecen de esto.
Eso, si es muy comodo, al menos hasta que aparecen los problemas de verdad.
--
Saludos
Lluis
El 2010-02-01 a las 00:27 -0300, Mauricio J. Adonis C. escribió:
¿A qué se refieren con que C es «malo»? lo que yo sé es que C es un
lenguaje de nivel medio cuyo compilador (gcc) produce código de máquina
de muy buena calidad... según lo que recuerdo... ¿se dice acaso porque
no tiene tantas estructuras propias como los lenguajes de alto nivel?
¿qué es lo malo de C?...
¿Por donde empiezo? A ver, porque, por ejemplo, puedes escribir en a[20]
en un array de tamaño 19, sobrescribiendo la variable de al lado. Eso es
el origen de la gran mayoría de fallos de seguridad en programas de linux,
el "buffer overflow".
Es un lenguaje que te permite hacer todo tipo de barbaridades capaces de,
desde no funcionar, hasta tirar el sistema. Y es a propósito, se supone
que el programador sabe lo que hace. El lenguaje obedece. Puede ser muy
eficiente. Está bien para sistemas, kernel y todo eso, pero es una
exageración usarlo para todo.
Quizas no haya un lenguaje maravilloso para todo.
Cada uno de ellos, tiene sus ventajas en unos contextos determinados.
Y tambien sus inconvenientes en otros.
C tuvo y tiene una ventaja, es muy proximo a la maquina.
Y alguien experimentado, casi puede saber que generara el compilador.
Si ademas el compilador optimiza de una forma decente.. ya es maravilloso para
muchas aplicaciones.( las que tienen problemas de memoria, de tiempo de
ejecución, de tamaño... etc).
Los OOP son otra historia, no estan enfocados al rendimiento, sino a que el
programador no tenga que pelear contra la maquina, sino contra el problema de
su aplicación.
Los que usan un framework, son un paso mas, hacen la vida facil al programador
en los aspectos rutinarios del sistema,( Haz una lista, pinta una ventana)
dejandole preocuparse mas de su programa, que de su aspecto o de sus detalles.
Evidentemente todo tiene un precio, los frameworks, ocupan memoria y tiempo de
ejecucion.
La mayoria de veces se usa algo que implementa el lenguaje( al fin y al cabo,
lo implemente quien lo implemente son instrucciones maquina) que permite cazar
elfantes, para matar mosquitos.
Java y C# adolecen de esto.
Eso, si es muy comodo, al menos hasta que aparecen los problemas de verdad.
--
Saludos
Lluis
| < Previous | Next > |