Un servidor es una computadora especial o un programa que tiene la función de ofrecer servicios, información o recursos a otras computadoras llamadas clientes, a través de una red (como Internet o una red local).
El servidor está siempre encendido, esperando que un cliente le pida algo, como una página web, una imagen o un archivo.
Los tipos de servidores más comunes son:
- Servidor web: Muestra páginas web a los usuarios (por ejemplo, cuando visitas un sitio web).
- Servidor de archivos: Guarda documentos, imágenes o videos para que los usuarios los descarguen o compartan.
- Servidor de correo: Envía y recibe correos electrónicos.
- Servidor de bases de datos: Guarda y organiza información para aplicaciones o sitios web.
- Servidor de juegos: Permite que varias personas jueguen juntas en línea.
Ejemplo:
Cuando entras a www.google.com, tu computadora (el cliente) le pide al servidor web de Google que le envíe la página. El servidor responde con el contenido, y tu navegador lo muestra.
Concepto de Cliente
Definición:
Un cliente es una computadora, programa o dispositivo que solicita información o servicios a un servidor.
El cliente envía una petición (por ejemplo, “muéstrame la página web”) y el servidor responde con lo que pidió.
Ejemplo:
Tu navegador web (como Chrome, Firefox o Edge) actúa como cliente cuando escribes una dirección web. Envía una solicitud al servidor y recibe la página para mostrarla en la pantalla.
Lenguaje del lado del cliente y del lado del servidor
Definición:
En una página web, existen dos tipos principales de lenguajes de programación:
- Lenguaje del lado del cliente:
Son los que se ejecutan en la computadora del usuario (cliente).
El navegador es el encargado de entender y mostrar el contenido.
Ejemplos: HTML, CSS, JavaScript.
Estos lenguajes hacen que la página se vea bonita y sea interactiva. - Lenguaje del lado del servidor:
Son los que se ejecutan en el servidor antes de enviar la página al cliente.
Estos lenguajes manejan datos, crean páginas dinámicas o consultan bases de datos.
Ejemplos: ASP.NET, PHP, Python, Java.
Ejemplo:
Cuando llenas un formulario en una web:
- JavaScript (cliente) valida que escribas bien los datos.
- ASP.NET (servidor) guarda la información en una base de datos.
Funcionamiento de ASP y ASP.NET
Definición:
ASP (Active Server Pages) fue una de las primeras tecnologías creadas por Microsoft para crear páginas web dinámicas, es decir, que pueden cambiar su contenido según la información del usuario o de una base de datos.
ASP.NET es la versión mejorada y moderna de ASP. También creada por Microsoft, forma parte de la plataforma .NET, y permite crear sitios web interactivos, aplicaciones web y servicios en línea.
El funcionamiento de ASP.NET se basa en el modelo cliente-servidor:
- El cliente (navegador) pide una página web.
- El servidor (donde está ASP.NET) procesa la solicitud.
- ASP.NET genera una página HTML con el resultado.
- Esa página se envía al navegador del cliente para que se muestre.
Ejemplo:
Cuando un usuario llena un formulario en una página ASP.NET para registrarse, el servidor usa ASP.NET para guardar los datos en una base de datos y luego muestra un mensaje: “Registro exitoso”.
Concepto de .NET
Definición:
.NET es una plataforma creada por Microsoft que permite crear, ejecutar y conectar aplicaciones de forma sencilla.
Funciona como un conjunto de herramientas y librerías que ayudan a los programadores a desarrollar aplicaciones para Windows, la web, dispositivos móviles o la nube.
ASP.NET es una parte especial de .NET dedicada a las aplicaciones web.
Ejemplo:
Un programador puede usar .NET para crear una aplicación web con ASP.NET o una aplicación de escritorio con Visual Basic .NET.
VB.NET o C#.NET para ASP.NET
Definición:
ASP.NET permite programar usando diferentes lenguajes, los más comunes son:
- VB.NET (Visual Basic .NET): Su sintaxis es sencilla, parecida al lenguaje humano. Es fácil para aprender.
- C#.NET (C Sharp .NET): Es más moderno, rápido y usado profesionalmente. Su sintaxis se parece a la de otros lenguajes como Java.
Ambos pueden usarse para crear el mismo tipo de aplicaciones web en ASP.NET; la diferencia está en el estilo del código.
Ejemplo:
Código VB.NET:
Dim nombre As String = "Luis"
Response.Write("Hola " & nombre)
Código C#.NET:
string nombre = "Luis";
Response.Write("Hola " + nombre);
Ambos mostrarán en la página:
Hola Luis
Incluir ASP.NET en HTML
Definición:
ASP.NET se puede combinar con código HTML, que es el lenguaje que usan las páginas web.
Esto permite crear sitios web que mezclan partes visuales (HTML) con lógica del servidor (ASP.NET).
ASP.NET usa el formato .aspx para las páginas, donde se puede incluir código HTML y también instrucciones en VB.NET o C#.
Ejemplo:
<html>
<body>
<h1>Bienvenido</h1>
<% Response.Write("Hoy es " & DateTime.Now) %>
</body>
</html>
El resultado que verá el usuario será algo como:
Bienvenido
Hoy es 19/10/2024
IIS (Internet Information Services)
Definición:
IIS es un servidor web desarrollado por Microsoft que permite publicar sitios web y aplicaciones en Internet o en una red local. Su función principal es recibir solicitudes de los navegadores (clientes) y enviarles las páginas web o aplicaciones solicitadas. Es el entorno donde se ejecutan las páginas ASP y ASP.NET.
Ejemplo:
Si creas una página ASP.NET llamada “inicio.aspx” y la colocas en el servidor IIS, cualquier persona podrá acceder a ella desde su navegador escribiendo:http://tusitio.com/inicio.aspx
Estructura del Lenguaje en ASP.NET
Definición:
La estructura del lenguaje en ASP.NET se refiere al modo en que se organizan las instrucciones dentro de una página. Incluye la declaración de variables, funciones, estructuras de control (como “if” o “for”) y bloques de código dentro de etiquetas especiales.
Ejemplo:
<%
Dim nombre As String
nombre = "Luis"
Response.Write("Hola, " & nombre)
%>
En este ejemplo, se define una variable y se muestra un saludo.
Variables, Tipos de Datos y Constantes
Definición:
- Variables: Son espacios en memoria donde se guardan datos que pueden cambiar durante la ejecución del programa.
- Tipos de Datos: Indican el tipo de valor que puede almacenar una variable (por ejemplo, texto, número, fecha).
- Constantes: Son valores fijos que no cambian durante la ejecución del programa.
Ejemplo:
Dim edad As Integer = 25
Const PI As Double = 3.1416
Dim nombre As String = "Ana"
Expresiones y Operadores
Definición:
Las expresiones son combinaciones de valores, variables y operadores que el programa evalúa para obtener un resultado.
Los operadores son símbolos que permiten realizar operaciones matemáticas, lógicas o de comparación.
Ejemplo:
Dim suma As Integer = 5 + 3
If suma > 7 Then
Response.Write("El resultado es mayor que 7")
End If
Estructura de control de flujos
Definición:
Las estructuras de control de flujo son instrucciones que indican al programa cómo debe ejecutarse el código, es decir, el orden en que se realizan las acciones.
Permiten tomar decisiones, repetir acciones o detener procesos según ciertas condiciones.
Las más comunes son:
- Condicionales (If, ElseIf, Else):
Se usan cuando el programa debe decidir entre dos o más caminos.If edad >= 18 Then Response.Write("Eres mayor de edad") Else Response.Write("Eres menor de edad") End If
- Bucles o Repeticiones (For, While):
Se usan para repetir un bloque de código varias veces.For i = 1 To 5 Response.Write("Número: " & i & "<br>") Next
Ejemplo práctico:
Si un programa quiere mostrar los números del 1 al 5 en pantalla, se usa un bucle For
.
Si quiere mostrar un mensaje diferente según la edad, usa una estructura If
.
Arreglos (una y dos dimensiones)
Definición:
Un arreglo (o array) es una colección de datos del mismo tipo que se guardan en una sola variable con distintas posiciones llamadas índices.
- Arreglo unidimensional:
Es una lista en línea recta de valores.Dim frutas(2) As String frutas(0) = "Manzana" frutas(1) = "Pera" frutas(2) = "Uva"
Aquí se guarda una lista con tres frutas. - Arreglo bidimensional:
Es como una tabla con filas y columnas, donde cada posición guarda un dato.Dim notas(2, 2) As Integer notas(0, 0) = 80 notas(0, 1) = 90 notas(1, 0) = 75 notas(1, 1) = 95
Este arreglo guarda calificaciones de varios estudiantes en dos materias.
Ejemplo práctico:
Un arreglo unidimensional puede guardar los nombres de los días de la semana.
Un arreglo bidimensional puede guardar los nombres de los estudiantes y sus notas.
Conexión a bases de datos
Definición (clara y detallada)
Conectar a una base de datos significa establecer una comunicación entre tu programa (por ejemplo, una página ASP.NET) y un servidor donde se guarda información (como usuarios, productos o calificaciones). Esa comunicación permite leer (consultar), escribir (insertar), modificar (editar) y borrar (eliminar) datos.
Para conectarse se necesita:
- Cadena de conexión (connection string): indica la dirección del servidor, la base de datos y credenciales.
- Objeto de conexión (por ejemplo
SqlConnection
en .NET): abre y cierra la comunicación. - Comandos (por ejemplo
SqlCommand
): ejecutan instrucciones SQL (SELECT, INSERT, UPDATE, DELETE). - Manejar errores y cerrar la conexión para no dejar recursos abiertos.
Ejemplo sencillo (C# – ADO.NET en ASP.NET):
using System.Data.SqlClient;
string connectionString = "Server=MI_SERVIDOR;Database=MiBD;Trusted_Connection=True;";
// Abrir conexión
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
// Aquí van los comandos SQL (ver ejemplos CRUD)
}
Inserción, consulta, edición y eliminación de datos (CRUD)
Definición (clara y detallada)
Las operaciones CRUD son las acciones básicas que realizas sobre los datos:
- INSERTAR (Create): agregar un nuevo registro a la base de datos (por ejemplo, registrar un usuario).
- CONSULTAR (Read): pedir información que ya está guardada (por ejemplo, buscar el nombre de un usuario).
- EDITAR (Update): cambiar datos existentes (por ejemplo, actualizar la dirección de un cliente).
- ELIMINAR (Delete): quitar registros que ya no se necesitan (por ejemplo, borrar un producto).
Siempre es buena práctica usar consultas parametrizadas para evitar ataques de inyección SQL y validar datos antes de enviarlos.
Ejemplos CRUD (C# – ADO.NET) — nivel sencillo
1) Insertar (INSERT):
string sqlInsert = "INSERT INTO Usuarios (Nombre, Email) VALUES (@nombre, @email)";
using (SqlCommand cmd = new SqlCommand(sqlInsert, conn))
{
cmd.Parameters.AddWithValue("@nombre", "Ana");
cmd.Parameters.AddWithValue("@email", "ana@example.com");
int filas = cmd.ExecuteNonQuery(); // devuelve número de filas afectadas
}
2) Consultar (SELECT):
string sqlSelect = "SELECT Id, Nombre, Email FROM Usuarios WHERE Nombre = @nombre";
using (SqlCommand cmd = new SqlCommand(sqlSelect, conn))
{
cmd.Parameters.AddWithValue("@nombre", "Ana");
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
int id = reader.GetInt32(0);
string nombre = reader.GetString(1);
string email = reader.GetString(2);
// Mostrar o usar los datos
}
}
}
3) Editar (UPDATE):
string sqlUpdate = "UPDATE Usuarios SET Email = @email WHERE Id = @id";
using (SqlCommand cmd = new SqlCommand(sqlUpdate, conn))
{
cmd.Parameters.AddWithValue("@email", "ana.nuevo@example.com");
cmd.Parameters.AddWithValue("@id", 1);
int filas = cmd.ExecuteNonQuery();
}
4) Eliminar (DELETE):
string sqlDelete = "DELETE FROM Usuarios WHERE Id = @id";
using (SqlCommand cmd = new SqlCommand(sqlDelete, conn))
{
cmd.Parameters.AddWithValue("@id", 1);
int filas = cmd.ExecuteNonQuery();
}
Buenas prácticas breves:
- Usa
using
para cerrar la conexión automáticamente. - Usa parámetros (
@param
) en lugar de concatenar texto para evitar inyección SQL. - Valida los datos del usuario antes de enviarlos a la base de datos.
- Maneja excepciones (
try/catch
) para controlar errores.