![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Eso aplica también a los lenguajes? Dirías, con los datos expuestos, que es el caso?
Cita:
Luego se mezclo que es culpa de nosotros no saber que esos delimitadores traen errores, entonces hay puse ejemplos donde es culpa de los compiladores/sintax los errores. Pero eso fue mezclar 2 cosas diferentes, aunque conectadas... En donde si quise dar a entender que están todos los de la familia C, es en que los marcadores (de bloque) que usan no aportan mucho al programador, que tener que usarlos es algo que se expone como un problema común en varias guías sobre los mismos (que se olvidan, que hay que estar seguro de cerrar y abrir donde es, etc), y que en ciertos lenguajes tienen problemas importantes. Eso si es mas universal. Asi que, aparte de decirle al compilador algo que se puede automatizar -donde termina un bloque- (y que personalmente he implementado, y no es tan difícil), que ganancia da, aparte de algo estético o de pura costumbre? Ahí es donde no me han dado ningún argumento, solo el decir: Es que X es muy bueno, mire como todo el mundo lo usa e igual tenemos Google Chrome. Es claro ahora? Ademas expuse que el caso de Go & Rust esta mucho mejor pensado el asunto. Cita:
Cita:
FALSO. Estamos haciendo software *olvidando* muchos de los avances en como hacer software, que se conocen desde hace mas de 50 años. Te pregunto: - Sabes que es una función pura? - Sabes que se puede reemplazar, en su totalidad o parcialmente, sin detener el programa, o sea corriendo, aun cuando este soportando una enorme carga de trabajo, un programa, sin fallas ni downtime? Y eso es algo que se puede hace decadas. Lo hacen? Yo no. Y eso que se que existe, pero es que ninguna de las herramientas que uso pueden hacerlo! - Sabes que el bound checking, que C/C++ no tiene, fue inventado hace mas de 3 décadas? Están usando los programadores de C "computación avanzada"? - Sabes que no hay porque, en pleno siglo 21, preocuparse por un Null Exception, porque eso esta resuelto, hace décadas también? - Sabes que se puede verificar que un programa no tiene errores de acceso de memoria? - Y que es posible garantizar que no hay deadlocks? - Sabes que hay muchos GC mejores de lo que imaginas? Que pueden hacer código MAS rápido que los que usan memoria manual? - Saben que lo ultimo que implementa C# 4/5, Java 8, estaba disponible para gente en 1980? Pero porque desafortunadamente C/C++/JS/PHP "ganaron" en números, todo ese software escrito durante todo ese tiempo (y aun ahora) no goza de ninguno de los avances en la computación -para programadores-? Saben cual es el estado del arte en nuestra área? Que tanto atrás o delante estamos, en herramientas y tecnología, con respecto a como eran las cosas hace 20 años? Cita:
* La respuesta pedante: Es NO. Combinar lenguajes no resuelve el problema. Sin embargo, por poner un ejemplo: Alguna vez has pensado porque puedes tener un valor NULL en cualquier momento? Y que tal si te dijera que es posible nunca, jamas, tener un NULL inesperado? Yo antes ni siquiera se me ocurriría tal cosa. Asi aunque no es posible en su totalidad esa meta, ni C, C++, C#, Java, Python, Ruby, Delphi, Lua, y muchos otros lenguajes mas comunes son un ejemplo de que tan lejos se ha llegado, osea, hace varios años ya. Se podria decir que cada uno ha recibido solo un "pedazo" de esos avances, unos mas que otros. Hay otros lenguajes que si están *mas* cerca. Pero no son populares. Es muy difícil. No tienen los números de su lado, o son muy bizarros en su sintaxis, o simplemente es muy difícil que un programador haga un cambio a algo nuevo. En especial si niega o ni siquiera puede concebir que existe un mejor camino. En especial lo segundo*. * Por poner un ejemplo: Cuantos programadores VB se pasan a Pascal al darse cuenta lo mejor que es? Naaaaa... miren cuanto software en VB esta hecho, y no le veo problemas.... Ademas si me esfuerzo mas, trabajo mas y escribo mas código hago lo mismo...
__________________
El malabarista. Última edición por mamcx fecha: 16-05-2014 a las 04:52:59. |
|
#2
|
|||||||||
|
|||||||||
|
mamcx
Cita:
Revisa esta información: Cita:
Cita:
Cita:
, la evolución ha sido lenta en ese sentido pero aun así el software es cada día más complejo y sofisticado que en el pasado.Cita:
![]() Cita:
![]() Cita:
, sin embargo esto esta ligado a la respuesta anterior.Cita:
Cita:
![]() Pregunto: ¿Te has puesto a pensar que con toda la base instalada de aplicaciones y conocimiento en C/C++ y sus lenguajes derivados no es aconsejable en términos prácticos el dar un salto brusco a los lenguajes que mencionas como más evolucionados?, todo se resume a lo práctico versus a lo ideal, sin importar cuan poderoso sea Erlang para manejar la concurrencia (Por ejemplo) si mi base instalada es de C#, seguirá siendo de C# o un derivado de este, con las excepciones del caso, lo mismo aplica a otros lenguajes ![]() En resumen: La fortaleza de C/C++ y sus derivados radica en sus extensas posibilidades de programación, no en su perfección de diseño, lo cual sumado a su gran base instalada, conocimiento acumulado y mejoras continuas hacen que estos lenguajes tengan asegurado un largo camino en el mundo de la computación del siglo 21. Nelson. Última edición por nlsgarcia fecha: 16-05-2014 a las 09:18:56. |
|
#3
|
||||
|
||||
|
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#4
|
||||
|
||||
|
Cita:
En resumen? Este es de LOCOS. Ayuda bastante ir aprendiendo sobre la marcha no solo como resolver el problema que se tenga al frente, sino el estado del arte y buenas practicas que en mucho caso ya esta "resuelto", aunque resuelto significa: Este es el lio, y no tenemos una respuesta perfecta pero ahi te damos algunas ideas. Cuando se es novato, se esta mas enfocado en escoger esta o cual herramienta/libreria y en como hacer X que resulta interesante o es lo que esta de moda. Eso es muy bueno, pero tambien hay que aprender lo demas.
__________________
El malabarista. |
|
#5
|
||||
|
||||
|
mamcx,
Cita:
![]() Cita:
![]() Cita:
![]() Nelson. |
|
#6
|
|||
|
|||
|
Antes que nada pedir disculpas porque aunque iba entrando en el foro cada vez que tenía una notificación, no me llegaron a partir de la cuarta respuesta y no he visto el foro hasta anoche.
Muchas gracias a todos, la verdad que las respuesta me han sido muy útiles porque me indican que no estaba desencaminado y he aprendido cosas que no sabía. Como la mayoría han apuntado la mejor opción por Delphi/Lazarus por amigabilidad, porque me parece un lenguaje claro, lo conozco, etc. Yo particularmente empecé el Basic (8-9 años), seguí con Logo (10 años), vuelta al Basic, Pascal (decían que era uno de los lenguajes para enseñar a programar junto con ADA), lenguajes de ensamblador, Matlab, los entornos gráficos como Labview, lenguajes de descripción hardware (VHDL, Verilog), C, C++ (y librería System-C), Visual Basic, lenguajes de scripting para SCADA, Fortran, Delphi (Object Pascal para que los puristas no me digan nada ), Objetive-C (más o menos en ese orden ). Quizás de todos el más amigable y para enseñar a un adolescente o pre-adolescente es el Delphi ya que puedes ver una interfaz amigable funcionando en un par de pasos. Todavía recuerdo cuando a mis primos les enseñé lo que sabía hacer en programación (cuando empecé en la universidad) creando un programa en 5 minutos para consola en Pascal o C (me falla la memoria) en el que se mostraba una frase y un conteo y se quedaron tal cual. Las nuevas generaciones no se asombran con la tecnología, la dan por sentada y si pierden el interés no aprenden. Lenguajes como C, aunque son potentes, si no tienes la motivación suficiente o no le encuentras la utilidad los dejas de usar.Estoy de acuerdo hay que enseñar a programar, ya que el lenguaje, el IDE o el entorno lo determinaran el objetivo (escritorio, aplicación Web, dispositivos móviles), por eso me quiero enfocar en ello y si le gusta y quiere más ya lo iré guiando según sus motivaciones. También estoy de a cuerdo en que enseñar a programar con entornos de desarrollo de videojuegos no es enseñar a programar sino a usar una herramienta concreta (aunque de paso aprendas algo de programación) con lo que al final la esencia se pierde. He leído artículos donde se recomiendan lenguajes de programación para niños y adolescente según las edades (si a alguno le interesa le incluyo los links) pero son entornos puramente gráficos y como en el caso anterior aunque puedas aprender algo de algorítmica no aprendes realmente a programar sino a juntar cajitas. Sobre usar el propio Delphi 7, sería lo ideal ya que sé bastante (no puedo decir mucho porque ustedes me gana por goleada ) pero el problema es la licencia (es de la empresa) y no se por qué derroteros querrá ir el chico. Así que mi opción es Lazarus, he leído acerca de la distribución CodeTyphon (ahora viene otra pregunta ) ¿Qué me recomiendan Lazarus o usar la distribución CodeTyphon? Mi sentido común me dice que la distribución me ahorrará la instalación de muchas librería y por tanto los quebradores de cabeza que se suelen dar.He accedido a la mayoría de los links propuestos y algunos de los blogs y links que incluyen en las firmas y he descubierto páginas para enseñar a programar que no conocía y entornos para programar juegos en Delphi. Me parece interesante el link que envió Casimiro: Cita:
Muchísimas gracias de nuevo a todos |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Que me recomiendan? | D-MO | PHP | 2 | 08-12-2005 14:50:28 |
| Que me recomiendan ? | Sundance | Gráficos | 2 | 06-08-2005 06:36:31 |
| Me recomiendan un tutorial? | marceloalegre | C++ Builder | 5 | 09-06-2005 08:56:23 |
| Me recomiendan Web Sites? | marceloalegre | SQL | 2 | 18-05-2005 23:19:57 |
| Sistema en Red, Que me recomiendan.. | BlueSteel | Varios | 6 | 01-03-2005 17:46:09 |
|