Concepte fundamentale ale limbajelor de programare. Limbaje de programare orientate pe obiecte Curs 10 conf. dr. ing. Ciprian-Bogdan Chirila
|
|
- Stanley Steven Harper
- 5 years ago
- Views:
Transcription
1 Concepte fundamentale ale limbajelor de programare Limbaje de programare orientate pe obiecte Curs 10 conf. dr. ing. Ciprian-Bogdan Chirila
2 Cuprins programarea orientata pe obiecte mostenire legarea dinamica programarea orientata-obiect in Java aspect generale example programarea orientata-obiect in C# programarea orientata-obiect in Lisp definirea obiectelor si accesarea componentelor mostenirea de sloturi mostenirea de metode si transmiterea mesajelor
3 Introducere in POO obiecte orientare-obiect atasata la fiecare faza de dezvoltare software proiectare dezvoltare testare componente de medii software baze de date sisteme de operare IDEs
4 Introducere in POO dezvoltarea software incepe de la identificarea de obiecte din lumea reala rezolvarea problemei inseamna crearea unui model a acelei realitati modelul va contine obiecte ce interactineaza intre ele obiectele sunt modele ale obiectelor din lumea reala si a operatiunilor prin care interactioneaza
5 Introducere in POO descrierea obiectelor este facuta prin tipuri de date abstracte programarea orientata pe obiecte programul este organizat pe o multime de obiecte descries prin tipuri abstracte de date limbaje de programare bazate pe obiecte Ada, Simula 67, Modula 2
6 Programare orientata pe obiecte conceptul central este obiectul obiectul are stare proprie multime de campuri / atribute comportament multime de metode prin aplicarea metodelor starea obiectului se schimba starea obiectului este definita prin variabilele sale in mod implicit ele sunr inaccesibile din exterior intermediul metodelor accesibile din exterior obiectele interactioneaza unul cu celalalt
7 Obiectul este o instantiere a unei clase clasa este un constructor de tip ce descrie variabilele si metodele obiectelor instantiate prin acea clasa programarea claselor este un concept fundamental in programarea bazata pe obiecte programarea orientata pe obiecte are doua trasaturi in plus mostenirea legarea dinamica
8 Mostenirea este trasatura ce permite definirea de clase noi ce iau variabilele de stare functiile ce dau comportamentul clasa noua este numita subclasa a celei originale clasa veche este numita superclasa pentru clasa nou definita
9 Mostenirea permite definirea unei clase fara a o scrie de la zero aceasta facilitate este valida daca exista deja inca o clasa cu caracteristici comune este posibil pentru o superclasa sa aibe atribute noi metode noi attribute redefinite metode redefinite conceptul este numite specializare
10 Exemplu o stiva ce implementeaza operatia de adaugare pentru o pereche de elemente clasa noua va fi implementata ca o extensie a clasei stiva definita in cursul anterior
11 Exemplu stack_spec type stack_spec(nr_max:integer) extends stack=class operations push_2; procedure push_2(x,y:integer); begin push(x); push(y); end; begin end;
12 Exemplu stack_spec var st : stack_spec; st := new stack_spec(150); st.push(15); st.push_2(155,25);
13 Exemplu stack_spec type stack_spec_spec(nr_max:integer) extends stack_spec=class operations under_top,top,pop; function top():integer; begin if not empty() then return tab_st[ind-1]; else return 1; end if; end;
14 Exemplu stack_spec function pop():integer; begin if not empty() then ind:=ind-1; return tab_st[ind]; else return 1; end if; end;
15 Exemplu stack_spec function under_top():integer; begin if not empty_spec() then return tab_st[ind-2]; else return 1; end if; end;
16 Exemplu stack_spec function empty_spec():boolean; begin return ind <= 2; end;
17 Exemplu stack_spec var st1 : stack = new stack(100); st2 : stack_spec = new stack_spec(50); st3 : stack_spec_spec = new stack_spec_spec(80); i: integer; i := st1.under_top(); --ilegal i := st2.under_top(); --ilegal i := st3.under_top();
18 Exemplu stack_spec st1.push_2(150,12); --ilegal st2.push_2(11,110); st3.push_2(5,17); i := st1.top(); --if the stack is empty, an exception is generated i := st2.top(); --if the stack is empty, an exception is generated i := st3.top(); --if the stack is empty, -1 is returned
19 Legarea dinamica st : stack; i : integer; with_exception : boolean; if with_exception then st:=new stack(100); else st:=new stack_spec_spec(100); end if; i:=st.top();
20 Programarea orientataobiect in Java proiectul a fost lansat la compania Sun in 1990 un limbaj de programare pentru dispositive electronice domestice scopul a fost acela de a face programele sa traiasca pe diferite arhitecturi hardware din 1993 incepand cu dezvoltarea aplicatiilor web Java a fost proiectat astfel incat aplicatiile sa fie executate pe orice calculator conectat la Internet indifferent de arhitectura sa
21 Limbajul de programare Java a preluat multa sintaxa de la C si de la C++ unele trasaturi au fost eliminate din motive de securitate au fost eliminati pointerii a fost eliminata dealocarea explicita a memoriei a fost eliminata mostenirea multipla portabilitatea este bazata pe compilatorul de Java ce genereaza byte code codul binary ce poate fi executat pe orice masina avand o masina virtuala ruland peste ea
22 Comparatii cu alte limbaje de programare inspirat mai mult din SmallTalk si Eiffel mai putin din C++ SmallTalk este un limbaj de programare orientat obiect extrem opereaza numai cu obiecte chiar si pentru tipurile de baza un intreg este un obiect operatiile intre obiecte sunt transmise ca mesaje
23 Comparatii cu alte limbaje de programare C++ este un limbaj de programare orientat spre structuri de date echipat ulterior cu trasaturi orientate-obiect in Java toate entitatile sunt obiecte exceptand tipurile primitive (integer, real, character, boolean) datele pot fi accesate direct prin nume obiectele pot fi accesate indirect prin referinte must be created explicitly by new operations trebuie sa fie create explicit prin operatii new
24 Bibliotecile Java multime bogata de clase predefinite dezvoltare rapida a aplicatiilor set de instrumente de ferestre ferestre ferestre dialog grafica animate: AWT, Swing, JavaFX conexiuni de retea evenimente tratate de ascutatorii de mouse mostenirea si refefinirea permit adaptarea caselor spre necesitati specifice
25 Exemplu Java un program Java este un set de clase una din ele trebuie sa contina metoda main necesara ca punct de pornire al programului pentru applet-uri nu exista metoda main nevoie de o instanta a clasei java.applet.applet la applet subclasa trebuie sa contina metodele init() si paint() trebuie sa fie inclusa intr-o pagina web ruleaza intr-un browser
26 Exemplu Java public class Circle protected double x, y, r; public static int num_circles = 0; public Circle(double x, double y, double r) this.x=x; this.y=y; this.r=r; num_circles++; }
27 Exemplu Java public Circle(double r) this(0.0, 0.0, r); } public Circle(Circle c) this(c.x, c.y, c.r); }
28 Exemplu Java public Circle() this(0.0, 0.0, 1.0); }
29 Exemplu Java public double circumference() return 2* *r; } public double area() return *r*r; }
30 Exemplu Java import java.awt.*; public class GraphicCircle extends Circle protected Color outline, fill; public GraphicCircle(double x, double y, double r, Color outline, Color fill) } super(x, y, r); this.outline=outline; this.fill=fill;
31 Exemplu Java public GraphicCircle(Color outline, Color fill) this.outline=outline; this.fill=fill; } } public void draw(drawwindow dw) dw.drawcircle(x,y,r,outline,fill); }
32 Exemplu Java import java.awt.*; public class GraphicCircleSmart extends GraphicCircle public GraphicCircleSmart(double x, double y, double r,color outline, Color fill) } super(x, y, r,outline,fill); public GraphicCircleSmart(Color outline, Color fill) super(outline,fill); }
33 Exemplu Java public void draw(drawwindow dw) super.draw(dw); dw.drawline(x-r, y, x+r, y, outline); dw.drawline(x, y+r, x, y-r, outline); }
34 Exemplu Java } public void put_outline(color outline) this.outline=outline; } public void put_fill(color fill) this.fill=fill; }
35 Exemplu Java public class DrawWindow public void drawcircle(double x, double y, double r,color outline, Color fill) } public void drawline(double x1, double y1, double x2,double y2, Color outline) } }
36 Exemplu Java import java.awt.* public class the_main public static void main (String args[]) Color foroutline=new Color( ); Color forfill=new Color( ); DrawWindow thefirstwd=new DrawWindow( ); DrawWindow thesecondwd=new DrawWindow( );
37 Exemplu Java Color cl; double total_area=0; GraphicCircle tabcircle[]=new GraphicCircle[4]; DrawWindow tabwindow[]=new DrawWindow[4]; tabcircle[0]=new GraphicCircle(1.0, 1.0, 1.0, foroutline, forfill); tabwindow[0]=thefirstwd;
38 Exemplu Java tabcircle[1]=new GraphicCircleSmart(forOutline,forFill); tabwindow[1]=thesecondwd; tabcircle[2]=new GraphicCircle(forOutline,forFill); tabwindow[2]=thefirstwd;
39 Exemplu Java tabcircle[3]= new GraphicCircleSmart(5.0, 7.0, 3.0, foroutline,forfill); tabwindow[3]=thesecondtwd;
40 Exemplu Java for(init I=0; I<tabCircle.length; I++) } total_area+=tabcircle[i].area(); tabcircle[i].draw(tabwindow[i]);
41 Exemplu Java cl=new Color ( ); tabcircle[1].put_outline(cl); //illegal ((GraphicCircleSmart)tabCircle[1]).put_online(cl); tabcircle[1].draw(thefirstwd);
42 Comentarii la exemplul Java exemplul este o aplicatie Java clasa Circle implementeaza atributele cercului metodele circumferinta arie
43 Constructori 3 constructori metode avand acelasi nume cu clasa se executa cand este creat un obiect activarea unuia dintre ei se face pe baza de semnatura daca nu este definit niciunul atunci exista unul implicit fara parametri cu corp vid are rol de alocare de memorie
44 Variabile si metode modificatorii se aplica la membrii claselor variabile si metode modificatorul private vizibil doar in clasa modificatorul public vizibil de oriunde
45 Variabile si metode atribute ne-statice (dinamice) asociate cu obiectele metodele sunt la fel pentru toate obiectele, dar datele nu sunt membrii statici asociati claselor nu sunt asociati obiectelor!!! num_circles numara instantierile claselor
46 Mostenirea clasa GraphicCircle este subclasa a clasei Circle extinde metoda draw() metoda deseneaza un cerc intr-o fereastra data ca parametru fereastra este modelata de clasa DrawWindow culorile sunt modelate de java.awt.color awt Abstract Windowing Toolkit Swing, SWT - Standard Widget Toolkit, JavaFX
47 Mostenirea clasa GraphicCircleSmart este subclasa a clasei GraphicCircle extinde clasa cu put_outline si put_fill redefineste metoda drawing de desenare clasa the_main contine metoda main cele doua tablouri prezente sunt tratate ca si obiecte dimensiunea tabloului este accesata prin campul numit length la crearea tabloului fiecare element este null tabloul tine doar referinte la obiecte
48 Programarea orientataobiect in C# creat de compania Microsoft pentru platforma.net ca si Java este derivat din C si C++ conceptul de portabilitate este luat de la Java bazat pe limbajul MSIL Microsoft intermediate language cadrul de lucru.net este masina virtuala programarea se face in mai multe limbaje de programare fiecare partea a programului poate fi scrisa in cel mai expresiv limbaj de programare integrarea completa cu platforma Windows
49 Programarea orientataobiect in C# programele C# incep cu functia Main sistemele C# contin clase clasele sunt organizate in ierarhii pe baza de mostenire legat de mostenire superclasa sau clasa de baza subclasa sau clasa derivata mostenirea multipla nu este permisa o clasa nu poate avea mai multe superclase
50 Exemplu de cod C# using System; // A class representing bi-dimensional objects. class Shape2D public double width; public double height; public void showdim() Console.WriteLine("Width and height are " + width +" and " + height); } }
51 Exemplu de cod C# // class Triangle derives from class Shape2D. class Triangle : Shape2D public string typeoftriangle; public double area() return width * height / 2; } public void showtype () Console.WriteLine("Triangle is " + typeoftriangle); } }
52 Exemplu de cod C# class Shapes public static void Main() Triangle t1 = new Triangle(); t1.width = 4.0; t1.height = 4.0; t1.typeoftriangle = "isosceles";
53 Exemplu de cod C# Triangle t2 = new Triangle(); t2.width = 8.0; t2.height = 12.0; t2.typeoftriangle = "rectangular";
54 Exemplu de cod C# ConsoleWriteln("Information about t1: "); t1.showtype(); t1.showdim() ;
55 Exemplu de cod C# ConsoleWriteLine("Triangle area is " + t1.aria()); ConsoleWriteLine(); } ConsoleWriteln("Information about t2: "); t2.showtype(); t2.showdim() ; ConsoleWriteLine("Triangle area is " + t2.aria()); }
56 Comentarii Clasa Shape2D defineste atributele unei forme generice Square Rectangle Triangle Clasa Triangle este derivata din Shape2D un atribut a fost adaugat: typeoftriangle doua metode au fost adaugate: area(), showtype() este capabila de a referi atributele de tip Shape2D ca fiind proprii
57 Bibliografie Horia Ciocarlie The programming language universe, second edition, Timisoara, 2013 Carlo Ghezzi, Mehdi Jarayeri Programming Languages, John Wiley, Ellis Horrowitz Fundamentals of programming languages, Computer Science Press, Donald Knuth The art of computer programming, 2002.
Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte
Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte Probleme rezolvate: Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Programul urmator (LotoConstante.java)
More informationTehnici avansate de programare
Tehnici avansate de programare Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Adnotarea elementelor Tehnici avansate de programare p.1/1 Cuprins Ce sunt
More informationIngineria Sistemelor de Programare
Ingineria Sistemelor de Programare Interfete grafice (Swing) mihai.hulea@aut.utcluj.ro 2017 Scurt istoric AWT: Abstract Windowing Toolkit import java.awt.* Swing Java FX Swing Demo Libraria Swing Swing
More informationBibliografie. * * *, Java Development Kit ndex.html
Bibliografie * * *, Java Development Kit http://www.oracle.com/technetwork/java/javase/downloads/i ndex.html Java programming: from problem analysis la program design, D.S. Malik, 2010 Java de la 0 la
More informationLaborator 3 Java. Introducere in programarea vizuala
Laborator 3 Java Introducere in programarea vizuala 1. Pachetele AWT si Swing. 2. Ferestre 3.1. Introduceti urmatorul program JAVA: public class Pv public static void main(string args[ ]) JFrame fer=new
More informationIngineria Sistemelor de Programare. UML Diagrama Cazurilor de Utilizare 2016
Ingineria Sistemelor de Programare UML Diagrama Cazurilor de Utilizare mihai.hulea@aut.utcluj.ro 2016 Introducere UML UML UML = Unified Modeling Language Dezvoltat in cadrul Object Management Group In
More informationFişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct.
Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct. Avantajul lucrului cu fisiere este evident, datele rezultate în urma
More informationBirotică Profesională. Cursul 12
Birotică Profesională Cursul 12 Sumar Visual Basic for Applications (VBA) Tipuri de date Structuri de control Funcţii si proceduri Obiecte si colecţii VBA Mediu de programare destinat in special realizării
More informationUtilizarea formularelor in HTML
Utilizarea formularelor in HTML Formulare Un formular este constituit din elemente speciale, denumite elemente de control (controls), cum ar fi butoane radio, butoane de validare, câmpuri text, butoane
More informationProgramare Orientata spre Obiecte (Object-Oriented Programming)
UPB - Facultatea ETTI - Curs POO - an II - seria E 2011-2012 Programare Orientata spre Obiecte (Object-Oriented Programming) a.k.a. Programare Obiect-Orientata Titular curs: Eduard-Cristian Popovici Suport
More informationMetode avansate de programare
Metode avansate de programare Informatică Română, 2017-2018, Curs 1 Noțiuni introductive If builders built houses the way programmers built programs, first woodpecker to come along would destroy civilization.
More informationProiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP
Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP De ce ebgp? De ce ibgp?
More informationLaborator 5 Instrucțiunile repetitive
Laborator 5 Instrucțiunile repetitive Instrucțiunea for Instrucțiunea for permite repetarea unei secvențe de instrucțiuni atâta timp cât o condiție este îndeplinita. În plus, oferă posibilitatea execuției
More informationDynamic binding vs static binding. Programare Orientată pe Obiecte
Dynamic binding vs static binding Programare Orientată pe Obiecte Ce va afişa următorul program? class TestEgal{ public boolean equals ( TestEgal other ) { System.out.println( "In equals din TestEgal"
More informationAlocarea memoriei în C sub Linux
Costel Aldea Alocarea memoriei în C sub Linux Sunt trei funcţii C standard care se pot folosi pentru a aloca memorie: malloc(), calloc(), si realloc(). Prototipurile lor, după cum sunt definite în stdlib.h:
More informationCurs 5. Programare Paralela si Distribuita. Forme de sincronizare - Java. Curs 5 - PPD 1
Curs 5 Programare Paralela si Distribuita Forme de sincronizare - Java Curs 5 - PPD 1 Monitor in Java Fiecare obiect din Java are un mutex care poate fi blocat sau deblocat in blocurile sincronizate: Bloc
More informationJavaScript - Intorducere. Și nu numai...
JavaScript - Intorducere Și nu numai... Ce facem azi Nu o sa va vină să credeți. Pe foaia albă vă scrieți numele și prenumele ȘI Povestim despre JavaScript Exemple de aplicare discutii și surprize mici
More informationOverview of the OOA Process...
Object-oriented analysis (OOA)! What are the relevant objects? How do they relate to one another? Object-Oriented Analysis and Modeling! How do we specify/model a problem so that we can create an effective
More informationRezolvare fişă de laborator Java Iniţiere în limbajul Java
Rezolvare fişă de laborator Java Iniţiere în limbajul Java Ex 1: Scrie următorul program Java folosind JCreator apoi încercă să-l înţelegi. public class primulprg System.out.println("Acesta este primul
More informationLenuta Alboaie Reţele de calculatoare
Programarea in retea - OOB- Lenuta Alboaie adria@info.uaic.ro 1 Cuprins Trimiterea si receptarea datelor in regim 2 Ideea: in timpul unei conexiuni cind sunt transmise date ( inband data ), si daca la
More informationProgramare orientata-obiect
Programare orientata-obiect Virginia Niculescu vniculescu@cs.ubbcluj.ro www.cs.ubbcluj.ro/~vniculescu 1 Structura cursului Programare orientata-obiect paradigma de programare notiuni de baza concepte principii
More informationLaborator 1 Tehnologia Java
Laborator 1 Tehnologia Java Tehnologia Java este alcatuita dintr-un conglomerat de concepte dintre care amintim: limbajul de programare Java dezvoltat pe baza paradigmei obiect orientate; platforma de
More informationCONFIGURAREA UNUI SERVER IRC IN LINUX. Bica Bogdan *
CONFIGURAREA UNUI SERVER IRC IN LINUX Bica Bogdan * In this exemple i show how to configure an irc server based on ircd dameon named ircu.this is the main file name ircd.conf and the most important.configure
More informationProgramare Orientată pe Obiecte în limbajul Java
Curs 4 Programare Orientată pe Obiecte în limbajul Java Programare Orientată pe Obiecte Cuprins Tipul enumerare Clase imbricate Clase şi metode abstracte Excepţii Tipuri de date enumerare enum public class
More informationThe Reuse of the Components on the Java 2 Enterprise Edition Platform
140 The Reuse of the Components on the Java 2 Enterprise Edition Platform Lect.dr. Marian CRISTESCU Catedra de Informatică Economică, Universitatea "Lucian Blaga" Sibiu Reusable components are simply pre-built
More informationProgramare orientată pe obiecte. 1. Pachete (packages) 2. Moştenire
Programare orientată pe obiecte 1. Pachete (packages) 2. Moştenire Organizarea claselor înrudite în pachete Pachet (package): set de clase înrudite Pentru a pune o clasă într-un pachet, trebuie scrisă
More information7. Exploatarea vulnerabilităńilor
7. Exploatarea vulnerabilităńilor Exploit-uri de securitate Program special conceput pentru a exploata vulnerabilităńile de securitate existente pe sistemele de calcul cu scopul compromiterii securităńii
More information1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului n.
Observatii: Codul de mai jos a fost realizat si testat pe pagina online: https://www.tutorialspoint.com/compile_pascal_online.php 1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului
More informationInginerie Software pentru Comunicatii (ISC / RST)
UPB - Facultatea ETTI - Curs ISC - an IV Specializarea RST 2009-2010 Inginerie Software pentru Comunicatii (ISC / RST) Titular curs: Eduard-Cristian Popovici Suport curs: http://discipline.elcom.pub.ro/isc/
More informationTehnologii Java. Curs - Cristian Frăsinaru. Facultatea de Informatică Universitatea Al. I. Cuza Iaşi.
Tehnologii Java Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Introducere Tehnologii Java p.1/2 Tehnologii Java p.2/2 Informatii despre curs Scopul
More informationProgramare avansată Introducere
Programare avansată Introducere Desfășurarea cursului Scopul Motivația Modul de lucru Platforma de programare Documentația Evaluarea Laborator: probleme, proiecte, referate ușor Examen: test scris greu
More information1. Clase. Abstractizarea datelor
1. Clase. Abstractizarea datelor Vom face în cursul de Programarea calculatoarelor şi limbaje de programare II o introducere în programarea orientată pe obiecte, cu aplicaţii în limbajul de programare
More informationPOO. Observer Pattern (prezentare bazata pe GoF)
POO Observer Pattern (prezentare bazata pe GoF) 1 Observator: :intentie Defineste o relatie de dependenta 1..* intre obiecte astfel incat cand un obiect isi schimba starea, toti dependentii lui sunt notificati
More informationScop: Crearea unei aplicatii ce exemplifica paternul MVVM. In plus se creaza si o comanda in WPF.
Laborator MVVM Scop: Crearea unei aplicatii ce exemplifica paternul MVVM. In plus se creaza si o comanda in WPF. Clasele implicate in acest pattern sunt date in figura de mai jos. Mai multe informatii
More information13. Java si XML Fisiere XML în aplicatii Java... XML si orientarea pe obiecte... Utilizarea unui parser SAX... Utilizarea unui parser DOM...
CUPRINS 1. Java ca limbaj de programare cu obiecte Diferente între limbajele Java si C................................... Tipuri clasã si tipuri referintã....................................... Structura
More informationAppOBP > PrOBPT > class Timp import java.text.decimalformat;
AppOBP > PrOBPT > class Timp import java.text.decimalformat; public class Timp { private int hour; // 0-23 private int minute; // 0-59 private int second; // 0-59 // constructorul Timp initializeaza fiecare
More informationCurs practic de Java
Curs practic de Java Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Internaţionalizarea Curs practic de Java p.1/1 Cuprins Introducere Clasa Locale Formatarea
More informationCurs 4 Programare Orientată pe Obiecte în limbajul Java. Programare Orientată pe Obiecte
Curs 4 Programare Orientată pe Obiecte în limbajul Java Programare Orientată pe Obiecte Cuprins Exemplu clasa Complex Variabie şi metode de instanţă/clasă Blocuri statice Clasa Object Polimorfism Tipul
More informationSisteme de operare 1. Sisteme de operare. Roluri și descriere generală
Platformăde e-learning și curriculăe-content pentru Sisteme de operare 1. Sisteme de operare. Roluri și descriere generală De ce SO? sunt peste tot (PC, servere, smartphones) administrarea eficientă a
More informationLaborator 5 Sisteme Lindenmayer. Temă
Laborator 5 Sisteme Lindenmayer. Temă 1. Parcurgerea unui pătrat. Următorul L-sistem Alfabet=F,+,-; Producţii= F -> F-F+F+F+F-F-F-F+F, + -> +, - -> - Axioma= F generează, cu interpretările standard (F
More informationRezolvarea exceptiilor
PL/SQL SECTIUNE 6 Rezolvarea exceptiilor Entering an incorrect username and/or password Forgetting to include the @ in an email address Entering a credit card number incorrectly Entering an expiration
More informationAplicatii JAVA. JAVA Interfata grafica AWT (partea II) # 5. Adrian Runceanu
Aplicatii JAVA # 5 JAVA Interfata grafica AWT (partea II) 2017 Adrian Runceanu www.runceanu.ro/adrian Curs 5 Interfata grafica AWT (Abstract Window Toolkit ) (partea a II-a) 24.03.2017 Curs - Aplicatii
More informationOperatori. Comentarii. Curs 1
Operatori atribuirea: = operatori matematici: +, -, *, /, % Este permisa notatia prescurtata de forma lval op= rval (ex: n += 2) Exista operatorii pentru autoincrementare si autodecrementare (post si pre)
More informationMoștenire Polimorfism Metode pur virtuale, Clase abstracte Operații de intrări ieșiri în C++ Fișiere
Curs 7 Moștenire, Polimorfism Moștenire Polimorfism Metode pur virtuale, Clase abstracte Operații de intrări ieșiri în C++ Fișiere Curs 6 Gestiunea memoriei in C++ Alocare dinamica. Destructor. RAII. Rule
More informationProgramare orientată pe obiecte. 1. Clase şi obiecte (continuare) 2. Tablouri
Programare orientată pe obiecte 1. Clase şi obiecte (continuare) 2. Tablouri // Autor : Fred Swartz import javax.swing.*; public class KmToMiles { Metode: cum funcţionează un apel private static double
More informationProgramarea Aplicațiilor Windows curs 1
Programarea Aplicațiilor Windows curs 1 Lect. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică Academia de Studii Economice București cristian.ciurea@ie.ase.ro 1 Agenda 1. Structură
More informationProgramarea Orientată pe Obiecte Teorie Subiecte pentru proba scrisă a examenului de licență
Programarea Orientată pe Obiecte Teorie Subiecte pentru proba scrisă a examenului de licență 1. Precizați dacă afirmația care urmează este corectă ori incorectă și motivați răspunsul în 4-5 fraze. (Notă:
More informationLaborator 3 Aplicatii Java
Laborator 3 Aplicatii Java 1. Programarea vizuala Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Fisierul se numeste testschimbareculori.java: import java.awt.*; import java.awt.event.*;
More informationCurs 8. Programare orientată obiect în Delphi (II)
Programare Delphi Curs 8 Programare orientată obiect în Delphi (II) http://docwiki.embarcadero.com/radstudio/en/classes_and_objects_index 1. Deriea claselor. După cum am văzut, în Delphi este definită
More informationOverview of the OOA Process...
Object-Oriented Analysis and Modeling Object-oriented analysis (OOA) What are the relevant objects? How do they relate to one another? How do we specify/model a problem so that we can create an effective
More informationUniversitatea Constantin Brâncuşi din Târgu-Jiu. Aplicații JAVA. Lect.dr. Adrian Runceanu
Universitatea Constantin Brâncuşi din Târgu-Jiu Aplicații JAVA Lect.dr. Adrian Runceanu Curs 4 Applet-uri în Java 10.03.2016 Curs - Aplicatii Java 2 Applet-uri în Java 1. Ce este un applet? 2. Crearea
More informationSISTEME DE OPERARE (SO) CURS 10. Asist. Univ. Dr. Mihai Stancu. Virtualizare
SISTEME DE OPERARE (SO) CURS 10 Asist. Univ. Dr. Mihai Stancu Virtualizare S u p o r t d e c u r s Virtual Machines Versatile Platforms for Systems and Processes Capitolul 1 Introduction to Virtual Machines
More informationCurs 3 Clase și obiecte. Limbajul de programare C++ Programare orientată obiect
Curs 3 Clase și obiecte Limbajul de programare C++ Programare orientată obiect Limbajul de programare C++ Urmașul limbajului C apărut în anii 80, dezvoltat de Bjarne Stroustrup Bibliografie: B. Stroustup,
More informationAplicații JAVA. Lect.dr. Adrian Runceanu
Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Aplicații JAVA Lect.dr. Adrian Runceanu Curs 6 Colecții în Java 01.04.2015 Curs - Aplicatii
More informationError! Bookmark not defined.
SEMINAR 06 CONTENTS Enuntul Problemei... 1 Repository... 2 Memory... 2 XML... 3 GUI... 4 Forma Selectie... 4 Forma Programator... 5 Forma Tester... 6 Java... 7 Mecanismul de Transmitere al Evenimentelor
More informationGestionarea memoriei dinamice. Tablouri şi şiruri de caractere. Conversii de date. Operaţii de intrare / ieşire
Lucrarea 3 Gestionarea memoriei dinamice. Tablouri şi şiruri de caractere. Conversii de date. Operaţii de intrare / ieşire Cuprins Simbolul this...1 Colectorul de reziduuri (Garbage Collector)...4 Transmiterea
More informationCe este o clasă? Programare orientată pe obiecte. Ce este o clasă? Clase
Ce este o clasă? Programare orientată pe obiecte 1. Recapitulare 2. InformaŃii despre examen O clasă este în primul rând o descriere a obiectelor (instanńelor), clasei respective Clasa conńine unul sau
More informationLaborator 4 Java Colectii
Laborator 4 Java Colectii Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Urmatorul exemplu foloseste diferite clase de colectii si adauga cate un element in aceste colectii import
More informationProgramarea Calculatoarelor Curs 4. Iulian Năstac
Programarea Calculatoarelor Curs 4 Iulian Năstac Recapitulare din cursul precedent Sisteme de operare Pentru ca un calculator să poată fi folosit trebuie să existe iniţial un soft de bază care să permită
More informationÎmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect).
Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect). Supraîncărcarea numelui de funcţii (overloading) In C nu este permisa
More informationC13. INTERFATA PARALELA PROGRAMABILA (PPI) I8255A (PIO)
C13. INTERFATA PARALELA PROGRAMABILA (PPI) I8255A (PIO) 1.Descriere PIO 2. Arhitectura PIO 3. Programare PIO 4. PIO in PC 5. Aplicatii http://www.advancedmsinc.com/iocards/8255.htm http://www.eisti.fr/~ga/phy/iitr/ii05/tr.pdf
More informationProgramare avansată Tipuri generice Colecții de date
Programare avansată Tipuri generice Colecții de date Problema Construiți o structură de date: o stivă de date, o listă înlănțuită, un vector, un graf, un arbore, etc. Care este tipul de date pe care îl
More informationSerializarea. Transformarea datelor în secvenţe de octeţi astfel încât să poată fi transmise pe un flux de ieşire. Deserializare - procesul invers
Serializarea Transformarea datelor în secvenţe de octeţi astfel încât să poată fi transmise pe un flux de ieşire Deserializare - procesul invers Scopul serializării transmiterea datelor la distanţă. RMI
More informationFisa de lucru: Studiul componentelor calculatorului
11.3.7 Fisa de lucru: Studiul componentelor calculatorului Imprimati si completati aceasta activitate. In aceasta activitate veti folosi Internet-ul, un ziar, sau un magazin local pentru a culege informatii
More informationProgramarea orientata pe obiecte. Curs 2 addon -Clase si obiecte in Java -Interfetele ca abstractizare
Programarea orientata pe obiecte Curs 2 addon -Clase si obiecte in Java -Interfetele ca abstractizare 1 Clase si obiecte ex din lumea reala Card bancar: Concept abstract Asigura functionalitate: verifica
More informationQuartz. ArcGIS Runtime SDK for Android
Quartz ArcGIS Runtime SDK for Android Quartz (beta) Ce ofera? Utilizarea OpenGL controale si functionalitati de performanta inalta; utilizarea de Vector Tile Package utilizarea Map Package; biblioteci
More informationLucrarea nr.8 CLASE IMBRICATE
Lucrarea nr.8 CLASE IMBRICATE În C++ se poate include declaraţia unei clase în interiorul altei clase. Clasa declarată în interiorul alteia se numeşte clasă imbricată (nested class) şi permite evitarea
More informationFUNDAMENTELE PROGRAMĂRII
UNIVERSIE BBEŞ-BOLYI acultatea de Matematică şi Informatică UNMENELE ROGRMĂRII ipuri definite de utilizator Laura ioşan 2 Conținut curs rogramming in the large Introducere în procesul de dezvoltare software
More informationDesign patterns. Conf. univ. dr. Catalin Boja
Design patterns Conf. univ. dr. Catalin Boja catalin.boja@ie.ase.ro Calitate cod sursă Principii urmărite în scrierea codului: Ușor de citit/înțeles clar Ușor de modificat structurat Ușor de reutilizat
More informationLaborator 2 - Introducere in limbajul Java.Pachete.Interfete.Tratarea exceptiilor. Pachete
Laborator 2 - Introducere in limbajul Java.Pachete.Interfete.Tratarea exceptiilor. 1. Pachete 2. Interfete 3. Tratarea exceptiilor Pachete Crearea unui pachet Folosirea membrilor unui pachet Importul unei
More informationProgramarea calculatoarelor
Programarea calculatoarelor #3 C++ Elemente introductive ale limbajului C++ 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 3 Elemente introductive ale limbajului C++ 02.11.2016 Curs - Programarea calculatoarelor
More informationCapitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.
Capitolul 4 Fisiere de date si Tablespace 1 Continut capitol Ca structura fizica, baza de date contine fisiere de control, de date si de Redo log. Ca structura logica o baza de date se compune din: Tablespace
More informationSe cer 2 variante: una cu implementarea statica si a doua cu implementarea dinamica a structurilor de date necesare. Comentati variantele.
Lucrarea 1 SDA 03.04.2017 Sa se realizeze urmatoarele programe, in limbaj C: 1. Se primesc de la intrarea standard: un numar k si un sir infinit de numere naturale a i. Se afiseaza la iesirea standard,
More informationProgramare orientată pe obiecte
Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie şi Dezvoltare Durabilă Departamentul de Automatică, Energie, Mediuşi Dezvoltare Durabilă Programare orientată pe obiecte Lect.dr.
More informationAplicatii JAVA. JAVA Excepții în Java # 7. Adrian Runceanu
Aplicatii JAVA # 7 JAVA Excepții în Java 2017 Adrian Runceanu www.runceanu.ro/adrian Curs 7 Excepții în Java 24.03.2017 Curs - Aplicatii Java 2 Excepții în Java 1. Ce sunt excepțiile? 2. Avantajele excepțiilor
More informationLaboratorul 6 Mediul de dezvoltare Eclipse
Laboratorul 6 Mediul de dezvoltare Eclipse Ce ne propunem astăzi? În laboratorul de astăzi ne propunem familiarizarea cu mediul de dezvoltare Eclipse, crearea unei aplicańii simple de tip Hello World,
More informationLaborator 10. SGBD-ul MySQL (partea I)
Laborator 10 SGBD-ul MySQL (partea I) 1. Introduceţi următoarea secvenţă PHP: $dbh = mysql_connect("localhost", "Costica", "mypass") or die("unable to connect to MySQL"); $selectdb = mysql_select_db('lucrudb');
More informationAplicații JAVA. Lect.dr. Adrian Runceanu
Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Aplicații JAVA Lect.dr. Adrian Runceanu Curs 8 Interfata grafica AWT 22.04.2015 Curs
More informationFisiere text in Java.
Fisiere text in Java. Doru Anastasiu Popescu Prelucrarea fisierelor text in Java Aspecte teoretice: http://cursuri.cs.pub.ro/~poo/wiki/index.php/input/output http://upm.ro/intranet/ecalin/cd_educational/cd/javac/cap3.htm
More informationIntroducere in AutoCAD 3D
Introducere in AutoCAD 3D Eu obisnuiesc sa spun ca diferenta dintre AutoCAD 2D si AutoCAD 3D este doar de 15 minute deoarece totul se reduce doar la a intelege cum functioneaza acest 3D si sistemul de
More informationTehnologii pentru aplicatii distribuite pe Internet
Revista Informatica Economica, nr. 9/1999 33 Tehnologii pentru aplicatii distribuite pe Internet Asist. Carmen STANCIU Catedra de Informatica Economica, A.S.E. Bucuresti Crearea aplicatiilor distribuite
More informationPlatformă de e-learning și curriculă e-content pentru învățământul superior tehnic
Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Transmisia datelor multimedia in retele de calculatoare 28. O scurta istorie a compresiei audio: MPEG-1, MPEG-2, MPEG-
More informationCurs 10 PPOO. Conf. univ. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică
Curs 10 PPOO Conf. univ. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică cristian.ciurea@ie.ase.ro 1 Agenda Spring Framework Swing widgets JUnit FindBugs 2 Spring Framework Spring
More informationStructuri versus clase în C#
Structuri versus clase în C# În limbajul C++, după cum se ştie, diferenţele dintre clase şi structuri sunt nesemnificative (constau numai în modurile implicite de acces public/privat), dar această afirmaţie
More informationProgramul 1.1. Salut.java
1. COMPENDIU JAVA Prezenta lucrare presupune că cititorul deţine un nivel minimal de cunoştinţe despre programarea în limbajul Java. Există deja suficientă literatură legată de programarea în Java [1,
More informationCunoașterea și înțelegerea conceptelor specifice programării orientate obiect. Abilități de programare în limbajele de programare C și C++
Programare orientată obiect Obiective Cunoașterea și înțelegerea conceptelor specifice programării orientate obiect Abilități de programare în limbajele de programare C și C++ Obiectivele specifice: Scrierea
More informationUnitati fundamentale de proiectare in VHDL (Design units) Capitolul 2
Unitati fundamentale de proiectare in VHDL (Design units) Capitolul 2 Design units Un sistem digital poate fi modelat in VHDL ca o entitate (entity): entitatea este unitatea fundamentala a unui proiect
More informationOperații de intrare/ieșire în C++
Operații I/O în limbajul C++ Operații de intrare/ieșire în C++ Mihai Gabroveanu Limbajul C++ moștenește de la C funcțiile de I/O Dezavantaj: permit manipularea doar a tipurilor de bază Limbajul C++ introduce
More informationIntroducere in Maven. Information Type: Working Standard, Disclosure Range:, Information Owner: mihai.hulea, NTT DATA Romania
Introducere in Maven Build management tools Java build tools: Maven Gradle Ant + Ivy Build tools are programs that automate the creation of executable applications from source code. Building incorporates
More informationMedii vizuale de programare. Lector Lucian Sasu, Ph.D.
Medii vizuale de programare Lector Lucian Sasu, Ph.D. June 1, 2014 Cuprins 1 Platforma Microsoft.NET 9 1.1 Prezentare generală........................ 9 1.2 Arhitectura platformei Microsoft.NET.............
More information2) Fiecare apel relativ la un obiect este transformat într-un apel obişnuit. Exemplu: myscreen.home(); devine home Screen( &myscreen );
6 Clase C++ (II) 6.1 Pointerul implicit this Fiecare obiect al unei clase conţine câte o copie a datelor membre. Screen myscreen, bufscreen; // fiecare are propriul numar de linii (row), de coloane(col),
More informationProgramare orientată obiect
UNIVERSITATEA BABEŞ-BOLYAI Facultatea de Matematică şi Informatică Programare orientată obiect Curs 01 Laura Dioşan 2 Conţinut Introducere Programare structurată la nivel inferior Programare structurată
More informationTRANSFORMATOARE DE CURENT
MAK 140/80 TRANSFORMATOARE DE CURENT Aceste transformatoare de curent pot fi utilizate pentru curenţi de la 200 A la 2000 A. Ele sunt transformatoare de curent de tip inel. Sunt fabricate conform standardelor
More informationLUCRAREA NR. 6 POINTERI
LUCRAREA NR. 6 POINTERI Un pointer este o variabilă care păstrează adresa unui obiect de tip corespunzător. Forma generală pentru declararea unei variabile pointer este: tip * nume_variabila; unde tip
More informationPROGRAMAREA ORIENTATĂ OBIECT CURS 13 - PROGRAMARE II
1 PROGRAMAREA ORIENTATĂ OBIECT CURS 13 - PROGRAMARE II 2 CURS ANTERIOR Introducere în Standard Template Library Containere secvenţiale Containere asociative Adaptori ai containerelor Algoritmi String 3
More informationProbleme propuse pentru Testul de Laborator Semestrul I
Probleme propuse pentru Testul de Laborator Semestrul I Problema 1: Scrieti un program in C pentru rezolvarea ecuatiei de gradul 1 cu coeficienti reali. Valorile coeficientilor se citesc de la tastatura.
More informationAplicatii JAVA. JAVA Programare în rețea # 8. Adrian Runceanu
Aplicatii JAVA # 8 JAVA Programare în rețea 2017 Adrian Runceanu www.runceanu.ro/adrian Curs 8 Programare în rețea 28.04.2017 Curs - Aplicatii Java 2 Programare în rețea copyright@www.adrian.runceanu.ro
More informationCapitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.
Capitolul 4 Fisiere de date si Tablespace 1 Continut capitol Ca structura fizica, baza de date contine fisiere de control, de date si de Redo log. Ca structura logica o baza de date se compune din: Tablespace
More informationUnit Testing cu JUnit
Unit Testing cu JUnit Conf. univ. dr. Catalin Boja catalin.boja@ie.ase.ro http://acs.ase.ro Dep. de Informatică și Cibernetică Economică ASE București Resurse Lasse Koskela - Effective Unit Testing, Manning,
More informationCurs 7. Programare orientată obiect în Delphi
Programare Delphi Curs 7 Programare orientată obiect în Delphi http://docwiki.embarcadero.com/radstudio/en/classes_and_objects_index In Delphi, un obiect ca instanţă a unei clase este o înregistrare alocată
More information