]> git.llucax.com Git - z.facultad/75.31/presentacion.git/blob - presentacion_d.mgp
ad7ae9a48e00fe00ab9b0e3c641ab68612ef5f86
[z.facultad/75.31/presentacion.git] / presentacion_d.mgp
1 %include "default.mgp"
2 %default 1 bgrad
3 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4 %page
5 %nodefault
6 %center, size 7, font "standard", fore "white", vgap 100
7
8
9 Teoría de Lenguaje
10 Lenguaje D
11
12 %size 2
13 Leandro Lucarella (77891)
14 <llucare@fi.uba.ar>
15
16 30 de Mayo de 2005
17
18 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
19 %page
20
21 Objetivo del lenguaje
22
23         Reducir el costo de desarrollo
24         Hacer más fácil escribir programas portables
25         Soportar programación multi-paradigma
26         Curva de aprendizaje corta para programadores C/C++
27         Proveer acceso irrestricto de bajo nivel cuando sea necesario
28         Implementación de compilador más sencillo que C++
29         Ser compatible con la ABI local de C
30         Tener gramática libre de contexto
31         Escribir fácilmente aplicaciones internacionalizadas
32         Incorporar Programación por Contrato
33         Construir programas independientes y livianos
34
35 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
36 %page
37
38 Sistema de tipos
39
40         Tipos básicos
41         Tipos derivados
42                 punteros
43                 arrays
44                 funciones
45                 delegados
46         Tipos de usuario
47                 alias
48                 typedef
49                 enum
50                 union
51                 struct
52                 class
53                 interface
54
55 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
56 %page
57
58 Expresiones
59
60         Operaciones
61         Variables
62         Representación de la memoria
63         Modelo de ejecución
64         Punteros
65         Recolección de basura
66         Rutinas
67                 Funciones planas (sin contexto)
68                 Funciones con contexto
69                 Funciones virtuales
70                 Pasaje de parámetros
71                 Funciones con parámetros variables
72                 Sobrecarga de funciones
73
74 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
75 %page
76
77 Estructura del programa
78
79         Módulos
80         Compilación condicional
81         Assembly embebido
82
83 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
84 %page
85
86 Orientación a objetos
87
88         Abstracción
89                 Propiedades
90                 Sobrecarga de operadores
91         Seguridad
92         Herencia
93         Polimorfismo
94                 Polimorfismo estático
95
96 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
97 %page
98
99 Excepciones
100
101         No time-critical
102         Utilizadas por la biblioteca estándar y el lenguaje
103
104 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
105 %page
106
107 Paralelismo / Concurrencia
108
109         clase Thread
110         synchronized
111
112 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
113 %page
114
115 Programación segura
116
117         Programación por contrato
118                 assert
119                 Invariante de representación
120                 Pre y post condiciones
121         Casos de prueba
122
123 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
124 %page
125 %nodefault
126 %center, size 7, font "standard", fore "white", vgap 100
127
128
129
130 FIN
131
132 %size 2
133 (esperaban más?)
134