Sunteți pe pagina 1din 7

1 Primii pasi in programare in JAVA (cu Eclipse IDE)

2 In cele ce urmeaza, voi incerca sa scriu cateva notiuni introductive


3in programare. Imi doresc ca acestea sa fie utile oricarui incepator, fie el
4un student sau absolvent de profil uman.

5 In primul rand, vreau sa clarific ce este un limbaj de programare.


6Sunt multe definitii pe internet, dar cred ca cea mai buna este pe
7Wikipedia : O multime de expresii/reguli/forme/tehnici/instructiuni
8pentru un calculator.

9 Programatorul scrie cod sursa, apoi il compileaza (


10transformandu-l dintr-un limbaj inteles doar de om intr-un limbaj
11inteles de calculator ).

12 O sa explic in cele ce urmeaza un program simplu in limbajul Java.


13De exemplu, programatorul scrie cod care afiseaza o fereastra. Aceasta
14contine 2 campuri editabile care pot fi completate cu valori numerice.

15Un al 3-lea camp va afisa utilizatorului rezultatul unui calcul intre cele 2
16campuri(in acest exemplu adunare). Rezultatul va fi afisat in momentul
17in care utilizatorul apasa butonul Calculate(Calculeaza).

18Pentru a face toate aceste lucruri posibile(si pentru a face munca mai
19usoara), vom avea de un IDE(un mediu de dezvoltare software sau un
20mediu integrat de dezvoltare). Un IDE este de asemenea un program
21care ne ajuta sa scriem, sa compilam si sa executam programe pentru
22calculator.

23 Pentru a exemplifica, o sa prezint Eclipse IDE :


24

25Aceasta ne arata un mediu in care programele sunt scrise. Apoi, o sa


26explic fiecare portiune cheie a acestei poze, respectiv vom scrie
27programul pentru actiunile prezentate mai devreme.

28

29
30

31

32 1) Butonul pentru creearea de noi proiecte


33 2) Exploratorul de pachete locul unde putem vedea proiectele din locatia de lucru
34 curenta
35 3) Proiectul selectat
36 4) Dand click pe aceasta, aducem sursa programului Demo in prim plan
37 5) Numele programului curent/clasei
38 6) Numele functiei unde incepe programul
39 7) Parantezele sunt folosite astfel :
40 a. { este folosita pentru a marca inceputul unei functii/bloc, in cazul nostru
41 marcheaza inceputul functiei principale
42 b. }este folosita pentru a marca sfarsitul unei functii/bloc, in cazul nostru
43 marcheaza sfarsitul functiei principale
44 8) Tabul unde putem vedea erorile programului
45 9) Tabul unde putem vedea rezultatele compilarii sau executiei/ corectura gramaticala a
46 programului (trebuie sa respecte un anumit tipar)

47Bun, acum ca am explicat fiecare parte a IDE-ului, sa incepem sa scriem


48un program si sa il explicam.
49import java.awt.*;
50import java.awt.event.*;
51import javax.swing.*;
52
53public class GUI{
54
55 public static void main(String[] args) {
56
57 JFrame frame = new JFrame("Test Window");
58 frame.setLayout(new FlowLayout());
59 JLabel label1 = new JLabel("Enter first number:");
60 JLabel label2 = new JLabel("Enter second number:");
61 JLabel labelr = new JLabel("Result:");
62
63 JTextField textf1 = new JTextField("",5);
64 JTextField textf2 = new JTextField("",5);
65 JTextField textfr = new JTextField("",5);
66 JButton button = new JButton("Compute");
67 frame.add(label1);
68 frame.add(textf1);
69 frame.add(label2);
70 frame.add(textf2);
71 frame.add(labelr);;
72 frame.add(textfr);
73 frame.add(button);
74 button.addActionListener(new ActionListener(){
75 public void actionPerformed(ActionEvent e){
76
77 int number1=0,number2=0;
78 boolean error = false;
79
80 try{
81 number1 = Integer.parseInt(textf1.getText());
82 number2 = Integer.parseInt(textf2.getText());
83 }
84 catch(Exception ex){
85 textfr.setText("error");
86 error = true;
87 }
88 if (!error)
89 textfr.setText(number1+number2+" ");
90
91 }
92 });
93 frame.setVisible(true);
94 frame.setSize(600, 200);
95 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
96 }
97
98}
99Programul are 50 linii de cod. Liniile 1-3 adauga niste biblioteci pentru
100clase/functii pe care le vom folosi mai tarziu(mai jos).

101Pachetele java.awt si java.swing contin functiile care ne vor trebui


102pentru a afisa elemente de interfata grafica precum ferestre, butoane,
103campuri etc. Linia 2 contine importarea pachetului java.awt.event , care
104este folosit pentru a prelucra evenimente.

105Linia5 contine declararea clasei. O clasa in Java este un sablon pentru


106un obiect real. Ea contine date si actiuni (sau campuri si metode).

107De exemplu avem clasa Masina cu campurile/datele numeMasina,


108tipMasina, culoareMasina ai metoda accelereazaMasina.

109O clasa modeleaza un obiect din viata reala. In cazul clasei noastre, nu
110avem campuri si metode, deoarece totul este facut in functia principala.

111Dar o clasa pentru interfata grafica este de asemenea tot o clasa.


112Trebuie sa mentionez ca spatiile albe si taburile sunt ignorate de
113compilator, respectiv instructiunile sunt delimitate prin ;. Deci liniile 4
114si 6 sunt ignorate de compilator.

115Linia9(JFrame frame = new JFrame("Test Window");) creeaza un obiect


116fereastra din clasa(sablonul) JFrame. Putem gasi clasa JFrame in
117pachetul java.swing declarat in linia 3. Acum avem o fereastra in care
118putem afisa orice dorim. Linia 10 seteaza aspectul ferestrei la cel
119prestabilit FlowLayout. Vreau sa subliniez ca FlowLayout este de
120asemenea un obiect, precum cele descrise mai sus.

121Apoi,liniile 11-18 creeaza elementele interfetei grafice, pe care le


122adaugam ferestrei in liniile 19-25.

123Bun, acum avem o fereastra cu 3 obiecte campuri si un buton, dar


124acestea nu fac nimic. Ne trebuie o metoda de a asculta sau a fi notificati
125de apasarile de buton.
126Si o sa folosim functia/metoda addActionListener din clasa JButton in
127interiorul careia sunt specificate actiunile ce se vor efectua la apasarea
128butonului Calculate. Acestea sunt liniile 26-44.

129 Cand introducem 2 numere intregi in cele 2 campuri si apasam


130butonul calculeaza, o sa vedem rezultatul adunarii in cel de-al 3-lea
131camp textfr (prescurtarea vine de la text field result):
132if (!error) textfr.setText(number1+number2+" ");
133

134

135Deci linia 41 face toata treaba in functia actionPerformed.


136Cand o actiune este efectuata(cineva apasa pe buton), tot corpul
137functiei actionPerform este executat, deci si linia 41.

138Sa veden deci executia programului nostrum

139
140Asa cum am explicat, avem o fereastra, 3 campuri de text editabile cu
141etichete si un buton. Rezultatul este cel asteptat, deoarece 53 = 31 + 22

142

S-ar putea să vă placă și