Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Ver: Modo: Orden:
Aprendiendo a programar | 37 comentarios (37 temáticos, editoriales, 0 ocultos)
Re: La eficiencia (none / 0) (#30)
por thuban a las Fri Jul 23rd, 2004 at 09:09:26 PM CET
(Información Usuario)

Pues si tiene relacion. Es absurdo enredarse con los algoritmos si toda la memoria que puedas ahorrar machacandote para reducir las colisiones de una funcion hash y asi poder tener una zona de colisiones mas pequeña en el array, se van a perder porque por otro lado te dejas sin liberar la memoria de un auxString que creas en el interior del bucle que rellena la tabla. No merece la pena el esfuerzo. (Y si quieres una Hashtable con tratamiento decente de colisiones te la tienes que hacer tu)

Y el problema es que estas pensando en un mal programador. Como el programador es malo hacemos el trabajo por el. No le dejamos liberar memoria, ni le damos punteros... ¿No seria mejor convertir al mal programador en buen programador? Hacerle responsable de su codigo y explicarle que tiene que soltar lo que coje. Especialmente cuando aprende, como quiere hacer Gonzotba.

Y en cuanto a la seguridad del Java... Pues si, es seguro porque se supone que un lenguaje tipado y sin punteros reduce errores de programadores poco cuidadosos (otra vez) y por tanto es seguro. Pero mal codigo es mal codigo. Y despistes se pueden tener igual como en el ejemplo que he puesto (visto en el mundo real, con mas lineas por medio). Si java no me proteje de los dolores de cabeza que dan los punteros salvajes ¿que gano con no tener punteros? Peos aun. Si tengo el problema de los punteros, ¿por que nadie me cuenta que tengo el problema de los punteros?

Yo programo con java desde la version 1.0 del lenguaje, y aunque me gusta, y mucho, no me parece que sea un lenguaje para aprender a programar ni para meterse a hacer con el ciertas cosas (como arbolesB). Para eso esta el C++ o un Modula2, un lenguaje que tenga de todo y que no aisle al que aprende de la problematica de la programacion. Si no se aprende al principio, ¿cuando?

Los punteros existen aunque en Java se llaman referencias. Y eso de que cualquier lenguaje con PEEK y POKE los tiene... Pues si. Supongo que tambien se puede hacer programacion orientada a objetos en ensamblador, pero que se busquen a otro que yo me tengo que lavar el pelo...

El java no es adecuado para aprender porque pierdes todo lo que puedas aprender de punteros, la sobrecarga de operadores, la utilidad de los destructores... Menos los operadores, lo demas se puede poner en java, de acuerdo, pero ¿sirve para algo el metodo finalize? ¿Es util un destructor que no sabes cuando se lanza? ¿Puedes confiar en el para liberar una conexion a una base de datos? Con o sin pool, el problema es el mismo.

Es mas facil aprender en C++ y olvidar cosas segun el lenguaje en el que aterrices que aprender en Java y tener que aprender sobre la marcha y con prisas lo que no sabias porque java no daba.


[ Padre ]


Aprendiendo a programar | 37 comentarios (37 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:
Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda