You are on page 1of 18

C# 5

Desarrolle aplicaciones Windows con Visual Studio 2013

Trabajar con Visual Studio


1. Introduccin

17

2. La interfaz de desarrollo

18

2.1 El editor de texto


2.2 El diseador de vistas
2.3 El depurador integrado
2.4 El administrador de extensiones
2.5 NuGet
3. La creacin de soluciones

19
20
20
22
24
26

3.1 Definir el punto de entrada


3.2 La diferencia entre proyectos y soluciones
3.3 Configurar el proyecto
3.4 La conversin de soluciones
3.5 Las herramientas de refactorizacin

27
28
29
32
32

La arquitectura .NET
1. Introduccin

37

2. CLR

37

3. Las bibliotecas de clases

37

4. Los tipos

40

4.1 Los tipos por valor


4.2 Los tipos por referencia

40
41

Introduccin al lenguaje C#

www.ediciones-eni.com

Ediciones ENI

1/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

1. La sintaxis

45

1.1 Los identificadores


1.2 Las palabras reservadas
1.3 La reglas de puntuacin
1.4 Los operadores
1.4.1 Los operadores de clculo
1.4.2 Los operadores de asignacin
1.4.3 Los operadores de comparacin
1.5 La declaracin de variables
1.6 Las instrucciones de control
1.6.1 Las instrucciones condicionales
1.6.2 Las instrucciones iterativas
1.6.3 Las instrucciones de salto
1.7 Los comentarios
2. Los espacios de nombres

61

2.1 La palabra reservada using


2.2 La palabra reservada alias

61
62

3. Los tipos bsicos

63

3.1 Los tipos numricos


3.1.1 Los enteros
3.1.2 Los decimales
3.2 Los booleanos
3.3 Las cadenas de caracteres
3.4 Los tipos null
3.5 La conversin de tipos
3.5.1 La conversin implcita
3.5.2 La conversin explcita

63
63
64
64
64
65
66
66
67

4. Las constantes y las enumeraciones

68

4.1 Las constantes


4.2 Las enumeraciones

www.ediciones-eni.com

45
45
46
47
47
48
49
50
51
51
54
57
59

68
68

Ediciones ENI

2/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

5. Las tablas

71

6. Las colecciones

72

7. Las directivas preprocesador

74

La creacin de tipos
1. Introduccin

79

2. Los niveles de acceso

79

3. Las estructuras

80

4. Las clases

81

4.1 Los campos


4.2 Las propiedades
4.3 Los mtodos
4.3.1 La sobrecarga
4.3.2 Los parmetros
4.4 Los constructores
4.5 Los destructores
4.6 Las clases y miembros estticos
4.7 Las clases parciales
4.8 La palabra reservada this
4.9 Los indexadores
4.10 La sobrecarga de operadores
4.10.1 Los operadores aritmticos
4.10.2 Los operadores de comparacin

81
82
84
85
86
91
92
92
93
94
95
96
97
99

La herencia

www.ediciones-eni.com

Ediciones ENI

3/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

1. La herencia de clases

103

1.1 Implementar la herencia


1.2 Los miembros virtuales
1.3 Ocultar los miembros heredados
1.4 La palabra reservada base
1.5 Las clases y miembros abstractos
1.6 Las clases y los mtodos cerrados
1.7 Los constructores derivados
1.8 El polimorfismo
2. Las interfaces

103
104
105
106
106
107
108
110
112

2.1 La implementacin de interfaces


2.2 El polimorfismo de interfaz
2.3 La herencia de interfaces

113
114
116

Tipos genricos
1. Introduccin

119

2. La creacin de tipos genricos

119

3. Las restricciones de tipo

122

4. Las interfaces genricas

123

4.1 La varianza en las interfaces genricas


4.1.1 La covarianza
4.1.2 La contravarianza
4.2 La creacin de interfaces genricas variantes
4.3 La herencia de interfaces genricas variantes
5. La creacin de mtodos genricos

www.ediciones-eni.com

123
124
125
126
127
127

Ediciones ENI

4/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

6. Valor por defecto genrico

130

7. La herencia de clase genrica

130

Delegados, eventos y expresiones lambda


1. Los delegados
1.1
1.2
1.3
1.4

133

Los parmetros de mtodo


Los mtodos de destino mltiples
Los delegados genricos
La compatibilidad de los delegados

134
134
135
136

2. Los eventos

137

3. Las expresiones lambda

140

3.1 El uso de las expresiones lambda


3.2 Los delegados genricos
3.3 La captura de variables

141
142
142

Creacin de formularios
1. Utilizar los formularios

149

1.1 Aadir formularios al proyecto


1.2 Modificar el formulario de inicio
1.3 Las propiedades de los formularios
1.4 Los mtodos de los formularios
1.5 Las eventos de los formularios
2. Usar los controles

155

2.1 Los tipos de controles


2.2 Aadir controles a los formularios

www.ediciones-eni.com

149
151
152
154
154

Ediciones ENI

155
157

5/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

2.3 Las propiedades de los controles


2.4 Los mens
2.5 Los contenedores
2.6 La usabilidad
2.7 Aadir controles a la caja de herramientas

158
160
162
163
164

Implementacin del administrador de eventos


1. Introduccin

169

2. La creacin de controladores de eventos

169

2.1 La mecnica de un evento


2.2 La adicin dinmica de un controlador de eventos
2.3 La eliminacin dinmica de un controlador de eventos

171
171
172

3. Las controladores de eventos avanzados

172

3.1 Un controlador para varios eventos


3.2 Varios controladores para un evento

172
173

Validar los datos introducidos


1. Introduccin

177

2. La validacin a nivel de campos

177

2.1 Las propiedades de validacin


2.2 Los eventos de validacin
2.2.1 KeyDown y KeyUp
2.2.2 KeyPress
2.2.3 Validating y Validated

177
177
178
178
178

3. La validacin a nivel de formulario

www.ediciones-eni.com

180

Ediciones ENI

6/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

4. Los mtodos de retorno al usuario

183

4.1 MessageBox
4.2 ErrorProvider

183
184

Creacin de controles de usuario


1. Introduccin

189

2. Los controles personalizados

189

3. La herencia de controles

191

4. Los controles de usuario

193

Creacin de aplicaciones Windows 8.1


1. Introduccin

203

2. Principios

203

3. Las herramientas de desarrollo

204

4. El lenguaje XAML

207

5. Una primera aplicacin Windows 8

209

Depuracin

www.ediciones-eni.com

Ediciones ENI

7/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

1. Los tipos de error

215

1.1 Los errores de sintaxis


1.2 Los errores de ejecucin
1.3 Los errores de lgica

215
216
217

2. El depurador

217

2.1 Controlar la ejecucin


2.2 Los puntos de ruptura
2.2.1 Las condiciones de parada
2.2.2 El nmero de llamadas
2.2.3 El filtro
2.2.4 La ejecucin de un comando
2.3 Los DataTips
2.4 Los atributos Caller
3. Las ventanas

218
219
220
221
222
223
223
224
226

3.1 La ventana Resultados


3.2 La ventana Variables locales
3.3 La ventana Automtico
3.4 La ventana Inspeccin
3.5 La ventana Ejecucin
3.6 Las otras ventanas

227
227
228
228
228
229

Gestin de excepciones
1. La clase Exception

233

2. La creacin de excepciones personalizadas

234

3. El desencadenamiento de excepciones

235

4. La intercepcin y gestin de excepciones

237

www.ediciones-eni.com

Ediciones ENI

8/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

Monitorizacin
1. La monitorizacin de la ejecucin

245

1.1 Las clases Debug y Trace


1.2 El listener
1.2.1 La creacin de listeners
1.2.2 La copia de seguridad de las trazas
1.3 Los modificadores de seguimiento
1.3.1 El funcionamiento de los modificadores de seguimiento
1.3.2 La configuracin de los modificadores de seguimiento
2. Los archivos de traza de eventos

245
248
248
248
250
251
252
253

2.1 La interaccin con los archivos de traza de eventos


2.2 La gestin de los archivos de traza de eventos
2.3 La escritura de eventos
3. Las contadores de rendimiento

253
254
255
256

3.1 La creacin de contadores de rendimiento


3.1.1 Desde Visual Studio
3.1.2 Desde cdigo
3.2 El uso de contadores de rendimiento
3.3 El anlisis de contadores de rendimiento

257
257
259
260
262

Tests unitarios
1. Introduccin a las pruebas unitarias

267

1.1 La creacin del proyecto


1.2 Las clases de pruebas unitarias
2. La puesta en marcha de una serie de pruebas
2.1 Aadir pruebas al proyecto
2.2 El desarrollo de las pruebas

www.ediciones-eni.com

267
268
269
269
270

Ediciones ENI

9/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

Creacin del modelo de datos


1. Introduccin

275

2. La creacin de un modelo

275

3. La creacin de entidades

276

4. La generacin de la base de datos

281

5. La creacin de entidades a partir del cdigo (Code First)

287

Presentacin de Entity Framework


1. Introduccin

295

2. El mapeo

295

2.1 La capa lgica


2.2 La capa conceptual
2.3 La capa de mapeo

295
297
300

3. Trabajar con las entidades

301

3.1 Las entidades


3.2 La clase ObjectContext
3.3 Las relaciones
3.3.1 El concepto de tabla por tipo
3.3.2 El concepto de tabla por jerarqua

302
305
306
307
307

Presentacin de LINQ
1. Las consultas LINQ

www.ediciones-eni.com

311

Ediciones ENI

10/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

1.1 La sintaxis
1.2 Los mtodos extendidos

311
312

2. Los operadores de consultas

313

2.1 Filtrar
2.1.1 Where
2.1.2 OfType<TResult>
2.1.3 SelectMany
2.1.4 Skip y Take
2.2 Ordenar
2.2.1 OrderBy
2.2.2 ThenBy
2.3 Agrupar
2.3.1 GroupBy
2.3.2 Join
2.4 Agregar
2.5 Convertir

313
313
314
314
315
316
316
316
317
317
318
318
319

3. Las consultas paralelas

319

3.1 Particionar una consulta


3.2 Anular una consulta

320
321

LINQ to ENTITIES
1. Introduccin

325

2. Extraer datos

325

2.1 El extraccin simple


2.2 La extraccin condicional

326
326

3. Aadir, modificar y eliminar datos

327

3.1 Aadir datos


3.2 Modificar datos

www.ediciones-eni.com

327
328

Ediciones ENI

11/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

3.3 Eliminar datos


3.4 El envo de las modificaciones

328
329

LINQ to SQL
1. La creacin de clases LINQ to SQL

333

2. El objeto DataContext

335

2.1 El mtodo ExecuteQuery


2.2 Utilizar las transacciones
2.3 Las dems miembros de DataContext
3. Ejecutar las consultas con LINQ

336
336
337
338

3.1 Las consultas sencillas


3.2 Las consultas filtradas
3.3 Los joins

338
338
339

4. Los procedimientos almacenados

339

4.1 La adicin de procedimientos almacenados al modelo


4.2 El ejecucin de procedimientos almacenados

340
340

LINQ to XML
1. Los objetos XML

343

1.1 XDocument
1.2 XElement
1.3 XNamespace
1.4 XAttribute
1.5 XComment

343
344
344
346
346

2. Ejecutar consultas con LINQ

347

2.1 Las consultas sencillas

www.ediciones-eni.com

347

Ediciones ENI

12/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

2.2 Las consultas filtradas


2.3 Los joins

348
348

El sistema de archivos
1. Las clases de gestin del sistema de archivos
1.1 DriveInfo
1.2 Directory y DirectoryInfo
1.3 File y FileInfo
1.4 Path

351
351
352
354
357

2. Trabajar con el sistema de archivos

359

2.1 Las objetos Stream


2.2 La clase FileStream
2.3 Leer un archivo de texto
2.3.1 Leer mediante la clase File
2.3.2 Leer con la clase StreamReader
2.4 Escribir en un archivo de texto
2.4.1 Escribir mediante la clase File
2.4.2 Escribir con la clase StreamWriter

359
360
362
362
363
365
365
366

Serializacin
1. Introduccin

369

2. La serializacin binaria

369

2.1 Conceptos bsicos


2.2 Controlar la serializacin
2.2.1 El control por atributo
2.2.2 El control por la interfaz

369
371
371
374

3. La serializacin XML

www.ediciones-eni.com

377

Ediciones ENI

13/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

3.1 Los conceptos bsicos


3.2 Controlar la serializacin
3.3 La serializacin XML SOAP

377
380
382

Expresiones regulares
1. Introduccin

385

2. Una primera expresin regular

385

3. Las opciones de bsqueda

386

4. Los caracteres de escape

387

5. Los conjuntos

388

6. Los grupos

389

7. Los anchors

390

8. Los cuantificadores

391

Multi-threading
1. Introduccin

395

2. La clase Thread

395

2.1 Crear un thread


2.2 Suspender o anular un thread
2.3 Intercambiar datos con un thread
2.4 Bloquear un thread

www.ediciones-eni.com

Ediciones ENI

395
397
397
400

14/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

2.5 Prioridad de los threads

401

3. Funciones asncronas

402

3.1 Task y Task<TResult>


3.2 async y await

403
404

4. El componente BackgroundWorker

406

Globalizacin y localizacin
1. Introduccin

413

2. La cultura

413

3. La globalizacin

415

4. La localizacin

417

Seguridad
1. Introduccin

423

2. Las elementos bsicos

423

2.1 El interfaz IPermission


2.2 La clase CodeAccessPermission
2.3 La interfaz IPrincipal
3. Implementacin de la seguridad

425

3.1 La seguridad basada en roles


3.1.1 Seguridad obligatoria
3.1.2 Seguridad declarativa

www.ediciones-eni.com

423
424
424

425
426
427

Ediciones ENI

15/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

3.2 La seguridad basada en permisos de acceso


3.2.1 Seguridad obligatoria
3.2.2 Seguridad declarativa
4. Introduccin a la criptografa

428
428
429
430

Para llegar ms lejos


1. El diseo con GDI+

435

1.1 La clase Graphics


1.1.1 Las coordenadas
1.1.2 Las formas
1.2 La estructura Color y las clases Brush y Pen
1.2.1 La estructura Color
1.2.2 La clase Brush
1.2.3 La clase Pen
1.2.4 Los argumentos de sistema
1.3 Los ejemplos
1.3.1 La visualizacin de texto
1.3.2 Redimensionar una imagen
2. El remoting

442

2.1 Introduccin
2.2 La implementacin
2.2.1 La capa comn
2.2.2 La aplicacin servidor
2.2.3 La aplicacin cliente

442
443
443
444
446

3. La reflexin

449

3.1 La clase System.Type


3.2 Cargar un ensamblado de manera dinmica
3.2.1 La enumeracin de los tipos
3.2.2 La instanciacin de objetos
3.2.3 El uso de los miembros

www.ediciones-eni.com

435
436
436
438
438
438
439
440
440
440
441

Ediciones ENI

449
451
452
453
454

16/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

Ensamblados y configuraciones
1. Introduccin

459

2. Los ensamblados privados

459

3. Los ensamblados compartidos

461

4. Los archivos de configuracin

463

Despliegue
1. Introduccin

467

2. Los proyectos de despliegue

468

2.1 XCOPY
2.2 InstallShield

468
469

3. La configuracin del proyecto

469

3.1 Aadir del proyecto


3.2 El asistente de configuracin
3.2.1 Application Information
3.2.2 Installation Requirements
3.2.3 Installation Architecture
3.2.4 Application Files
3.2.5 Application Shortcuts
3.2.6 Application Registry
3.2.7 Installation Interview
4. El despliegue del proyecto

www.ediciones-eni.com

469
471
471
471
472
473
476
478
479
480

Ediciones ENI

17/18

C# 5
Desarrolle aplicaciones Windows con Visual Studio 2013

ndice

www.ediciones-eni.com

483

Ediciones ENI

18/18

You might also like