Πληροφορίες μαθήματος
Κωδικός
HY-540
Όνομα
Προχωρημένα θέματα Ανάπτυξης Γλωσσών Προγραμματισμού
Πρόγραμμα
Μεταπτυχιακό
Περιοχές
Πληροφοριακά Συστήματα και Αλληλεπίδραση Ανθρώπου Υπολογιστή
Αλγοριθμική και Ανάλυση Συστημάτων
Περιγραφή
Ο κύριος στόχος του μαθήματος είναι η παρουσίαση και μελέτη ειδικών προχωρημένων και μοντέρνων θεμάτων: (α) σχεδίασης και υλοποίησης γλωσσών προγραμματισμού και ολοκληρωμένων περιβαλλόντων ανάπτυξης με έμφαση σε δυναμικές γλώσσες (dynamic languages) και γλώσσες ειδικού πεδίου (domain specific languages), και (β) τεχνολογίας λογισμικού με έμφαση σε μεταπρογραμματισμό (metaprogramming), γενικό προγραμματισμό (generic programming), προχωρημένα σχεδιαστικά πρότυπα (design patterns) και αυτοπροσαρμογή (self adaptation). Σε γλώσσες προγραμματισμού έμφαση θα δοθεί στα εξής θέματα: 1. Classes and Inheritance - class-based / object-based inheritance, typed / untyped inheritance, mixin inheritance, classes / prototypes, object protocols, construction / destruction, garbage collection, finalizers. 2. Languages in a language - syntax patterns, grammar emulation, rapid design, semantics implementation. 3. Integrated development environments - circular extensibility, remote deployment, multiple languages, source level debugger, code visualizers. 4. Virtual machines - lookup caching, garbage collection, debugger linkage, instruction set design, just-in-time compilation, concurrency support.Σε τεχνολογία λογισμικού έμφαση θα δοθεί στα εξής θέματα: 1. Metaprogramming - meta-programs, compile-time meta-programming (CTMP), staged languages and runtime code generation, quasi quotes and meta-level shifting. 2. Generic programming - generic algorithms, type parameterization, concepts and constraints, concept lifting, associated types, retroactive modeling. 3. Design patterns - lazy initialization, object recycler, template method, studying patterns for missing language features like State, Decorator, Visitor and Iterator. 4. Self adaptation - autonomic systems, self management, adaptive systems, self reasoning, adaptive dynamic assembly.
ECTS
6
Προαπαιτούμενα
ΗΥ-340
Ιστοσελίδα μαθήματος
Email μαθήματος
hy540 AT csd DOT uoc DOT grΕμφάνιση email