Saltar al contenido principal
Programacion de Servicios y Procesos en C#

Programacion de Servicios y Procesos en C#

Carnero Sobrino, Jose Luis

Este libro desarrolla los contenidos del módulo de Programación de Servicios y Procesos, vinculado al título de Técnico Superior en Desarrollo de Aplicaciones Multiplataforma (Real Decreto 450/2010 de 16 de abril, publicado en el BOE con fecha 20 de mayo de 2010). El manual se presenta como una guía de aprendizaje compuesta por cinco unidades: Procesos, Threads, Networking & So...

Editorial:
Marcombo
Año de edición:
2021
Materia:
Programación
ISBN:
978-84-267-3392-4
Páginas:
166
Encuadernación:
Rústica
22,80 €
IVA incluido
Añadir a favoritos

Sinopsis

Este libro desarrolla los contenidos del módulo de Programación de Servicios y Procesos, vinculado al título de Técnico Superior en Desarrollo de Aplicaciones Multiplataforma (Real Decreto 450/2010 de 16 de abril, publicado en el BOE con fecha 20 de mayo de 2010). El manual se presenta como una guía de aprendizaje compuesta por cinco unidades: Procesos, Threads, Networking & Sockets, Servicios y Seguridad. En cada una se abordan conocimientos teóricos básicos, tratados desde cero, para introducir al lector en la programación con ejemplos funcionales e ilustrativos que permitan avanzar en el desarrollo y el consumo de servicios bajo el paradigma cliente-servidor. A lo largo de las unidades se presentan los conceptos de proceso, para profundizar en la descomposición de un proceso en hilos o threads con todas sus implicaciones de concurrencia, paralelismo y distribución. Asimismo, se introducen los conceptos necesarios de redes y comunicación mediante sockets, para programar la transmisión de datos a través de la red. Los objetivos de este libro se clasifican en: 1.Conseguir la destreza de crear un servicio con

Índice

Unidad 1
Procesos ................................................... 1
1.1 Introducción y fundamentos ....................... 2
1.2 Concurrencia y distribución ......................... 3
1.3 Estados de un proceso ................................. 5
1.4 Gestión de procesos ..................................... 6
1.4.1 Dispatcher ............................................... 7
1.4.2 Scheduler ................................................. 8
1.5 Operaciones con procesos ....................... 11
1.5.1 Creación y ejecución .......................... 11
1.5.2 Acceso ................................................... 13
1.5.3 Propiedades .......................................... 14
1.5.4 Eliminación y espera ............................ 14
1.6 Comunicación entre procesos ................. 15
Unidad 2
Threads ................................................... 19
2.1 Introducción y fundamentos ..................... 20
2.2 Creación y puesta en ejecución .............. 23
2.3 Paralelismo ................................................... 24
2.3.1 Variables compartidas ......................... 25
2.3.2 Paso de parámetros ............................. 26
2.4 Propiedades ................................................ 27
2.5 Sincronismo .................................................. 29
2.5.1 Join() ....................................................... 29
2.5.2 lock() ...................................................... 29
2.5.3 Monitores ............................................... 32
2.5.4 Aborto y excepciones .......................... 36
2.6 Interacción con un formulario ................... 37
Unidad 3
Networking & Sockets ........................... 43
3.1 Conceptos fundamentales
de redes ....................................................... 44
3.1.1 Componentes básicos ......................... 44
3.2 Protocolo TCP/IP .......................................... 45
3.2.1 Funcionamiento .................................... 46
3.2.2 Capa Ethernet ...................................... 47
3.2.3 Capa IP .................................................. 48
3.2.4 Capa TCP/UDP ...................................... 50
3.2.5 Sockets ................................................... 53
3.2.6 Capa de aplicación ............................ 55
3.3 Programación mediante sockets .............. 57
3.3.1 Direccionamiento ................................. 57
3.3.2 DNS ......................................................... 59
3.3.3 Socket servidor orientado
a conexión ........................................... 60
3.3.4 Socket cliente orientado
a conexión ........................................... 62
3.3.5 Servidor TCP
(transmisión de datos) .......................... 63
3.3.6 Cliente TCP
(transmisión de datos) .......................... 64
3.3.7 Servidor UDP .......................................... 65
3.3.8 Cliente UDP ............................................ 66
Unidad 4
Servicios ................................................. 71
4.1 Componentes ............................................. 72
4.1.1 Servidor .................................................. 72
4.1.2 Cliente .................................................... 74
4.1.3 Protocolo ............................................... 75
4.1.4 Arquitectura .......................................... 76
4.2 Clases del modelo TCP ............................... 77
4.2.1 NetworkStream ..................................... 77
4.2.2 TcpListener ............................................. 80
4.2.3 TcpClient ................................................ 84
4.3 Servidores con atención concurrente ...... 86
4.3.1 Adivina número
(un solo cliente) .................................... 87
4.3.2 Adivina número
(múltiples clientes) ................................ 90
4.4 Juego piedra, papel, tijera ........................ 92
4.4.1 PPT con respuesta síncrona ................. 93
4.4.2 PPT cliente asíncrono ......................... 100
4.4.3 PPT con sondeo .................................. 102
4.4.4 PPT full-duplex ...................................... 109
4.5 Estándares de protocolos
a nivel aplicación ..................................... 117
4.5.1 FTP ......................................................... 117
4.5.2 SMTP ..................................................... 119
4.5.3 HTTP ....................................................... 122
4.6 Servicios web ............................................ 126
4.6.1 Clasificación ........................................ 126
4.6.2 Consumo de API REST ........................ 128
4.6.3 Prueba de métodos en API REST ....... 132
4.6.4 Microservicios ...................................... 134
Unidad 5
Seguridad ............................................. 139
5.1 Introducción .............................................. 140
5.2 Breve historia .............................................. 141
5.3 Técnicas de seguridad en la fase
de desarrollo de software ........................ 142
5.3.1 Excepciones ........................................ 142
5.3.2 Mensajes de error ............................... 143
5.3.3 Validaciones ....................................... 143
5.3.4 Autenticación y roles ......................... 143
5.3.5 Políticas preventivas ........................... 143
5.3.6 Logs ...................................................... 144
5.4 Funciones hash aplicadas a ficheros ..... 144
5.5 Cifrado simétrico ....................................... 145
5.5.1 Cifrado por sustitución ....................... 146
5.5.2 Algoritmo DES ...................................... 148
5.5.3 Algoritmo AES ...................................... 151
5.6 Cifrado asimétrico .................................... 153
5.6.1 Algoritmo RSA ...................................... 154
5.6.2 Firma digital ......................................... 156
5.6.3 SSL ......................................................... 157

Artículos relacionados

Comprender los Algoritmos

Comprender los Algoritmos

Y. Bhargava, Aditya

Un enfoque accesible para aprender sobre algoritmos con ilustraciones y ejemplos prácticos. 320 páginas.La mirada de Luces: Perfecto para quienes desean adentrarse en el mundo de la programación sin complicaciones. ...

✅ Disponible

36,95 €

Micropython en Proyectos. Una Introducción Práctica a la Programación de Microco

Micropython en Proyectos. Una Introducción Práctica a la Programación de Microco

Padin Romero, Beatriz / Dapena Janeiro, Ad / Padín Romero, Beatriz / Dapena Janeiro, Adriana

Guía práctica para desarrollar proyectos en MicroPython, ideal para principiantes y entusiastas. 266 páginas.La mirada de Luces: Perfecto para quienes desean iniciarse en la programación de microcontroladores de manera práctica. ...

✅ Disponible

22,80 €

Guía de Programación en C/C++

Guía de Programación en C/C++

Lopez, Eliezer

Manual para aprender a programar en C y C++, con ejemplos y ejercicios prácticos. 400 páginas.La mirada de Luces: Esencial para quienes desean adentrarse en el mundo de la programación. ...

✅ Disponible

30,50 €

Python Black Hat. Programación para Hackers y Pentesters

Python Black Hat. Programación para Hackers y Pentesters

Arnold, Tim / Seitz, Justin

Cuando se trata de crear herramientas de hackeo potentes y eficaces, Python es el lenguaje elegido por la mayoría de los analistas de seguridad. En este libro explorarás el lado más oscuro de las capacidades de Python: todo, desde escribir sniffers de red, robar credenciales de correo electrónico y acceder a directorios y carpetas por la fuerza hasta crear fuzzers de mutación, ...

✅ Disponible

32,95 €

Curso Práctico con Unity 3D

Curso Práctico con Unity 3D

Cantón Nadales, David

Guía para el desarrollo de videojuegos con Unity, desde fundamentos hasta creación de builds. 360 páginas.La mirada de Luces: Ideal para quienes desean adentrarse en el mundo del desarrollo de videojuegos de forma práctica. ...

✅ Disponible

30,50 €

Curso de Programacion con Rust

Curso de Programacion con Rust

Lopez, Eliezer

Introducción a la programación en Rust, un lenguaje enfocado en la seguridad y el rendimiento. 400 páginas.La mirada de Luces: Perfecto para desarrolladores que buscan un lenguaje moderno y eficiente. ...

✅ Disponible

31,95 €