Historias
Slashboxes
Comentarios
 
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • por triturator (14194) el Viernes, 28 Febrero de 2014, 08:39h (#1356083)
    Es que no es lo mismo un kernel que una aplicación de usuario.

    Un kernel se escribe en lenguaje de bajo nivel, y ataca directamente al hardware. La prioridad es el rendimiento y la eficiencia, y por lo tanto un goto es razonable si nos va a ahorrar unos cuantos ciclos.

    En una aplicación de usuario, en cambio, el ahorro en cuanto a rendimiento de usar un goto va a ser totalmente despreciable, y la pérdida en legibilidad y mantenibilidad hacen que sea una práctica totalmente desaconsejable, si no directamente prohibida.

    A cada cosa lo suyo. En el kernel se pueden usar gotos en casos concretos, pero en una aplicación es totalmente inaceptable.
    [ Padre ]
    Puntos de inicio:    1  punto
    Modificador por Bonus-Karma   +1  

    Total marcador:   2  
  • por triturator (14194) el Viernes, 28 Febrero de 2014, 09:54h (#1356099)
    Claro que el C es un lenguaje de bajo nivel. Tienes punteros, acceso directo a la memoria a nivel de byte, estructuras de datos en las que defines casi casi hasta la alineación a nivel de bit. Y las estructuras de control son bastante simplonas, no mucho más complicadas que bucles ensamblador con un pelín de azúcar sintáctico.

    No hay clases, no hay estructuras de control complejas, ni demasiada abstracción en nada. Es un lenguaje pensado para la programación de sistemas, no tanto (al menos hoy día) para hacer aplicaciones.
    [ Padre ]
  • por triturator (14194) el Viernes, 28 Febrero de 2014, 11:40h (#1356126)
    Está claro que no se puede pontificar y decir que un goto es anatema el 100% de las veces. Hay casos en los que puede estar justificado, pero son muy puntuales, y por eso es mucho más cercano a la realidad decir "no se pueden usar gotos" que decir lo contrario.

    Y fíjate como en el fragmento que citas de la wikipedia hablan sobre todo gente de bajo nivel, como Torvalds o el mismo Knuth. Según "subes" hacia arriba, el uso de gotos deja de tener sentido, hasta que pasa de ser algo bastante razonable a ser casi una aberración. Y aquí no hablamos del kernel, ni siquiera de iOS, lo han hecho en Safari, que es una aplicación de usuario en la que, francamente, dudo mucho que se pueda apreciar ninguna mejora en el rendimiento. Pero en cambio sí parece claro que a lo que ha afectado (que de eso va la noticia) es a la mantenibilidad del código.
    [ Padre ]
  • 2 respuestas por debajo de tu umbral de lectura actual.