Instrumente pentru dezvoltarea programelor · 2013 · Sesiune
- Profesor
- Ciprian Dobre
- Anul examenului
- 2013
- Sesiune
- Sesiune
- Serie
- C3
- Adăugat
- 20 mai 2013 de Corina Buhai
Varianta A (IDP):
1. Modelarea datelor. Modelul de analiza vs Modelul de proiectare. Sa presupunem ca aveti de implementat controllerul pentru un automat: care are produse, produsele au preturi, utilizatorii introduc monede si selecteaza produse si automatul le da rest; implementati modelul de analiza si modelul de proiectare si evidentiati diferentele.
2. La alegere:
1) Metode agile. Principii. Exemple. Cand nu ar trebui sa se foloseasa metodele agile.
2) ?
3. Refactorizare. Principii si rol in dezvoltarea unui proiect. Exemplu si diferente pentru: folosirea unei clase abstracte in locul unei interfete, folosire overloading si folosire overriding.
4. Java Reflection API. Obiectul Class. Exemplu de classloading.
IDP. Varianta B de azi:
1. Ascunderea informatiilor. Modificatori, interfete, factory pattern. Exemplu diferit de cel din curs.
2. La alegere: eXtreme programming(principii, reguli etc) vs AspectJ. Profiling si inca un exemplu de folosire.
3. Coeziune si cuplare. Rolul modularitatii. Spaghetti code
4. Aveai o clasa Smartphone si alte 3 care o extindeau: IPhone, WindowsMobilePhone, AndroidPhone. Trebuia sa dai exemplu de aplicatie (ierarhie de clase) care sa le foloseasca si sa spui ce design pattern-uri ai aplica.
Varianta C
1. Modelarea datelor. Model analiza vs proiectare. Reutilizare, mo?tenire, asocieri.
2. Forward engineering, reverse engineering, re-engineering, round-trip engineering. SAU modularitate. Concept ?i rol. Separation of concerns.
3. Refactorizare. Concept ?i rol. Aplicarea unui design pattern pe o diagrama. SAU Prezentare Facade vs. Adapter cu exemple.
4. Java Reflection API. Obiectele Method si Modifier. Exemplu de apelare dinamica a unei metode.
Varianta D.
1. Paralela între dezvoltarea orientata pe obiecte si dezvoltarea
orientata pe aspecte / sau pe servicii (+exemple)
2. La alegere:
2.1 Scrum: Rolul sedintelor Daily Scrum, Scrum of scrums, Sprint
review meeting, Sprint retrospective
2.2 Ceva cu diagrame ecran + exemplu.
3. Reflectia. Definitie. Metode. Protocoale de meta-obiecte
4. Modularitate. Concept ?i rol. Separation of concerns.
Se dadea un exemplu cu o aplicatie cu 3 componente care erau conectate la multe componente dintr-un subsistem, sa spui cum ai reproiecta tu o astfel de arhitectura (ce Design Patterns ai folosi; cred ca trebuia sa zici de Facade Pattern).
1. Modelarea datelor. Modelul de analiza vs Modelul de proiectare. Sa presupunem ca aveti de implementat controllerul pentru un automat: care are produse, produsele au preturi, utilizatorii introduc monede si selecteaza produse si automatul le da rest; implementati modelul de analiza si modelul de proiectare si evidentiati diferentele.
2. La alegere:
1) Metode agile. Principii. Exemple. Cand nu ar trebui sa se foloseasa metodele agile.
2) ?
3. Refactorizare. Principii si rol in dezvoltarea unui proiect. Exemplu si diferente pentru: folosirea unei clase abstracte in locul unei interfete, folosire overloading si folosire overriding.
4. Java Reflection API. Obiectul Class. Exemplu de classloading.
IDP. Varianta B de azi:
1. Ascunderea informatiilor. Modificatori, interfete, factory pattern. Exemplu diferit de cel din curs.
2. La alegere: eXtreme programming(principii, reguli etc) vs AspectJ. Profiling si inca un exemplu de folosire.
3. Coeziune si cuplare. Rolul modularitatii. Spaghetti code
4. Aveai o clasa Smartphone si alte 3 care o extindeau: IPhone, WindowsMobilePhone, AndroidPhone. Trebuia sa dai exemplu de aplicatie (ierarhie de clase) care sa le foloseasca si sa spui ce design pattern-uri ai aplica.
Varianta C
1. Modelarea datelor. Model analiza vs proiectare. Reutilizare, mo?tenire, asocieri.
2. Forward engineering, reverse engineering, re-engineering, round-trip engineering. SAU modularitate. Concept ?i rol. Separation of concerns.
3. Refactorizare. Concept ?i rol. Aplicarea unui design pattern pe o diagrama. SAU Prezentare Facade vs. Adapter cu exemple.
4. Java Reflection API. Obiectele Method si Modifier. Exemplu de apelare dinamica a unei metode.
Varianta D.
1. Paralela între dezvoltarea orientata pe obiecte si dezvoltarea
orientata pe aspecte / sau pe servicii (+exemple)
2. La alegere:
2.1 Scrum: Rolul sedintelor Daily Scrum, Scrum of scrums, Sprint
review meeting, Sprint retrospective
2.2 Ceva cu diagrame ecran + exemplu.
3. Reflectia. Definitie. Metode. Protocoale de meta-obiecte
4. Modularitate. Concept ?i rol. Separation of concerns.
Se dadea un exemplu cu o aplicatie cu 3 componente care erau conectate la multe componente dintr-un subsistem, sa spui cum ai reproiecta tu o astfel de arhitectura (ce Design Patterns ai folosi; cred ca trebuia sa zici de Facade Pattern).