Contribucions matemàtiques a la programació d'ordinadors

Post on 10-Feb-2017

165 views 5 download

Transcript of Contribucions matemàtiques a la programació d'ordinadors

Contribucions Matemàtiques a la Programació d'Ordinadors

MÀSTER UNIVERSITARIFORMACIÓ DEL PROFESSORAT

10697 – C1: EL CONTINGUT CIENTÍFIC DE LES MATEMÀTIQUES

PERE MIQUEL ROSSELLÓ ESPASES – FEBRER 2016

Informàtica i Matemàtiques

Els ordinadors ajudaven als matemàtics a resoldre problemes gràcies entre altres coses a la seva gran capacitat de càlcul i automatització, i la informàtica necessitava dels matemàtics i els seus càlculs, estructures i procediments o algorismes per a la construcció dels sistemes informàtics.

Llenguatges de programació

Paradigmes de programació• Un paradigma de programació és una

proposta tecnològica adoptada per una comunitat de programadors i desenvolupadors que té un nucli central inqüestionable ja que únicament tracta de resoldre un o varis problemes clarament delimitats

Paradigmes de programació

Programació imperativa• Màquina de Turing

Programació Orientada a Objectes

• Tradicionalment, les dades i el processament s'han separat en àrees diferents del disseny i la implementació del programari, la qual cosa provocà que grans desenvolupaments tenguessin problemes de fiabilitat, de manteniment, d'adaptació als canvis i escalabilitat.

• La OO es basa en la unió de les dades (variables) i el processament (funcions) en una entitat anomenada "objecte" que es pot relacionar amb altres objectes i que juntament amb característiques com l'encapsulat, el polimorfisme o l’herència, va permetre un avanç significatiu en el desenvolupament del programari

Programació declarativa• Càlcul Lambda

Programació declarativa• Els podem classificar en: els lògics com

el Prolog, els algebraics com el Maude o l'SQL i els funcionals com l'Scheme

• El gran avantatge d'aquests llenguatges és que són raonaments matemàticament, la qual cosa permet l'ús de mecanismes matemàtics per optimitzar el rendiment dels programes, a més a més de fer-los fiables, elegants i expressius.

SQL: Structured Query Language

• L’SQL és un llenguatge declaratiu d'alt nivell o de no procediment que, gracies a la seva forta base teòrica i la seva orientació al maneig de conjunts de registres, i no a registres individuals, permet una alta productivitat en codificació i la orientació a objectes.

• Fa servir àlgebra i càlcul relacional.

Model relacional

SQL: Structured Query Language

• L’SQL és el llenguatge universal pels diferents motors de bases de dades relacionals que actualment tenim al mercat. Des del DB2 d’IBM al Microsoft SQL Server i el seu germà petit l’Access, passant per l’Oracle , l’Interbase, o el MySQL que és un programari lliure.

Bases de dades relacionals

SQL: Característiques• Llenguatge de definició de dades.• Llenguatge de manipulació de dades.• Integritat: El LDD d’SQL inclou comandaments per especificar les

restriccions d’integritat que han de complir les dades emmagatzemades en la base de dades.

• Definició de vistas: El LDD inclou comandaments per definir les vistes.

• Control de transaccions: SQL tiene comandaments per especificar el començament i el final d’una transacció.

• SQL incorporat i dinàmic: Això vol dir que es poden incorporar instruccions d’SQL en llenguatges de programació como: C++, C, Java, PHP, Cobol, Pascal y Fortran.

• Autorització: El LDD inclou comandaments per especificar els drets d’’accés a les relaciones i a les vistes.

Llenguatges utilitzatsDDL, Data Design Language DML, Data Manipulation Language

Exemples de sentències

Exemple d’utilització

Exemple d’utilització

Exemple d’utilització

Exemples d’utilització• SELECT HOGAR_SP.isla, HOGAR_SP.tper• FROM HOGAR_SP;

Exemples d’utilització• SELECT ...• WHERE (((HOGAR_SP.isla)=1));

Exemples d’utilització• SELECT ...• GROUP BY HOGAR_SP.tper;

Exemples d’utilització• SELECT ...• HAVING (((HOGAR_SP.isla)=1));

Exemples d’utilització• SELECT HOGAR_SP.isla, HOGAR_SP.tper,

Count(HOGAR_SP.ID) AS CuentaDeID ...