Transcript c1-

Programare Orientata Obiect
Curs 1
Introducere
4/13/2015
Curs 1- Introducere
1
Continutul cursului
1. Introducere
4/13/2015
Curs 1 - Introducere
2
Curs 1
1. Introducere
1.1. Reguli si evaluare
1.2. Obiectivele cursului
1.3. Introducere in Java
– Limbaj POO si masina virtuala
1.4. Principii de Programare Orientata Obiect
– Ce e POO? De ce e importanta?
– Principii de baza si avantaje
1.5. Primul program in Java
1.6. Bibliografie
4/13/2015
Curs 1- Introducere
3
C1. Introducere
1.1.
4/13/2015
Curs 1 - Introducere
4
C1. Introducere
1.2 Obiectivele cursului
– Prezentarea conceptelor de baza ale POO
– Exemplificarea conceptelor POO in Java
– Prezentarea sumara a tehnologiei Java
4/13/2015
Curs 1 - Introducere
5
C1. Introducere
1.3. Introducere in Java
• Putina istorie
– De la C si C++ la Java (1995)
– Limbaj dezvoltat si intretinut de Sun Microsystems
• Initial numit Oak
• Gandit initial pentru operarea sistemelor “embedded”
• …dar s-a dovedit a fi mult mai mult de atat
– Obiectivele propuse
• Limbaj simplu, orientat-obiect,
• Distribuit, multi- threaded, si ... independent de platforma
• Robust, sigur si scalabil
4/13/2015
Curs1- Introducere
6
C1. Introducere
1.3. Introducere in Java
• Masina Virtuala
– Java este atat un limbaj compilat cat si interpretat
• Codul sursa este compilat in bytecode Java
• Acesta este interpretat de Java Virtual Machine (JVM)
• Asadar bytecode reprezinta cod masina pentru JVM
– Bytecode-ul Java poate sa ruleze pe orice JVM, pe orice
platforma
• …inclusiv telefoane si device-uri mobile
4/13/2015
Curs1- Introducere
7
C1. Introducere
1.3. Introducere in Java
4/13/2015
Curs1- Introducere
8
C1. Introducere
1.3. Introducere in Java
• Avantaje
– Portabilitate
– Numar important de clase/librarii (JVM)
– Limbaj pur orientat-obiect
• Dezavantaje
– Viteza redusa de executie (interpretare partiala a
codului) comparativ cu C/C++
4/13/2015
Curs1- Introducere
9
C1. Introducere
1.4. Principii de Programare Orientata Obiect
• Intelegerea conceptelor POO este fundamentala (!)
– Majoritatea limbajelor moderne folosesc POO
• Concepte importante:
–
–
–
–
–
Abstratizare (Clase)
Incapsulare
Agregare
Mostenire
Polimorfism
4/13/2015
Curs1- Introducere
10
C1. Introducere
1.4. Principii de Programare Orientata Obiect
• Ce e POO?
– Modelarea obiectelor din viata reala in programare
– De ce contruim aplicatii folosind POO?
• Clasificam in mod natural obiectele in tipuri.
• Folosind POO in dezvoltarea software vom obtine aplicatii mai
usor de intretinut, mai scalabile si mai usor de refolosit
– In ce mod este diferita abordarea OPP de programarea
clasica?
• Aplicatia este descompusa in tipuri de date abstracte prin
identificarea unor entitati
• Un tip de data abstract contine date si defineste modul in care
aceste date pot fi folosite
4/13/2015
Curs1- Introducere
11
C1. Introducere
1.5. Primul program in Java
– Instalare si rulare HelloWorld.java:
http://java.sun.com/docs/books/tutorial/getStarted/cupojava/in
dex.html
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
4/13/2015
Curs1- Introducere
12