Capítulo 24. Tipos
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Los tipos son esencialmente afirmaciones sobre un programa. Y creo que es valioso que las cosas sean lo más absolutamente sencillas posible, incluso no decir siquiera cuáles son los tipos.
Dan Ingalls, Programadores trabajando: Reflexiones sobre el oficio de programar
24.0 Introducción
Los tipos son el concepto más importante en los lenguajes de clasificación. Esto es cierto tanto para los lenguajes estáticos y fuertemente tipados como para los dinámicamente tipados. Tratar con ellos no es fácil y tienes muchos sabores, desde los muy restrictivos hasta los más perezosos.
24.1 Eliminar la comprobación de tipo
Problema
Revisa tus argumentos.
Solución
Confía en tus colaboradores. No compruebes quiénes son. Pídeles que lo hagan.
Debate
Evita kind()
, isKindOf()
, instance()
, getClass()
, typeOf()
, etc., y no utilices la reflexión ni la metaprogramación para objetos de dominio (consulta el Capítulo 23, "Metaprogramación"). Evita la comprobación de indefinidos. Utiliza objetos completos (consulta la Receta 3.7, "Completar constructores vacíos"), y evita los nulos (consulta la Receta 15.1, "Crear objetos nulos") y los setters. Favorece la inmutabilidad y nunca tendrás tipos indefinidos o ifs accidentales.
Aquí tienes ejemplos de comprobación de tipos:
if
(
typeof
(
x
)
===
'undefined'
)
{
console
.
log
(
'variable x is not defined'
);
}
function
isNumber ...
Get Libro de cocina de código limpio now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.