C# 2005

C# 2005

APRENDIZAJE Y REFERENCIA

KINGSLEY-HUGHES, ADRIAN / KINGSLEY-HUGHES, KATHIE

37,30 €
IVA incluido
Editorial:
ANAYA MULTIMEDIA
Año de edición:
2007
Materia
Informatica
ISBN:
978-84-415-2238-1
Páginas:
448
Colección:
Anaya Multimedia / Wrox
37,30 €
IVA incluido
Añadir a favoritos

Introducción

¿Cómo es de diferente este libro?

¿Para quién es este libro?

¿Cómo está estructurado este libro?

¿Cómo abordar los capítulos?

Algunos consejos...

Convenciones



1. ¿Qué es C#?

El nombre

Visión de conjunto

Historia

C# y CLR

Componentes en .NET

Estándares

Otras implementaciones

Código C# de ejemplo

Las ventajas de aprender C#

Resumen



2. Empezar a trabajar con C#

Aprender C# es más barato de lo que pensaba

El extremo barato del espectro

El editor de texto

La plataforma Microsoft .NET Framework

Cómo utilizar herramientas gratuitas C#

Escribir código

Una utilidad barata que hace la vida más sencilla

Editores de texto y herramientas C# alternativos

Herramientas de negocio: Visual Studio y Visual C#

Resumen



3. Visión de conjunto de C#

C#

Fundamentos básicos de C#

Examinar el código fuente C#

Tipos

Tipos valor

Tipos referencia

Tipos predefinidos

Sobrecarga

Conversiones

Tipos tabla

Variables y parámetros

Expresiones

Sentencias

Clases

Constantes

Campos

Métodos

Propiedades

Eventos

Operadores

Indexadores

Constructores de instancia

Finalizadores

Constructores estáticos

Herencia

Clases estáticas

Estructuras

Interfaces

Delegados

Enum

Genéricos

Iteradores

Tipos anulables

Resumen



4. Estructura del lenguaje C#

Programas C#

Gramáticas

Ambigüedades de gramática

Análisis léxico

Terminadores de línea

Comentarios

Espacio en blanco

Tokens

Operadores y signos de puntuación

Directivas de preprocesamiento

Resumen



5. Conceptos C#

Inicio de una aplicación

Finalización de una aplicación

Declaraciones C#

Miembros

Miembros de un espacio de nombres

Miembros de un estructura

Miembros de una enumeración

Miembros de una clase

Miembros de una interfaz

Miembros de una tabla

Miembros de un delegado

Acceso a miembros

Accesibilidad declarada

Firmas

Firmas de índices

Firmas de constructor de instancia

Firmas de método

Firmas de operador

Firmas y sobrecarga

Sobrecarga de indexadores

Sobrecarga de constructores de instancias

Sobrecarga de métodos

Sobrecarga de operadores

Ámbitos

Espacio de nombres y nombres de tipos

Administración de memoria en C#

Resumen



6. Tipos

Tres tipos de tipos

Diferencia entre tipos de valor y referencia

Parámetros ref y out

El sistema de tipos de C#

Tipos de valor

System.ValueType

Constructores predeterminados

Tipos estructura

Tipos simples

Tipos integrales

Utilizar tipos

Tipos de punto flotante

Tipos decimales

Tipo bool

Tipos de enumeración

Tipos de referencia

Tipos de clase

Tipo object

Tipo string

Tipos de tabla

Tipos de delegado

El tipo null

Boxing y unboxing

Boxing

Unboxing

Tipos anulables

Miembros

Interfaces implementadas

Resumen



7. Variables

¿Qué son variables?

No todas las variables se crean igual

Categorías de variables

Variables estáticas

Elementos de tabla

Variables de instancia

Utilizar variables de instancia en clases

Utilizar variables de instancia en estructuras

Parámetros de valores

Parámetros de referencia

Parámetros de salida

Variables locales

Valores predeterminados

Asignación definitiva

Variables asignadas inicialmente

Variables no asignadas inicialmente

Reglas para determinar asignación definitiva

Resumen



8. Conversiones

Conversiones implícitas

Conversiones de identidad

Conversiones implícitas numéricas

Conversiones implícitas de enumeración

Conversiones implícitas de referencia

Conversiones boxing

Conversiones implícitas de parámetro de tipo

Conversiones implícitas de expresión de constante

Conversiones implícitas definidas por el usuario

Conversiones explícitas

Conversiones explícitas numéricas

Tipo integral a tipo integral

Tipo decimal a integral

Tipo float/double a int

Double a float

Float/double a decimal

Decimal a float/double

Conversiones explícitas de enumeración

Conversiones explícitas de referencia

Conversiones unboxing

Conversiones explícitas de parámetro de tipo

Conversiones explícitas definidas por el usuario

Conversiones estándar

Conversiones implícitas estándar

Conversiones explícitas estándar

Conversiones definidas por el usuario

Conversiones implícitas definidas por el usuario

Conversiones anónimas de método

Conversiones de grupo de métodos

Conversiones de tipo null

Conversiones anulables

Resumen



9. Expresiones

Clasificaciones de expresiones

Resultados de una expresión

Valores de expresiones

Expresiones y operadores

Tres tipos de operadores

Precedencia y asociatividad de operadores

Sobrecarga de operadores

Resolución de sobrecarga de operador unario

Resolución de sobrecarga de operador binario

Promociones numéricas

Operadores unarios

Operadores de igualdad

Operadores relacionales

Búsqueda de miembros

Tipos base

Miembros de función

Invocación de operador

Listas de argumentos

Resolución de sobrecarga

Expresiones primarias

Literales

Nombres simples

Expresiones entre paréntesis

Acceso a miembros

Expresiones de llamada

Acceso a elementos

Acceso a tabla

Acceso a indexador

Acceso a this

Acceso a base

Operador new

Operador typeof

Operador sizeof

Operadores checked/unchecked

Expresión de valor predeterminada

Métodos anónimos

Expresiones unarias

Expresiones de conversión

Operadores aritméticos

Operadores de desplazamiento

Operadores relacionales y comprobación de tipos

Operadores lógicos

Operadores lógicos condicionales

Operador de fusión de nulos

Operadores de asignación

Expresiones

Expresiones constantes

Expresiones booleanas

Resumen



10. Sentencias

¿Qué son sentencias?

Sentencias C#

Punto final y alcance

Punto final

Alcance

Bloques de código

Listas de sentencias

Sentencias vacías

Sentencias con etiquetas

Sentencias de declaración

Declaraciones de variable local

Declaraciones de constante local

Sentencias de expresión

Sentencias de selección

La sentencia if

La sentencia switch

Sentencias de iteración

La sentencia while

La sentencia do

La sentencia for

La sentencia foreach

Sentencias de salto

La sentencia break

La sentencia continue

La sentencia goto

La sentencia return

La sentencia throw

La sentencia using

La sentencia yield

Resumen



11. Espacios de nombres

¿Qué son espacios de nombres?

Organizar clases

Controlar el ámbito

Unidades de compilación

Declaraciones de espacios de nombres

Directivas extern alias

Directivas using

Directivas using alias

Directivas using espacio de nombres

Miembros de espacios de nombres

Declaraciones de tipo

Miembro de alias cualificado

Resumen



12. Clases

¿Qué son clases?

Declaraciones de clase

Modificadores de clase

Especificación de clase base

Clases base

Implementaciones de interfaz

Cuerpo de la clase

Declaraciones partial

Miembros de clase

Herencia

Modificador new

Modificadores de acceso

Miembros estáticos y de instancia

Constantes

Campos

Campos estáticos y de instancia

Campos de sólo lectura

Campos volátiles

Inicialización de campos

Inicialización de variable

Métodos

Parámetros de método

Métodos estáticos y de instancia

Métodos virtuales

Métodos de reemplazo

Métodos sellados

Métodos abstractos

Cuerpo del método

Propiedades

Propiedades estáticas y de instancia

Descriptores de acceso

Descriptores de acceso virtual, sealed, override y abstract

Eventos

Eventos como campos

Eventos estáticos y de instancia

Descriptores de acceso virtual, sealed, override y abstract

Indexadores

Operadores

Operadores unarios

Operadores binarios

Operadores de conversión

Constructores de instancia

Constructores estáticos

Finalizadores

Resumen



13. Estructuras

¿Qué son estructuras?

Declaraciones de estructura

Modificadores de estructura

Interfaces de estructura

Cuerpo de la estructura

Miembros de estructura

Diferencias entre clase y estructura

Semántica de valor

Herencia

Asignaciones

Valores predeterminados

Boxing y unboxing

this

Inicializadores de campo

Constructores

Finalizadores

Constructores estáticos

Cuándo utilizar estructuras

Resumen



14. Tablas

¿Qué es una tabla?

Tipos de tabla

Tipo System.Array

Crear tablas

Acceder a los elementos de tabla

Miembros de tabla

Covarianza de tabla

Inicializadores de tabla

Comas finales

Resumen



15. Interfaces

¿Qué es una interfaz?

Definir una interfaz

Declaraciones de interfaz

Modificadores

Interfaces base explícitas

Cuerpo de la interfaz

Miembros de interfaz

Métodos de interfaz

Propiedades de interfaz

Eventos de interfaz

Resumen



16. Enumeraciones

Declaraciones de enumeración

Modificadores de enumeración

Miembros de enumeración

Cuidado con las referencias circulares

System.Enum

Valores y operaciones de enumeración

Resumen



17. Delegados

Delegados en acción

Declaraciones de delegado

Modificadores

Declarar delegados

Lista de invocación

Instanciar delegados

Resumen



18. Excepciones

Crear excepciones

System.Exception

Clases de excepción comunes

Gestionar excepciones

¿Qué sucede si no se encuentra ninguna cláusula catch?

Resumen



19. Atributos

Introducción a los atributos

Clases de atributo

Parámetros posicionales vs. con nombre

Uso de atributos

Tipos de parámetros de atributo

Especificación de atributos

Instancias de atributos

Compilación de atributos

Recuperación en tiempo de ejecución de instancias de atributo

Atributos reservados

El atributo Conditional

Métodos condicionales

Clases de atributo condicional

El atributo Obsolete

Resumen



20. Genéricos

Genéricos en C# vs. plantillas en C++

Ventajas de los genéricos

Declaraciones de clase genérica

Parámetros de tipo

Diferencias de parámetros de tipo

Tipos de instancia

Miembros de clase genérica

Campos estáticos en clases genéricas

Constructores estáticos en clases genéricas

Acceso a miembros protegidos

Sobrecarga en clases genéricas

Operadores en clases genéricas

Declaraciones de estructura genérica

Declaraciones de interfaz genérica

Implementaciones explícitas de miembro de interfaz

Declaraciones de delegado genérico

Tipos construidos

Argumentos de tipo

Tipos abiertos y cerrados

Miembros de tipos construidos

Utilizar directiva alias

Métodos genéricos

Firmas de método genérico

Métodos genéricos virtuales

Invocar métodos genéricos

Dónde no se utilizan genéricos

Restricciones

Resumen



21. Iteradores

Bloque de iterador

Bloques de iterador y errores en tiempo de compilación

Interfaces de enumerador

Interfaces enumerable

Tipo yield

This

Objetos de enumerador

El método MoveNext

Interrumpir la ejecución

La propiedad Current

El método Dispose

Objetos enumerables

Método GetEnumerator

Resumen



22. Código no seguro

¿Qué es código no seguro?

Ventajas y desventajas de código no seguro

Ventajas de código no seguro

Desventajas de código no seguro

Contextos del código no seguro

Fundamentos básicos de punteros

Punteros void

Operadores de puntero

Unsafe en acción

Utilizar el modificador fixed

Operador sizeof

Utilizar stackalloc

Compilar código no seguro

Resumen



Apéndices



A. Gramática C#

Gramática léxica

Comentarios

Identificadores

Palabras clave

Terminadores de línea

Literales

Operadores/Puntuadores

Directivas de preprocesamiento

Caracteres de escape Unicode

Espacio en blanco

Gramática sintáctica

Tablas

Atributos

Clases

Delegados

Enumeraciones

Expresiones

Genéricos

Interfaces

Sentencias

Estructuras

Tipos

Variables

Extensiones para código no seguro



B. Convenciones de nombrado

Uso de mayúsculas

PascalCase

CamelCase

Mayúsculas

Distinción entre mayúscula y minúscula

Abreviaturas

Palabras clave a evitar

Nombrar espacios de nombres

Nombrar clases

Nombrar interfaces

Nombrar atributos

Nombrar tipo de enumeración

Nombrar campos estáticos

Nombrar parámetros

Nombrar métodos

Nombrar propiedades

Nombrar eventos



C. Biblioteca estándar



D. Portabilidad

Aspectos generales de portabilidad

Portabilidad Plataforma/SO

Despliegue simplificado

Interoperabilidad con código heredado

Comportamiento indefinido

Comportamiento definido según implementación

Comportamiento inespecífico

Aspectos finales



E. Comentarios de documentación XML

Sintaxis

Etiquetas recomendadas



Índice alfabético

Como uno de los lenguajes de programación más destacado en estos momentos, C# le permite construir una amplia variedad de aplicaciones seguras y robustas que se ejecutan sobre la plataforma .NET Framework, incluidos servicios Web XML, aplicaciones cliente-servidor, aplicaciones de base de datos y mucho más. Ahora, con la aparición de C# 2005, encontrará un conjunto complejo de opciones y parámetros del nuevo lenguaje para crear aplicaciones más potentes si sabe cómo utilizarlas.

Combinando tutorial y referencia, este libro presenta las características más novedosas a la vez que explora el lenguaje desde sus bases. La primera parte le proporciona un conocimiento detallado de conceptos básicos de programación y le ayuda a adquirir las habilidades para escribir sus propias aplicaciones. La segunda parte presenta información detallada sobre las características específicas del lenguaje de modo que puede aprovechar inmediatamente todas las herramientas disponibles.

Artículos relacionados

  • IA GENERATIVA EN AWS
    FREGLY, CHRIS / BARTH, ANTJE / EIGENBRODE, SHELBEE
    Las empresas de hoy en día avanzan rápidamente para integrar la inteligencia artificial generativa en sus productos y servicios. Hay mucha agitación (y también malentendidos) sobre el impacto y la promesa de esta tecnología. Con este libro, Chris Fregly, Antje Barth y Shelbee Eigenbrode, de Amazon Web Services, le ayudarán a encontrar formas prácticas de usar esta tecnología ta...
    Disponible en tienda

    39,95 €

  • ESCALANDO AGILIDAD CON SAFE
    GALÁN CARRETERO, ÁNGEL
    Guía esencial para navegar por el complejo pero poderoso mundo del marco de trabajo ágil de Scaled Agile. Este libro no solo desglosa la teoría detrás de SAFe, sino que va más allá al proporcionar una visión práctica, rica en experiencias reales, técnicas y soluciones a los desafíos en las diferentes implementaciones que nos podemos encontrar.Comenzando con una sólida base teór...
    Disponible en tienda

    19,95 €

  • PLANTILLAS DAX PARA POWER BI Y POWER PIVOT
    POMARES MEDRANO, JOSÉ MANUEL
    Power BI y Excel son herramientas ideales para crear informes, dashboards o cuadros de mando a partir de grandes cantidades de datos. Sin embargo, es muy frecuente un aprovechamiento escaso de sus posibilidades de análisis. Puesto que tanto Excel (mediante su complemento Power Pivot) como Power BI pueden trabajar con modelos de datos tabulares, ambas aplicaciones nos ofrecen la...
    Disponible en tienda

    29,95 €

  • EL MÉTODO PARA
    FORTE, TIAGO
    p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px 'Helvetica Neue'}Del autor del bestseller Crea tu segundo cerebro nos llega un manual sobre las herramientas esenciales que necesitas para organizar tu vida digital. En nuestra vida moderna, nos enfrentamos constantemente al desafío de lidiar con una gran cantidad de información. Sin embargo, nunca nos han enseñado cómo gestio...
    Disponible en tienda

    12,50 €

  • RETOS DE PROGRAMACIÓN CON JUEGOS. PYTHON Y JAVA
    NADAL, MARIONA
    Aprender a programar no siempre es fácil, pero sí podemos hacerlo entretenido: darles sentido a nuestros primeros programas y desarrollar pequeños juegos que nos ayuden, de forma práctica, a afianzar nuestro aprendizaje y que podremos utilizar luego para jugar un ratito. Java y Python son los dos lenguajes de programación más usados y, con este libro, no necesitas decidirte por...
    Disponible en tienda

    29,95 €

  • HTML Y CSS. DISEÑO Y CONSTRUCCION DE SITIOS WEB
    DUCKETT, JON
    ¡Bienvenido a una forma amena de aprender HTML y CSS! Tanto si quieres diseñar y construir sitios web desde cero, como si deseas tener más control sobre un sitio ya existente, este libro te ayudará a crear contenido web atractivo y agradable para el usuario.Sabemos que el código puede intimidar un poco, pero echa un vistazo a las páginas interiores y verás en qué se diferencia ...
    Disponible en tienda

    49,95 €