![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#3
|
||||
|
||||
|
Existe un numero realmente pequeño de conceptos universales en la programación. De esto, el creador de PASCAL determino que:
Cita:
Basicamente, hay un pequeño conjunto de "formas" generales, que a nivel abstracto son lo mismo, pero que se *implementan* de formas diversas. Pero estas formas generales (*DATOS*) se operan de forma igual con sus correspondientes (*ALGORITMOS*)! Asi que el "truco" es pensar: Que forma de datos estoy operando, asi sabre que algoritmos le aplican. ----- Estas son las siguientes. Lease "Valores de tipo ....": P.D: Coloco el valor + el Tipo/Type - Unitarios/Scalars: 1:int, true:bool, "hello":string, cliente:Object(Customer) Se podria decir que un scalar es un caso especial de las siguientes formas de grupo: - Colecciones/Listas - Collections/List: [1, 2, 3] que pueden ser representados como: Arrays, LinkedLists, Queue, InifiniteSequences, etc Esta es la forma mas familiar - Tablas/Relaciones/Relations/DataSets/Tables: Clientes:TDataSet, Ciudades:HashMap[NombreCampo:ArrayOf...], etc Estas son un poco mas complejas, son estructuras de 2 dimensiones, y son el fundamento de la bases de datos relacionales. Se podria decir que los escalares y las listas son casos especiales de las relacionales - Grafos/Arboles/Graphs/Trees: Cuentas:BTree, Genealogia:AVTree, *XML:Tree* Y por ultimo los grafos, con su mucho mas util (osea, en la practica) caso especial de los arboles <-- LEE ESTO. Un XML es de esta familia. Es simplemente una forma de *serializar* o convertir a una forma que permita ser almacenada en disco, un arbol *cualquiera*. Puedes usar un visualizador grafico, que permite darse cuenta de esto, como: https://codebeautify.org/xmlviewer XML es *complejo*. De ser posible, es mejor usar algo como Json o similar. ----- La parte importante es que cada "forma" tiene un numero finito y corto de tareas universales que se hacen con estas. Por ejemplo un lista: - Crear - Recorrer valor a valor - Ir a la posición X (que puede derivarse de la anterior!) - Determinar si es finita o infinita (mirar sus tamaño) Y ya. Puede que adicionalmente se permita modificar la lista, pero estas tres tareas son todo lo que se necesita para hacer TODAS LAS DEMAS. Igualmente, los arboles tienen un conjunto pequeño de tareas. Entre estos, el importante es: - Recorrer el arbol: https://es.wikipedia.org/wiki/Recorrido_de_%C3%A1rboles Una vez que domines como operar un arbol de forma generica, ya veras que "pasar" a XML es "pan comido", de la misma manera que si entiendes como se opera una matriz volverla un archivo plano no es nada del otro mundo.
__________________
El malabarista. Última edición por mamcx fecha: 24-09-2017 a las 17:47:16. |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| no entiendo el por que | polaco2 | FireMonkey | 3 | 27-02-2014 18:10:56 |
| No entiendo el uso de decimales | darkerbyte | Varios | 13 | 18-05-2011 10:56:35 |
| Cable de red que no lo entiendo | Petolansa | Redes | 2 | 21-04-2009 14:55:33 |
| No lo entiendo | ramonibk | MS SQL Server | 11 | 20-05-2004 20:23:20 |
| No entiendo | rastafarey | Firebird e Interbase | 1 | 03-12-2003 17:14:30 |
|