Paradigmes de programació: Orientat a objectes, interacció i semàntica

Clasificado en Informática

Escrito el en catalán con un tamaño de 3,76 KB

Paradigma orientat a objectes

(objecte estat + operacions). Concepte de classe, instància, subclasses i herència. Elements fundamentals: abstracció, encapsulament, modularitat i jerarquia.

Programació concurrent

Es tracta d'un mecanisme de hardware que interromp el programa en execució i fa que la unitat de procés bifurqui el control, a una direcció donada on resideix un altre programa que tractarà l'event associat a la interrupció.

Problemes

corrupció de les dades compartides. Interbloquetjos, inanició indeterminisme (les interrupcions poden variar).

Programació paralel·la

Distribució de les dades i la repartició de la càrrega. Diferents processadors alhora.

Paradigma interacció

Comunitat d'identitats que interactuen seguint regles d'interacció. Programació per events, sist. reactiu, client/servidor. És la base de apps distribuïdes, interfícies d'usuari, programació web, etc.

Programació per events

L'arquitectura event-driven és un bucle principal amb 2 parts: la primera secció detecta o selecciona els events (events detection) la segona consisteix en el maneig (event holding) pot ser o no, orientada a objectes. No implica que sigui concurrent.

Sintaxi

Quina seqüència de caràcters constitueixen un programa legal. Defineix l'aspecte d'un programa, quins programes són il·legals. Té diferents instruments: Notació BNF -> Algol. Representació gràfica -> Pascal. La gramàtica descriu com formar instruccions a partir de paraules. Instrucció = seqüència de paraules Paraula = seqüència de caràcters.

Anàlisi

Lèxic és un programa que divideix una seqüència de caràcters en una seqüència de components sintàctics primitius o paraules. Caràcters -> Paraules

Sintàntic

Paraules -> instruccions

Semàntica

Què significa (calcula) un programa legal donat. Ajuda al programador a raonar, necessària per a implementar correctament el llenguatge. Desenvolupa eines de: Anàlisi i optimització, Depuració, Verificació, Transformació.

Estàtica

Les restriccions de sintaxi que no es poden expressar en BNF però sí comprovar en temps de compilació.

Operacional

Més antic (ALGOL) primer es defineix una màquina abstracta M i el significat de cada construcció s'expressa en termes de les accions a realitzar per la màquina. La definició semàntica operacional d'un llenguatge el fa executable. Proporciona un model per a la implementació Premisa/Conclusió

Axiomàtica

Pascal, donada una instrucció S i dos afirmacions P i Q, S és correcte si P és la precondició i Q la postcondició.

Dinàmica

Estudiar el comportament dels programes en execució.

Propietats de les semàntiques

correcció, completitud, equivalència entre programes
En la pràctica no s'usa la traducció excepte quan els llenguatges són de nivell pròxim. La interpretació no s'usa excepte en llenguatges de control de S.O o en llenguatges interactius. És comú una implementació mixta el programa es tradueix de la forma original a un altre d'execució més fàcil que s'executa per interpretació.

Intèrprets

Donen millor suport a la depuració que els compiladors, generen codi objecte més gran que els compiladors.

Llenguatges

Típicament compilats C, C++, Fortran, Ada. Interpretat LISP, ML, Smalltalk, Perl, Postscript Implementació mixta Pascal (P-code), Prolog (WAM-code), Java

Entradas relacionadas: