Tema_6_.NET Flashcards

1
Q

¿Cuantas vertientes hay del Net Framework de .NET?

A

Dos:

Windows ( Microsoft )

Linux ( Mono→Opensource / .NET CORE / DotGNU Portable.NET

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué dos componentes son los más importantes en .NET FRAMEWORK?

A
  1. CLR ( Common Language Runtime ) Motor de ejecución que controla las aplicaciones.
  2. Framework Class Library ( Similar a rt.jar de JAVA ) Biblioteca de clases.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Qué componentes nos encontramos en Net Framework 2.0, aparte de CLR y Framework Class Library?

A
  1. ADO.NET
  2. ASP.NET
  3. WinForms
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Componentes de NET Framework 3.0

A

Son paquetes de clases.

  1. WPF - WINDOWS PRESENTATION FOUNDATION
  2. WCF - WINDOWS COMMUNICATION FOUNDATION
  3. WWF - WINDOWS WORKFLOW FOUNDATION
  4. CARD SPACE
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Componentes de NET Framework 3.5

A
  1. LINQ→Language Integrated Query. Agrega capacidades de consulta
  2. ENTITY FRAMEWORK→Es un ORM.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Componentes de Net Framework 4.0

A
  1. Parallel LINQ→Implementación en paralelo de LINQ
  2. Task Parallel Library→
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

2 Componentes de Net Framework 4.5

A
  1. .NET API’S FOR STORE/UWP (Universal Windows Platform) APPS
  2. Task-Based Async Model
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Que versiones hay del CLR?

A

Las versiones 1. 0 / 1.1 / 2.0 hasta FW 3.5
La versión 4. 0 de FW 4.0 a FW 4.8.1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Que es CLR?

A
  • Entorno de ejecución de Net FrameWork.
  • Es la máquina virtual de .NET
  • Es igual que JRE.
  • Common Language Runtime.
  • Ejecuta los Assemblies, que son los paquetes en .dll o .exe con código CIL.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Dí 6 gestiones que realiza CLR?

A
  • Hilos
  • Excepciones
  • Basura
  • Compilador
  • Clases
  • Seguridad
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Que reglas hay que cumplir para ser .NET compatible?

A

CLS ( Common Language System )

CTS ( Common Type System )

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Que es CIL?

A

Common Intermediate Language. Anteriormente llamado Microsoft Intermediate Language o MSIL.

Es el código intermedio que resulta de compilar con espécificación .NET

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Que es ADO.NET?

A
  • Persistencia
  • Es el API de bajo nivel de .NET, es equivalente a JDBC.
  • Es un conjunto de clases que se usa para acceder a datos de SGBD.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué es GAC?

A

Global Assembly Cache.

Es para tener un directorio de Assemblies, que son las aplicaciones de .net

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué es .NET Core?

A
  • Sucesor de .NET Framework.
  • Para desarrollo de aplicaciones.
  • Multiplataforma. Windows, Linux y MACoS.
  • Su CLR se llama CORECLR.
  • Bajo licencia MIT.
  • De código fuente abierto.
  • Sistema de paquetes NUGET
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Versiones de .NET

A

Versiones principales:

.NET 5 2020
.NET 6 2021
.NET 7 2022
.NET 8 en proyecto.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

¿Qué es UWP?

A
  • Universal Windows Platform
  • Implementación de .NET, para compilar aplicaciones de Windows compatibles con todos los dispositivos Windows, incluidos, PC’s, Tabletas, Teléfonos, Xbox One, Microsoft HoloLens y el internet de las cosas.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

¿Qué es MONO?

A
  • Proyecto de código abierto, respaldado por Microsoft. Basado en GNU/Linux y compatible con .NET, según ECMA.
  • MULTIPLATAFORMA
  • Contiene un CLR, un CLI, un JIT
  • Activa Xamarin en Android, macOS, IOS, tvOS y watchOS.
  • Basado en GNU/Linux y compatible con .NET según lo especificado por el ECMA.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

¿Qué es XAMARIN?

A

Plataforma de código abierto, para compilar aplicaciones móviles nativas, para Android, IOS y Windows.
Proviene del mundo .NET.
Es una capa de abstracción entre el código reutilizado y el nativo del dispositivo.
Se puede compilar en paquetes .apk, para Android o .ipa, para IOS.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

¿Qué lenguajes de programación admite .NET?

A
  • C #
  • F #
  • Visual Basic .NET
  • Delphi
  • Perl
  • Python
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

¿Para qué sistemas operativos se puede programar .NET?

A
  • Windows
  • macOS
  • Linux
  • Android
  • iOS
  • tvOS
  • watchOS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

¿Qué es un ASSEMBLY?

A

Es el paquete compilado en formato .dll o .exe, que contiene código CIL y que se ejecuta con CLR

Se puede ver con ildasm.exe

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

¿Qué es CLI?

A

Common Language INFRASTRUCTURE

Especificación estandarizada que permite que aplicaciones escritas en distintos lenguajes, puedan ser ejecutadas sin tener que ser reescritas e independientes del hardware.
Aquí vemos que se compila un lenguaje .NET compatible, a CLI, que contiene el CIL, que es lo que entiende el CLR.

Es la ECMA 335

.NET Framework, .NET y Mono, son implementaciones de CLI.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

¿Cual es la especificación ECMA/ISO de CLI?

A

ECMA 335 / ISO 23271
Common Language Infrastructure (CLI)
Especifica como hay que ajustarse a CTS, CLS y VES
También el Instruction Set de CIL.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

¿De qué trata CTS?

A
  • Para codificar en .net, se pueden usar varios lenguajes.
  • CTS, se encarga de poner en común las primitivas y las reglas a seguir.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

¿De qué trata CLS?

A

CLS, es un subconjunto de CTS.

CLS, establece las similitudes que deben tener los objetos creados en el código.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

¿Qué es Entity Framework?

A
  • Es un Framework ORM para .NET
  • Es el competidor de JPA
  • ORM significa, object-relational mapper.
  • Entity Framework, nos permite consultar datos, abstrayéndonos de las columnas y filas.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

¿Qué es LINQ?

A

Language Integrated Query
Hace consultas independientes de la fuente.
Es una sintaxis de consulta uniforme en C# y VB.NET, usada en .NET.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Diferencia entre DataReader y DataAdapter :

A

DataReader, mejora el rendimiento, porque lee los datos según están disponibles y solo rellena una línea en memoria.

DataAdapter, recopila todos los datos y rellena una Dataset.

30
Q

¿Qué es ASP.NET?

A

Plataforma de Microsoft, para crear aplicaciones, servicios WEB y sitios WEB dinámicos.

Framework. Lanzado en enero de 2002 con .NET FRAMEWORK 1.0

31
Q

¿Qué categorías de tipos tiene CTS?

A
  • Clases
  • Estructuras
  • Enumeraciones
  • Interfaces
  • Delegados
32
Q

¿Qué es .NET?

A

Es un FRAMEWORK, MARCO DE TRABAJO o ENTORNO DE TRABAJO, que es independiente del hardware y software y que se usa para el desarrollo de aplicaciones.

Soporta más de 20 lenguajes de programación.

33
Q

¿Como funciona .NET?

A

Primero, tenemos un software, escrito en cualquier lenguaje que soporta .NET.

Después, este código, se traduce a CIL (Common Intermediate Language) o MSIL (Microsoft Intermediate Language), por medio de la CLI (Common Language Infrastructure).

CIL es orientado a objetos.

Después, mediante CLR (Common Language Runtime), se compila CIL a CÓDIGO MÁQUINA, para ejecutar el programa.

34
Q

¿Como es el formato de un Assembly?

A

Es binario.

35
Q

¿Como es la estructura interna de un Assembly?

A
  • MANIFIESTO→ Descripción del ensamblaje
  • METADATOS→Descripción de los tipos incluidos.
  • MSIL/CIL
  • RECURSOS→Audio, video, etc
36
Q

¿Que son los PE?

A
  • Portable Executable
  • Es un formato de archivo para ejecutables, Asemblies, DLL’s y otros, para Windows 32 y 64.
  • Encapsula.
  • Para Linux es ELF.
37
Q

¿Como es un paquete Nuget?

A
  • Es un archivo con la extensión .nupkg.
  • Contiene código compilado, como .dll o .exe.
  • También contiene un manifiesto con la versión del paquete.
38
Q

¿Qué es GraalVM?

A

Es un software “políglota”, que intenta usar muchos lenguajes, que no soporta .NET

39
Q

¿Qué estandariza ECMA 334?

A
  • El lenguaje C#
  • No es de Microsoft
40
Q

Características de VB.net

A

Tiene:
1. Clases, que son para crear objetos, igual que en Java
2. Estructuras, que no permiten herencias, todos sus métodos son públicos y no permiten inicializar datos. Pasa por valor, es decir, que se pasa el contenido de esa variable.
3. Módulos (Modules), que es como un saco de funciones.

41
Q

Palabras reservadas de VB.NET:

A
  1. MustInherit - Tiene que heredar. Entre clases e interfaces.
  2. NotInheritable - De esta clase, nadie puede heredar. Igual que final de java.
  3. Interface - Clase con métodos vacíos.
  4. Implement - Implementar una interface.
  5. Overridable - Se puede sobreescribir.
  6. Override - Que estoy sobreescribiendo.
  7. MustOverride - Debe ser sobreescrito.
  8. NotOverridable - No sobreescribible.
  9. Partial - Son trozos de la misma clase.
  10. Property - Dentro lleva GET y SET. Se usa para meter a mano el valor en el campo.
42
Q

Más sobre VB.NET

A
  1. Tiene Namespaces
  2. Tiene Imports
  3. Los Procedimientos se llaman Sub
  4. Las Function devuelven un valor.
  5. Existe el concepto Delegate, nos permite crear un puntero a una función.
  6. Tenemos constructor( NEW) y destructor (FINALIZE)
  7. Sentencia de control de errores Try Catch Finally
  8. Using, para definir un bloque en el que se liberen automáticamente recursos, los cuales tendrían que tener implementado IDisposable para que using funcione.
  9. ME para referenciar la instancia actual. similar a THIS de Java.
  10. MyBase referencia a la clase de la que estamos heredando. Similar a SUPER de Java.
43
Q

Cosas de C#

A
  1. ENUM, RECORD, INTERFACES Y CLASES. Que son estructuras de programación.
  2. : equivale a Implements
  3. Con VIRTUAL, declaramos que un método puede ser sobreescrito con “OVERRIDE”, existiendo código en el hijo. Con ABSTRACT no hay código.
  4. Con SEALED, declaramos que un método no puede ser sobreescrito o que una clase, no permite que se herede de ella.
  5. STATIC, para declarar miembros de clase, es decir, métodos o atributos que son solo de la clase.
44
Q

¿Qué clases/objetos Online usa ADO.net?

A

SqlConnection - Para conectarnos a una BBDD.
SqlCommand - Para poner nuestras sentencias
SqlDataReader - Para ejecutar el comando

45
Q

¿Que clases/objetos OFFLINE usa ADO.net?

A

Dataset - Conjunto desconectado de datos. Coge todos los datos, les hace una foto y ya nos podemos desconectar de la BBDD. Se trabaja con XML.
DataAdapter Trae los datos de la DDBB y rellena el Dataset

46
Q

¿Qué es Entity Framework (ORM)?

A

API de alto nivel de .NET
Object Relational Mapping para ADO.NET.

47
Q

¿Que es Web Forms?

A
  • Es aplicación web para .NET
  • Usa ASP.net.
  • Es para hacer páginas Web dinámicas.
  • Con extensión ASPX
  • Todas las páginas heredan de System.Web.UI.Page, que tiene un ciclo de vida.
  • Si tenemos vistas muy complejas podemos usar Master Page, para tener un modelo de páginas más flexible, con elementos comunes.
48
Q

¿Qué es MVC?

A
  • Modelo Vista Controlador
  • Es otra de las aplicaciones WEB de .net.
  • Hace que una página, en vez de ir primero a la interfaz gráfica de la propia web, para ejecutarse, primero pasa por un controlador y luego ya lo pasa a la ventana del usuario.
49
Q

¿En C#, como se llama a las anotaciones?

A

ATRIBUTOS

50
Q

¿Qué son ASMX?

A

Servicios Web SOAP.

51
Q

¿Para qué se usa .NET?

A

.NET es una plataforma de código abierto, para crear aplicaciones de ESCRITORIO, WEB y MÓVILES, que se pueden ejecutar de forma nativa en cualquier SO.

52
Q

COMPONENTES DE .NET

A
  • CORAZÓN DE LA PLATAFORMA: .NET FRAMEWORK
  • SOPORTA VARIOS LENGUAJES (C#, F#, VB.NET…)
  • ESPECIFICACIÓN: ECMA 335 / ISO 23271, COMMON LANGUAGE INFRAESTRUCTURE: VES, CLS, CTS, CIL
  • RESULTADO DEL PROCESO DE DESARROLLO, UN BYTECODE LLAMADO CIL
  • ASSEMBLY EMPAQUETADO DE CIL EN FORMATO .dll o .exe, que se puede ver con ildasm.exe
  • GAC ruta global con ensamblados registrados.
53
Q

¿Qué es GraalVM?

A

Es una plataforma que soporta múltiples lenguajes.

54
Q

¿Qué es JIT?

A

JUST-IN-TIME COMPILER, QUE TRANSFORMA EL CÓDIGO CIL A CÓDIGO MÁQUINA.

55
Q

ÚLTIMA VERSIÓN DE .NET FRAMEWORK

A

LA 4.8.1

56
Q

¿Qué es VES?

A
  • Aparece descrito en ECMA 335 y es la especificación de como tiene que ser un CLR de un producto .NET compatible.
57
Q

CONVIVENCIA DE LAS VERSIONES DE .NET

A
  • PRIMERO APARECE .NET FRAMEWORK
  • AL MISMO TIEMPO APARECE .NET CORE
  • AL FINAL LAS DOS SE FUSIONAN EN .NET
58
Q

DOS COMPONENTES FUNDAMENTALES DE .NET

A
  • CoreCLR
  • CoreFX
59
Q

¿Cual es la ruta de GAC en .NET Framework 4 en Windows?

A

%windir%\Microsoft.NET\assembly

60
Q

¿Qué es Gacutil.exe?

A
  • Es una herramienta para desarrolladores, que viene en el SDK.
  • Para instalar GAC’s, que no están por defecto.
61
Q

¿Qué es .NET Standard Base Class Library?

A

Establece las clases base que tienen que tener todas las implementaciones de .NET

62
Q

¿En VB, como se pueden pasar los datos?

A
  • Value Types- Que reciben el contenido del objeto y son:
    1. * Todos los tipos NUMÉRICOS
    2. * BOOLEANOS, CHAR Y FECHAS
    3. * ESTRUCTURAS
    4. * ENUMERADORES, tales como, SByte, Short, Integer, Long, Byte, UShort, UInteger y ULong.
  • REFERENCE TYPES- Se pasa la referencia al valor del objeto y son:
    1. * STRING
    2. * ARRAYS, aunque sean Value Types
    3. * CLASES
    4. * DELEGATES
63
Q

¿Qué dos partes forman la página ASPX?

A
  • HTML + Etiquetas de servidor
  • Code-Behind, que son métodos que responden a eventos del usuario sobre la página.
64
Q

¿Que dos tipos de aplicaciones web tenemos en .NET?

A
  • WEB FORMS
  • MVC
65
Q

¿Qué son servicios web y cuales tenemos?

A
  • Son para que los usen otras aplicaciones.
  • Facilitan la integración de aplicaciones.
  • SOAP
  • REST
66
Q

Cosas necesarias para crear un servicio web SOAP

A
  • Basado internamente en XML
  • Heredar de la clase System.Web.Services.WebService
  • “Anotar” con el atributo [WebMethod] aquellas operaciones que queramos publicar en el servicio.
  • Con WCF, de Microsoft, se podría implementar algunas funcionalidades extra, eje: WS-Security
67
Q

Cosas de REST

A
  • Basado en HTTP y Json
  • ASP.NET WEB API, PARA IMPLEMENTAR SERVICIOS REST.
  • ASP.NET, HEREDA DEL ApiController.
  • Usa los verbos HTTP
68
Q

Entornos de ejecución Web

A
  • Internet Information Server - IIS + runtime asp.net (SOLO EN WINDOWS)
  • Kestrel, (equivalente a IIS + asp.net), para Linux
69
Q

Herramienta dotnet (.net CORE)

A

Se pueden generar aplicaciones y compilar proyectos.
Se usa en línea de comandos

70
Q

Herramientas de automatización de desarrollo para .NET

A
  • MSBuild, equivalente a los plugins de Maven–> Compilación, empaquetado, etc
  • NuGet, gestión de dependencias.
71
Q

SMX vs ASPX

ASMX vs ASPX

A
  • ASPX es la extensión de las páginas WEB con WEB FORMS
  • ASMX, pertenece a la parte de Servicios WEB SOAP