Interfaces

5/28
Recursos
Transcripci贸n

Una interfaz es un tipo abstracto que sirve como contrato para la estructura de un objeto y al igual que las clases puede ser utilizada como un tipo de dato. Para declarar una interfaz en TypeScript utilizamos la palabra clave interface.

Dentro de las interfaces en TypeScript podemos manejar propiedades opcionales a帽adiendo el signo de pregunta 鈥?鈥 al final del nombre de la propiedad.

Aportes 31

Preguntas 4

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Tambi茅n es importante tener en cuenta que a diferencia de las clases, las interfaces no cuentan con un constructor, ya que como tal las interfaces no definen a un objeto, sino su comportamiento o estructura.

Dato curioso: El nombre Elvis Operator/Elvis Sign proviene del famoso cantante estadounidense Elvis Presley. Su peinado se asemeja a un signo de interrogaci贸n.

Una interfaz es un contraro que delimita la estructura del objeto a usar. Por ejemplo:

interface Materia {
   nombre: string,
   calificacion: number,
   descripcion?: string
}

const materia: Materia = {
	nombre: 'Algebra',
	calificacion: 18,
}

En donde la propiedad 鈥渄escripcion鈥 puede quedad vac铆a porque es opcional con el s铆mbolo 鈥?鈥

Las interfaces son muy 煤tiles y pr谩cticas para tener una estructura ya definida cuando se crean varios objetos con los mismos atributos, por ejemplo si creamos un arreglo de personas ser铆a muy 煤til, ya que el IDE nos ayudar铆a a controlar que cada uno de los elementos contenga los atributos que debe tener y su correcto tipo de dato.

As铆 como es posible indicar que una propiedad es opcional, tambi茅n se puede indicar que la propiedad no es modificable, usando readonly antes del nombre de la propiedad

interface Persona {
	readonly pais: string;
}

let persona: Persona = {
	pais: 'Colombia'
}

persona,pais = 'Espa帽a' : //Compiler Error: Cannot change readonly 'pais'

**Una interfaz **es un tipo abstracto que sirve como contrato para la estructura de un objeto y al igual que las clases puede ser utilizada como un tipo de dato. Para declarar una interfaz en TypeScript utilizamos la palabra clave interface.

Dentro de las interfaces en TypeScript podemos manejar propiedades opcionales a帽adiendo el signo de pregunta 鈥?鈥 al final del nombre de la propiedad.

Bien explicado 馃槂

Excelente explicaci贸n del profesor, se le entiende todo lo que quiere transmitir.

驴Te has preguntado, Cu谩l es la diferencia entre una interface y un Type?

Te comparto la fuente

Las interfaces y types son similares y puedes usar cualquiera de ambas. En la documentaci贸n de TS, explican la principal diferencia entre ambos.

https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#differences-between-type-aliases-and-interfaces

las interfaces sirven para definir los campos que van a tener tu objeto y lo mejor es que puedes usar el s铆mbolo ? para decirle que el campo es opcional, muy 煤til en la vida real.

Muy buena explicaci贸n, me gusta mucho la metodolog铆a de hacer una s铆ntesis al final de cada curso, excelente.

Excelente

Muy buena explicaci贸n sobre interfaces

Hola , una consulta , yo puedo implementar m煤ltiples interfaces en Typescript c贸mo el caso de otros lenguajes?

Buenas noches, excelente video.

porque no usar la propiedad get velocidad() {} en lugar de getVelocidad.

Muy buena herramienta el signo 鈥?鈥, ayuda mucho m谩s en las funciones, al momento de pasar los valores a los par谩metros.

Me gusto mucho la explicaci贸n sobre las interfaces

muy buena clase. una interfaz nos sirve como un tipo de dato para la estructura de un objeto

Buena clase!

Buenas noches, mi aporte

type Dni = number;
interface Person {
    height?: number; // Parametro Opcional
    year: number;
    firstName: string;
    lastName: string;
    dni: Dni;
}

const person: Person = {
    year: 29,
    firstName: 'Alver',
    lastName: 'Grisales',
    dni: 1234,
}

Hasta el momento me ha gustado mucho el curso y reci茅n comienza!

muy buen utilidad

type dpi = number;


//Una interface es un tipo abstracto que delimitara la estructura de un objeto
interface Persona{
    //El ? significa que este atributo es opcional
    altura?: number;
    edad?: number;
    nombre: string;
    apellido: string;
    DPI: dpi;
}

//se crea una variable del tipo Persona
const persona: Persona = {
    altura: 1.69,
    edad: 27,
    nombre: 'Juan',
    apellido: 'Lopez',
    DPI: 254125412541,
}```

Una interfaz es un tipo abstracto que sirve como contrato para la estructura de un objeto y al igual que las clases puede ser utilizada como un tipo de dato. Para declarar una interfaz en TypeScript utilizamos la palabra clave interface.

Dentro de las interfaces en TypeScript podemos manejar propiedades opcionales a帽adiendo el signo de pregunta 鈥?鈥 al final del nombre de la propiedad.

Al crear una instancia de una interface es obligatorio colocar todas las propiedades, excepto si se le a帽ade el s铆mbolo de pregunta 鈥?鈥.
Esto se puede usar en caso de que no tengamos alg煤n dato de un objeto o persona x.

interface Persona {
    nombre?: string;
    apellido?: string;
}

// No sabemos el apellido de esta persona, entonces sera opcional colocar su apellido
const persona: Persona  = {}
    nombre: 'Miguel'
}

Para crear la estructura de un objeto o un tipo de datos, entiendo que podemos usar interfaces o tambien clases, cual seria la diferencia? cuando elegir una u otra?

Hasta el momento me gusta como explica el profesor.

Para saber cuando es bueno definir si un objeto sera creado con class o interface, hay que saber si el objeto tendra relaciones o herencia, si es asi lo mejor es usar class, y si solo sera un objeto simple (incluyendo metodos), lo mejor es con interface.

Es una tipo abstracto, es como una especie de contrato