Diferencia entre la interfaz de mecanografía vs clase
Una interfaz define la estructura que es seguida por derivar la clase. Es un contrato que es seguido por cualquier entidad, la interfaz contiene muchas cosas como propiedades y eventos, métodos, y todos estos se llaman como miembros de la interfaz. Una interfaz contiene la única declaración de estos miembros, estos miembros serán implementados por la clase Derivación de esa interfaz. La palabra clave de interfaz se utiliza para declarar la interfaz.
Ejemplo de declaración de interfaz.
Sintaxis:
interfaz nombre_interfaz
(
)
interfaz empleado (
firstName: string,
apellido: cadena,
sayHello: () => string
)
cliente var: empleado = (
nombre: "Tom",
apellido: "Hanks",
sayHello: (): string => (return "Hola"
)
console.log ("Objeto de cliente")
console.log (customer.firstName)
console.log (customer.lastName)
console.log (customer.sayHello ())
El ejemplo anterior define una interfaz. El objeto de cliente es del tipo Empleado.
Ahora será vinculante para el objeto definir todas las propiedades según lo especificado por la interfaz.
Al compilar, generará el siguiente código JavaScript que se proporciona a continuación.
// Generado por mecanografiado 1.8.10
cliente var = (firstName: "Tom", apellido: "Hanks",
sayHello: function () (return "Hola"; )
);
console.log ("Objeto de cliente");
console.log (customer.firstName);
console.log (customer.lastName);
console.log (customer.sayHello ());
La salida del código de ejemplo anterior: -
Objeto del cliente
Tom
Hanks
Hola
La clase es un plano para un objeto; Es el concepto del lenguaje de programación orientado a objetos. Una clase proporciona la función de encapsulaciones de OOP. Envuelve miembros de datos y métodos y constructores en una sola unidad que se llama la clase, de esta manera proporciona encapsulaciones. Una clase anterior no era compatible con Typecript, obtuvo soporte de una versión ES6 de Typecript. La palabra clave Class se usa para crear clases en Typecript.
Sintaxis:-
class class_name (
//que hacer
)
una clase contiene miembros de datos, métodos y constructor;
Miembros de datos también llamados como un campo, representa las propiedades del Objeto que es creado por una clase
Un empate apropiado es el estado de un objeto, como el color del lápiz, la altura, el ancho se llamará como propiedades de un objeto.
Los métodos representan el comportamiento de un objeto como lo está escribiendo la funcionalidad del lápiz. La máquina de café puede hacer diferentes tipos de café, esto se denomina comportamiento de un objeto.
Los constructores se utilizan para generar un objeto para una clase definida, de modo que pueda usarse como lugares requeridos. También es responsable de inicializar un campo de una clase.
Estos tres se llaman miembro de una clase que está encapsulada por clase en una sola unidad.
Considere una clase Empleado en mecanografiado.
Empleado de clase (
)
Al compilar, generará el siguiente código JavaScript.
// Generado por mecanografiado 1.8.10
var Empleado = (función () (
función Empleado () (
)
empleado de retorno;
) ());
Ejemplo: declarar una clase
clase CarDemo (
// declaración de campo
motor: cadena;
// declaración del constructor
constructor (motor: cadena) (
this.engine = motor
)
// declaración de función
show (): void (
console.log ("El motor es:" + this.engine)
)
)
En el ejemplo anterior, el nombre de la clase es CarDemo, que tiene un motor de nombre de campo que tiene un constructor que está inicializando el motor de nombre de campo, esta palabra clave se refiere a la instancia de clase actual, por eso es esto. motor = motor escrito, que tiene un nombre de método único: muestra qué valor de campo se muestra y que un constructor inicializó.
Al compilar el código anterior, generará el siguiente código JavaScript.
// Generado por mecanografiado 1.8.10
var CarDemo = (function () (
función CarDemo (motor) (
this.engine = motor;
)
CarDemo.prototype.show = function () (
console.log ("El motor es:" + this.engine);
);
regresar CarDemo;
) ());
Crear objetos de instancia de la clase anterior
Para crear una instancia de la clase, la nueva palabra clave utilizada seguida del nombre de la clase. La sintaxis para el mismo se da a continuación:
Sintaxis
var object_name = new class_name ((argumentos))
La nueva palabra clave es responsable de la instanciación.
El lado derecho de la expresión invoca al constructor. El constructor debe pasar valores si está parametrizado.
/ crear un objeto
var obj = nuevo CarDemo ("XXSY1");
// acceder al campo
console.log ("Lectura del valor del atributo Engine as:" + obj.engine);
// acceder a la función
obj.show ();
La salida del código anterior es la siguiente:
Lectura del valor del atributo Engine como XXSY1
La función muestra el motor es: XXSY1
Comparación cabeza a cabeza entre la interfaz de mecanografía vs clase
A continuación se muestran las 4 principales diferencias entre la interfaz de tipo de escritura vs clase
Diferencias clave entre la interfaz de tipo de escritura vs clase
Ambos tipos de interfaz vs clase son opciones populares en el mercado; discutamos algunas de las principales diferencias entre la interfaz de Script de tipo vs clase:
- La interfaz define estructurada para derivar la clase de esa interfaz. una interfaz contiene la única declaración de funciones miembro.
- La clase es responsable de implementar la estructura de la interfaz al dar el cuerpo de la función de la interfaz. Proporciona encapsulación mediante la envoltura de los miembros de datos, funciones en un cuadro que se llama como clase de esta manera, proporciona características de encapsulación de OPP.
- La palabra clave de interfaz se utiliza para crear una interfaz que contiene miembros de datos, funciones.
- La palabra clave de clase se usa para crear una clase que contiene miembros de datos, funciones, constructores.
- Interfaz completamente eliminada durante la compilación de código. Mientras que la clase no se elimina durante la compilación de código.
- Una interfaz puede extender otra interfaz extendiendo la palabra clave de esta manera, la interfaz proporciona herencia. La interfaz no extiende una clase, define una estructura para la clase. La interfaz admite múltiples herencias al extender múltiples interfaces juntas.
- La clase implementa la interfaz mediante la palabra clave implements, la clase puede extender otra clase también mediante el uso de la palabra clave extendidos de esta manera, la clase secundaria puede usar la clase primaria, esta característica se llama herencia, la clase no admite múltiples herencias porque a la vez solo una interfaz implementada por clase. Es posible con una interfaz.
Comparación entre la interfaz de tipografía vs clase
Echemos un vistazo a la descripción detallada de la interfaz de tipo de escritura vs clase
Base de comparación entre la interfaz de mecanografía vs clase | Interfaz | Clase |
Definición | Una interfaz define una estructura que es seguida por derivar la clase. | Envuelve miembros de datos y métodos y constructores en una sola unidad que se llama una clase. |
Uso | Para crear una estructura para una entidad. | Creación de objetos, encapsulación para campos, método |
Uso en tiempo real | Patrón de diseño, diseño de la estructura del proyecto | Implementos de arquitecturas definidas |
Palabra clave de creación | La palabra clave interface se usa para crear una interfaz. | La palabra clave class se usa para crear la clase. |
Conclusión - Interfaz mecanografiada vs clase
La interfaz mecanografiada versus la clase tienen un propósito diferente en el área de desarrollo de software. La interfaz proporciona el bloque de construcción estructural para la clase, mientras que esta estructura se implementa por la clase a través de la cual se creó el objeto de la clase.
Usaremos la interfaz para desarrollar la estructura básica del software que se desarrolla en el futuro por un desarrollador. Class implementa la interfaz proporcionando un cuerpo del método de la interfaz. La creación de interfaces es fácil en una fase inicial de desarrollo de software cuando un requisito no está claro porque proporciona flexibilidad para cambiar, ya que será implementado por una clase.
Artículo recomendado
Esta ha sido una guía de las principales diferencias entre la interfaz de Tipos de letra y la clase. Aquí también discutimos las diferencias clave entre la interfaz de Typecript y la clase con infografías y la tabla de comparación. También puede echar un vistazo a los siguientes artículos:
- TypeScript Type vs Diferencias de interfaz
- CoffeeScript vs TypeScript
- JavaScript vs TypeScript
- TypeScript vs Flow ¿Cuál es más útil?