Preguntas etiquetadas con language-design

Una etiqueta para preguntas relacionadas con el diseño de cualquier aspecto de los lenguajes de programación.


16
¿Por qué Java no admite ints sin firmar?
¿Por qué Java no incluye soporte para enteros sin signo? Me parece una omisión extraña, dado que permiten escribir código que es menos probable que produzca desbordamientos en entradas inesperadamente grandes. Además, el uso de enteros sin signo puede ser una forma de autodocumentación, ya que indican que el valor …

13
¿Por qué debemos definir ambos == y! = En C #?
El compilador de C # requiere que siempre que un tipo personalizado defina operador ==, también debe definir !=(ver aquí ). ¿Por qué? Tengo curiosidad por saber por qué los diseñadores lo consideraron necesario y por qué el compilador no puede usar una implementación razonable para cualquiera de los operadores …

5
¿Por qué no está permitido "final" en los métodos de interfaz Java 8?
Una de las características más útiles de Java 8 son los nuevos defaultmétodos en las interfaces. Básicamente, hay dos razones (puede haber otras) por las que se han introducido: Proporcionar implementaciones predeterminadas reales. Ejemplo:Iterator.remove() Permitiendo la evolución de la API JDK. Ejemplo:Iterable.forEach() Desde la perspectiva de un diseñador de API, …






12
¿Por qué Python no tiene una función de signo?
No puedo entender por qué Python no tiene una signfunción. Tiene un absincorporado (que considero signla hermana), pero nosign . En python 2.6 hay incluso una copysignfunción (en matemáticas ), pero no hay signo. ¿Por qué molestarse en escribir un copysign(x,y)cuando podría simplemente escribir un signy luego obtener el copysigndirectamente …

5
¿Por qué una matriz no es asignable a Iterable?
con Java5 podemos escribir: Foo[] foos = ... for (Foo foo : foos) o simplemente usando un Iterable en el ciclo for. Esto es muy útil. Sin embargo, no puede escribir un método genérico para iterable como este: public void bar(Iterable<Foo> foos) { .. } y llamarlo con una matriz …





Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.