Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate stiintaSa fii al doilea inseamna sa fii primul care pierde - Ayrton Senna





Aeronautica Comunicatii Drept Informatica Nutritie Sociologie
Tehnica mecanica

Java


Qdidactic » stiinta & tehnica » informatica » java
Proiect - aplicatie de licitatie in JAVA



Proiect - aplicatie de licitatie in JAVA


Proiect - Aplicatie de licitatie in JAVA




Introducere


Aplicatiile distribuite sunt de o buna perioada de timp o prezenta uzuala in peisajul IT chiar si din tara noastra. Ultimii ani au insemnat, de asemenea, si pasi semnificativi si concreti in impunerea Internetului in intreaga economie si societate. Odata cu acesta, aplicatiile distribuite – care au ca suport Internetul si tehnologiile dezvoltate pentru acesta si impreuna cu el, au trecut de la stadiul de noutati tehnologice la cel de prezenta reala in comunitatea IT.




Comertul electronic a devenit foarte cunoscut in societatea informationala care se dezvolta continuu din 1990. Internetul a facut comertul electronic sa fie disponibil unui larg grup de utilizatori, in principal mici intreprinderi si utilizatori caznici. In cadrul comunitatii de afaceri, indreptarea catre eficienta si productivitate crescuta este de asteptat sa duca catre o mai mare acceptare a comertului electronic catre intreprinderi ca fiind o cale de a face afaceri in viitor. Dezvoltarea tehnologica a infrastructurii si a mecanismelor de acces si costurile in scadere vor ajuta dezvoltarea acestuia. Totusi temerile de securitate si lipsa de instruire pot fi un obstacol in dezvoltarea comertului electronic.


Comertul electronic ofera o serie de avantaje majore. Principale avantaje sunt si cele mai cunoscute atuuri din lume: timpul si banii. In ceea ce priveste timpul, se face o foarte mare economie. Utilizatorul poate sa vada o lista de produse si preturi in cateva minute din confortul propriului fotoliu. Nu mai sunt necasare deplasari sau alte actiuni care consuma timp inutil. Aceasta economie de timp rezulta astfel intr-o crestere a rentabilitatii, de unde reiese si o economie de bani.

Am ales aceeasta tema pentru a prezenta avantajele folosirii unui sistem de licitatii cat si pentru a creea o aplicatie usor de utilizat care sa ofere utilizatorilor toate optiunile de care acesti au nevoie in finalizarea relatiiei de vanzare-cumparare prin intermediul unei licitatii.


2. Tehnologi folosite



2.1 JAVA


2.1.1. Introducere in JAVA



Platforma Java cuprinde API (Java Application Programming) si Masina Virtuala Java (JVM –Java Virtual Machine) . Java este un limbaj de programare de nivel inalt, dezvoltat de Sun Microsystems. La inceput s-a numit OAK, dar nu a avut success si de aceea Sun i-a schimbat numele in Java si a modificat limbajul pentru a suporta avantajele World Wide Web.
Java a castigat popularitate inca de la inceput. Accensiunea sa rapida si acceptarea larga pot fi urmarite in caracteristicile sale de dezvoltare si programare, in particular in faptul ca se poate realiza un program pe masina locala si rulat oriunde. Java a fost aleasa ca si limbaj de programare pentru calculatoarele in retea (Network Computers) si a fost perceputa ca si o interfata cu bazele de date. Sun Microsystems declara: “ Java este simpla, orientata pe obiect, distribuita, robusta, sigura, neutra din punct de vedere architectural, portabila, multithread si dinamica.”
Java este un limbaj orientat pe obiecte similar cu C++, dar simplificat pentru a elimina acele trasaturi ale limbajului care cauzeaza erorile banale de programare. Codul sursa Java (fisiere cu extensia .java) este compilat intr-un format numit Bytecode (fisiere cu extensia .class), care poate fi apoi executat de un translator Java (Java Interpreter). Codul compilat Java poate rula pe aproape toate calculatoarele deoarece translatorul Java si mediile de rulare, cunoscute ca si Java Virtual Machines (JVMs) exista pentru majoritatea sistemelor de operare, incluzand UNIX, S.O Macintosh si Windows. Bytecode de asemenea poate fi convertit direct in instructiuni pentru limbaj masina de catre un compilator just-in-time (JIT).
Java este un limbaj de programare de scop general, cu o serie de trasaturi care fac limbajul sa suporte WWW. Aplicatiile mici Java sunt numite Applet-uri Java si pot fi descarcate de pe un server Web si rulate pe calculatorul personal de catre un Web browser compatibil cu Java, ca si Netscape Navigator sau Microsoft Internet Explorer.
Limbajul suporta mostenirea si polimorfismul dinamic si este programat avand in vedere programarea concurenta. Are multe din expresiile si structurile de control ale limbajului C plus exceptiile. Este mai multa munca de scris, dar rezultatul este aproape intotdeauna mai clar decat codul C++.
Codul Java nu este compilat la fel de repede ca si C++. Translatorul protejeaza masina de erori care pot opri sistemele de operare in C++. Un program Java poate fi transmis in retea la o masina de tip diferit, cu un sistem de operare diferit si o alta interfata grafica utilizator. Acolo va rula in siguranta (in teorie) si va arata si se va comporta ca si cum a fost programat pentru sistemul respectiv. Acest lucru este foarte scump in C++.

2.1.2. Tipuri de date



Tipurile de date primare

Java suporta 8 tipuri de date primare, descrise in tabelul de mai jos:

Tip

Descriere

byte

intreg cu semn pe 8 biti

short

intreg cu semn pe 16 biti

int

intreg cu semn pe 32 de biti

long

intreg cu semn pe 64 de biti

float

numar in virgula mobila pe 32 de biti

double

numar in virgula mobila pe 64 de biti

char

caracter Unicode pe 16 biti

boolean

true sau false

Observati ca Java adauga doua tipuri de date: byte si boolean. (unele compilatoare de C++ mai noi au adaugat si ele tipul boolean).
O diferenta importanta privind celelalte tipuri de date, care sunt comune celor doua limbaje, este faptul ca tipurile Java au o dimensiune fixa si cunoscuta. Acest lucru este foarte important pentru Java datorita scopului sau de a fi portabil. De exemplu daca un tip de data int ocupa 16 biti pe o platforma si 32 de biti pe alta platforma, programul va avea probleme daca va trebui sa ruleze pe ambele platforme. C++ garanteaza o anumita relatie intre tipurile primare de date, de exemplu garanteaza ca un tip de data long este cel putin la fel de mare cu un tip de data int. El nu garanteaza insa dimensiunea fiecarui tip. Java realizeaza acest lucru, fiecare tip avand o dimensiune fixa.
Deoarece cele mai multe masini ruleaza pe 32 de biti, dimensiunile pentru tipurile primitive de date au fost gandite sa fie optimizate pentru 32 de biti. Astfel, o data Java de tip int ocupa 32 de biti ( fata de16 sau 32 de biti, in C/C++ ), iar o data de tip long va ocupa 64 de biti ( fata de 32 sau 64 de biti, in C/C++ ).
O alta diferenta este ca toate tipurile primare Java sunt cu semn. Astfel, declaratiile unsigned din C nu sunt permise in Java.


2.1.3. Conversii



Si in Java si in C++ se poate face conversie intre un tip de data si un altul. Dar in Java nu exista conversii implicite.
Sa luam urmatoarea secventa de program scrisa in C:
long LongNb = 32768;
int IntNb;
IntNb = LongNb;
Compilatorul C/C++ va face o conversie implicita (cast) din long in int. Pe o platforma de 16 biti ( unde long are o lungime de 32 de biti si int are o lungime de 16 biti ), in urma conversiei, variabila IntNb va avea valoarea 0. Deci va avea loc o pierdere de precizie, fara ca programatorul sa fie avizat.
Java inlatura riscul unor potentiale erori in programare relative la conversii prin faptul ca nu realizeaza conversii automate. Astfel programatorul este nevoit sa faca o conversie explicita ( de exemplu IntNb = (int)LongNb;).




2.1.4. Operatori



Setul de operatori din Java este aproape identic cu cel din C/C++. Acestia sunt: ! (negatie), && (si conditional), || (sau conditional), ?: (conditie). O diferenta este ca in Java acestia opereaza cu valori booleene. Astfel secventa C:
int x = 4;
int y = 5;
if (x && y)
va fi ilegala in Java, pentru ca, asa cum spuneam mai sus, nu se face conversie automata. Conditia va trebui deci scrisa explicit: if (x!=0 && y!=0).

O alta diferenta privind operatorii, si care are o importanta deosebita, este ca in Java operatorii nu pot fi supraincarcati, asa cum pot fi in C++. Folosirea acestei trasaturi in C++ a dus la crearea multor erori. De aceea dezvoltatorii Java au hotarat sa nu pastreze aceasta caracteristica.

2.1.5. Pointeri



Pointerii reprezinta in C++ un element care confera programatorului multa flexibilitate. Cu toate acestea, folosirea pointerilor este o importanta sursa de erori.
Java nu permite programatorului sa foloseasca pointeri de nici un fel. Cum se face atunci transmiterea variabilelor?
In C++ programatorul are libertatea sa transmita variabilele cum considera ca este mai bine folosind operatorii &, * si ->. In Java insa nu exista acesti operatori, dar exista urmatoarea regula: tipurile de date primare sunt transmise prin valoare (prin copierea efectiva), iar obiectele si masivele sunt transmise prin referinta (prin copierea adresei).
Sa luam urmatorul exemplu: vrem sa cream o functie care sa returneze media unui student:
void mediaStudent (int note[], double media)

Nu putem returna rezultatul ca parametru (si anume in variabila media), pentru ca acesta este transmis prin valoare si modificarea sa in interiorul functiei nu are efect asupra variabilei media. In C acest parametru trebuia transmis prin adresa (int *media sau int &media). Prin urmare trebuie cautata o solutie de transmitere a parametrului prin adresa. Acest lucru se poate face prin crearea unei clase care sa contina variabila media. Un obiect al acestei noi clase va fi transmis ca parametru prin adresa:
public class definesteStudent

iar functia de mai sus va avea forma:
void mediaStudent (int note[], definesteStudent stud)

Bineinteles ca returnarea mediei se putea face in cazul de mai sus si ca retur al functiei:
double mediaStudent (int note[])
dar in cazul in care se doreste returnarea mai multor valori primare, crearea unei clase care sa le contina ramane singura solutie valabila.


2.1.6 Copierea obiectelor



Deoarece fiecare obiect este de fapt o referinta, asignarea unui obiect altuia nu copiaza decat adresa catre care acesta refera.
Iata un exemplu:
Button butonOK = new Button('OK');
Button butonCancel = new Button('Cancel');
butonOK = butonCancel;
Obiectul butonOK va fi o referinta catre obiectul referit de butonCancel, iar obiectul initial care era alocat in butonOK se pierde.
Pentru a copia efectiv datele dintr-un obiect in altul se foloseste functia clone(), disponibila in clasele care implementeaza interfata Cloneable (cele mai multe dintre clasele standard):
butonOK=butonCancel.clone();

Acelasi lucru este valabil si pentru masive. Pentru a copia efectiv valorile unui vector (de exemplu) in alt vector, fie trebuie copiata fiecare valoare in parte, fie trebuie folosita metoda System.arraycopy().


2.1.7. Gestionarea automata a memoriei


Aceasta este una dintre trasaturile care face limbajul Java renumit pentru usurinta programarii. Desi operatorul new aloca memorie pentru un obiect, nu exista un operator corespondent care sa dezaloce memoria alocata anterior prin new. Colectorul de gunoaie elibereaza un spatiu de memorie imediat ce nu mai exista o referinta catre acesta.
Exemplu: sa presupunem ca am folosit o culoare pentru desenarea unui background:
Color background = new Color(250,0,0);
In memorie se aloca un spatiu pentru acest obiect, care are adresa background.
Mai tarziu vrem sa schimbam culoarea, si procedam astfel:

background = new Color(0,250,0);
Acum un nou obiect este alocat, iar adresa acestuia este trecuta in variabila background. Prin urmare obiectul alocat anterior nu va mai fi referit, deci memoria va fi dezalocata automat.
Aceasta facilitate scuteste programatorul sa tina cont de toate obiectele alocate, sporindu-i rapiditatea programarii si eliminand din erori.


2.1.8. Clase


Modelul orientat pe obiecte din Java a fost inspirat din limbajul C++. Dar desi clasele in C++ sunt importante, in Java sunt obligatorii si sunt 'centrul lucrurilor'. In Java nu exista variabile sau functii de sine-statatoare. Totul trebuie incapsulat intr-una sau mai multe clase. In plus, exista o intreaga ierarhie de clase, care are ca 'stramos' comun clasa Object.
Regasim in clasele Java modificatorii private, protected, si public. Ei au aceeasi semnificatie ca si in C++. In plus, Java mai are un al patrulea nivel de acces, care este folosit implicit. Daca nu este specificat nici un modificator, atunci membrul respectiv este accesibil in cadrul pachetului in care clasa este definita, dar nu si in alta parte.
Codul Java este vizibil la nivelul pachetului, iar un pachet contine definitiile si implementarile de cod a uneia sau mai multor clase.



Ex: clasa de configurare(conectare baza de date)


package config;


public class Config


public String getDbPath()


public String getDbUserName()


public String getDbPassword()


Functiile Membre

In Java fiecare metoda are corpul in acelasi loc unde are si definitia. De aceea Java nu are nevoie de cuvintul cheie inline din C++. Toate metodele sunt scrise ca si functiile inline din C++.



Valori implicite ale variabilelor

Un alt element care aduce o imbunatatire in Java fata de C++ este abilitatea de a seta o valoare implicita pentru o variabila membra la momentul declararii ei. De exemplu:
class Persoana

In C++, aceasta atribuire se putea face numai in constructor. Posibilitatea atribuirii unei valori implicite in Java are avantajul ca daca exista mai multi constructori care trebuie sa aloce aceeasi valoare unei variabile, acestia sunt simplificati pentru ca nu mai este necesara scrierea lor.

Constructori si destructori

Fiecare clasa Java poate include unul sau mai multi constructori. Ca si in C++, constructorul are acelasi nume ca si clasa. In Java constructorii nu returneaza nici o valoare si sunt declarati in acelasi mod ca si celelalte metode.
In C++ era nevoie de destructori pentru a elibera memoria alocata de un obiect. Deoarece Java include 'colectorul de gunoaie' pentru eliberarea automata a memoriei care nu mai este referita, existenta destructorilor nu mai este necesara. De aceea, destructori din C++ nu exista, fiecare clasa Java poate include in schimb metoda finalize, care realizeaza eliberarea obliectului. Functia este definita in clasa Object, deci este mostenita de toate clasele.



2.1.9. Lipsa preprocesorului

C si C++ includ directivele #define, #include, si #ifdef. Java nu include nici un fel de preprocesor.

Definirea constantelor

Orice variabila declarata final este constanta. Valoarea sa trebuie specificata de la initializare si ea nu poate fi schimbata ulterior. Echivalentul directivei #define din C este o variabila declarata static final.
De exemplu variabila PI din clasa java.lang.Math este definita astfel:
public static final double PI = 3.14159

Macrouri

Java nu are un echivalent pentru macrourile din C, dar tehnologia compilatoarelor a avansat destul de mult incat sa nu mai fie nevoie de ele.

Includerea fisierelor

Dupa cum stiti, Java are directiva import, care este aproximativ similara cu directiva #include din C. Directiva import spune compilatorului ca fisierul curent foloseste clasele specificate sau clasele din pachetele specificate, si permite programatorului sa foloseasca nume scurte (de exemplu Math.PI in loc de java.lang.Math.PI).

Compilarea conditionata

Java nu are directivele #ifdef si #if pentru a realiza compilarea conditionata. Teoretic, compilarea conditionata nici nu ar trebui sa fie necesara in Java, pentru ca de obicei aceasta se foloseste la schimbarea platformei. Practic insa, compilarea conditionata este folositoare si in Java, de exemplu pentru a crea interfete putin diferite in functie de platforma, sau pentru a include cod pentru debug.

Compilatorul Java realizeaza implicit o compilare conditionata, in sensul ca nu va compila un cod care in mod evident nu va fi executat. (de exemplu if(false)).
Compilarea conditionata functioneaza si cu constante (cu variabile declarate static final). Acestea se folosesc in general pentru debug. Daca o clasa defineste o astfel de constanta astfel:
private static final boolean DEBUG = false;
atunci compilatorul nu va compila cod de genul if(DEBUG). Pentru activarea optiunii de debug, este necesara doar schimbarea valorii constantei si recompilarea codului.


2.1.10. Variabile multidimensionale

Ca si C/C++, Java foloseste parantezele patrate pentru a declara un masiv. Sunt insa doua diferente:
- in Java parantezele pot fi plasate fie inaintea, fie dupa numele variabilei;
- dimensiunea masivului nu trebuie specificata intre paranteze la momentul declararii variabilei. Acest lucru nu este necesar si nici permis pentru ca Java cere ca toate masivele sa fie alocate folosind operatorul new:
int vector[];
vector = new int[100];
sau
int vector[] = new int[100];

Comentarii

In afara de comentariile existente si in C/C++, si anume: // si /**/, Java introduce un nou tip de comentariu: /***/ Un astfel de comentariu poate fi extras din codul sursa si folosit pentru a crea documentatie pentru clasa respectiva cu utilitarul javadoc. Acest mod de comentare a codului este folosit pentru toate clasele standard din Java.

Ex: /* connect to database */

Argumente in linia de comanda

Unui program C sau C++ i se pot transmite argumente in linia de comanda cu ajutorul parametrilor argc si argv, unde argc reprezinta numarul de parametri transmisi, iar argv este un sir cu parametrii respectivi. Intotdeauna va fi cel putin un parametru transmis, deoarece primul parametru este numele programului:
main ( int argc, char *argv[] )
Intr-o aplicatie Java ( intr-un applet nu putem vorbi despre functia main), argumentele din linia de comanda sunt trecuti intr-un sir de obiecte de tip String:
public static void main(String args[]);
Fiecare componenta a sirului args este un parametru transmis. Diferenta fata de C/C++ este ca in Java numele programului nu este transmis ca parametru.

goto, break si continue

Cuvantul cheie goto nu este folosit in Java. El este pe lista cuvintelor rezervate, asa ca poate la un moment dat o sa se revina asupra lui. Exista insa doi substituenti pentru goto: break si continue pot fi folosite cu etichete. Break si continue au si valoarea cunoscuta din C, dar au in plus si facilitatea de 'goto':

eticheta:
for(int i=0;i<3;i++)

}

synchronized

Fiind un sistem multithreading, Java trebuie sa previna ca mai multe fire de executie sa modifice simultan acelasi obiect. Sectiunile de cod care nu trebuie executate simultan sunt denumite 'sectiuni critice'. Java furnizeaza cuvantul cheie synchronized pentru a proteja aceste sectiuni critice.

package si import

Java furnizeaza de asemenea cuvantul cheie package pentru a specifica pachetul din care clasa respectiva face parte. Clauza import are acelasi rol cu #include din C.

Ex.Din Auction.java

import java.lang.*;

import java.util.*;

import java.sql.*;

import security.*;

import java.sql.*;



Elemente care lipsesc in Java

Sunt o suma de alte elemente care exista in C++ si nu exista in Java. Printre acestea enumar: templates, functii friend, parametri impliciti, struct, union. In cele mai multe cazuri insa, nici nu este nevoie de ele, sau ele pot fi inlocuite prin altceva. Eliminarea lor este justificata de faptul ca simplifica mult crearea programelor Java.


2.2. Implementarea bibliotecilor in JAVA


2.2.1 Introducere


Construirea de biblioteci abstracte (clase si pachete de clase) este o parte importanta in dezvoltarea aplicatiilor Java si nu numai. Voi incerca prin articolele acestei rubrici sa va trezesc curiozitatea privind modalitatile de abstractizarea a datelor si construirea de noi biblioteci de date abstracte. Toate aplicatiile existente in mare parte folosesc caracteristici si clase existente in Java care sunt puse la dispozitie de bibliotecile standard (java.util, java.awt, etc.).

Ex.Din Auction.java

import java.lang.*;

import java.util.*;

import java.sql.*;

import security.*;

import java.sql.*;



2.2.2 Metode mostenite din Clasa Object

Clasa Object declara un numar de metode care pot fi suprascrise de subclase ale ei (acesta inseamna ca in orice aplicatie putem suprascrie aceste metode). Cand implementam o clasa trebuie sa tinem cont de unele aspecte legate de obiectele instanta (cum trebuie copiate <cloned>comparate, sterse, afisate sub forma unui String). Putem suprascrie aceste metode atunci cand comportamentul lor implicit nu satisface cerintele programului. Urmatoarele metode pot fi supraincarcate: <xmp>public boolean equals(Object obj); public String toString(); public final native int hashCode(); protected native Object clone(); protected void finalize();</xmp>Obs: obiectele de tip array permit de asemenea suprascrierea acestor metode.

Trei dintre aceste metode sunt publice si pot fi suprascrise de orice instante obiect, in timp ce doua metode sunt protejate si din acest motiv trebuie declarate publice in momentul in care sunt suprascrise. Vom analiza pe rand aceste metode:


boolean equals(Object obj)


Metoda folosita pentru a compara doua obiecte (obiectul pentru care se apeleaza metoda si obiectul transmis ca parametru). Metoda implicita oferita de clasa Object returneaza true daca cele doua obiecte reprezinta de fapt acelasi obiect, folosindu-se operatorul == . Ramane in sarcina programatorului sa decida cum se compara doua obiecte ale aceleeasi clase.

Documentatia JDK defineste un set riguros de reguli ce trebuie avute in vedere atunci cand se doreste stabilirea egalitatii intre boua obiecte. Metoda equals implementeaza o relatie de echivalenta:

Este reflexiva ;

Este simetrica;

Este tranzitiva;

String toString()

Metoda returneaza o reprezentare de tip String pentru obiectul care o apeleaza. Implicit returneaza un Sring sub forma:

ClassName @ 1cc7a0, adica numele clasei urmat de caracterul @ si apoi o valoare in hexa a codului hash. Pentru a genera o reprezentare mult mai utila putem supraincarca acesta metoda si returna orice String care sa ne ofere informatii despre obiect.



int hashCode()


Un hash cod este o valoare intreaga ce reprezinta intreaga valoare a unui obiect. Codurile hash sunt folosite drept chei in tabelele de dispersie asa cum este implementata clasa HashTable din pachetul java.util. Versiunea implicita a metodei va incerca sa genereze un cod pentru fiecare obiect dar se poate ca la un moment dat sa genereze valori diferite pentru un acelasi obiect. Daca se intampla acest lucru atunci trebuie sa suprascriem metoda pentru a implementa o noua functie de dispersie (hash function) care va genera codurile hash corecte.

De fiecare data cand este invocata metoda hashCode asupra aceluiasi obiect ea trebuie sa returneze in mod constant aceeasi valoare intreaga. Daca doua obiecte sunt egale conform metodei equals, atunci apeland metoda hashCode pentru fiecare din cele doua obiecte trebuie sa obtinem acceasi valoare intreaga.

Programatorii se bazeaza de obicei pe implementarea implicita a metodei hashCode decat sa implementeze o noua versiune (ceea ce poate duce la o munca destul de dificila).


object clone()


Metoda va crea o copie a obiectului. Implicit doar obiectul curent este copiat si nu si celelalte obiecte spre care acesta poate avea referinte. Valorile primitive in Java sunt intotdeauna copiate. Metoda suprascrisa trebuie declarata public. Daca un obiect nu poate fi clonat va fi aruncata exceptia : CloneNotSupportedException.


void finalize()


Acesta metoda este apelata automat de colectorul de gunoaie (garbage collector) cand un obiect nu mai este referentiat si poate fi sters din memorie. Varianta implicita nu contine nici o instructiune in corpul metodei. Colectorul de gunoaie poate rula oricand, astfel incat nu se poate determina cu exactitate cand va fi apelata metoda finalize. Putem supraincarca acesta metoda in cazul in care de exemplu anumite date trebuie salvate intr-un fisier inainte de a fi pierdute sau o conexiune pe retea trebuie inchisa.

Daca apare o eroare metoda poate folosi in declaratie si clauza throw, aruncand o exceptie de tipul Throwable. Daca acesta exceptie este aruncata atunci ea va fi prinsa de colectorul de gunoaie si ignorata, lasand programul sa-si desfasoare executia pana la final.











5.Concluzii


Aceasta aplicatie isi are ca scop simularea unei licitatii online intr-un mediu informatic in care utilizatorii sa poate interactiona printr-un mediu cat mai primitor usor de utilizat si functional.

Pe parcursul lucrarii am incercat sa arat posibilitatiile de programare ,si multele optiuni care limbajuil java le are de oferit pentru programarea unui sistem de licitatii bazat pe server simplitatea utilizarii cat si eficacitatea sa.

Pe langa interfata placuta si usor de utilizat acest program le ofera utilizatorilor sai metode prin care sa puna in vanzare produse prin intermediul unor licitatii sau sa cumpere produse .Ca o concluzie, Java a fost conceput sa ajute programatorul cat mai mult prin usurinta programarii, lasand greul in seama Java iar prin JSP totul a devenit mai dinamic. Cred ca aceasta aplicatie si-a atins scopul acela de a veni in intampinarea utilizatorilor care au nevoie de un mod prin care sa ofere spre lictatie sau sa cumpere obiecte,produse prin intermediul unei licitatii online.






6. Bibliografie


1.Java de la 0 la expert (editia a II-a) Autor (i): Stefan Tanasa, Cristian Olaru, Stefan Andrei Editura:Polirom An aparitie:2007

2.Introducere in universul JAVA Autor (i): Horia Georgescu Editura:Tehnica

3.Algoritmi fundamentali in Java. Aplicatii Autor (i): Doina Logofatu

4.Java fara mistere - ghid pentru autodidacti Autor (i): Jim Keogh Editura:Rosetti Educational An aparitie:2006

5.Algoritmi si programare JAVA - teorie si aplicatii Autor (i): C. Luca, E. Ciurea Editura:Albastra

6.Introduction to Programming Using Java, Fifth Edition http://math.hws.edu/javanotes/


Links:


7.http://java.sun.com/javase/downloads/index.jsp

8.http://java.sun.com/docs/books/tutorial/uiswing/

9.http://java.sun.com/j2se/1.4.2/docs/api/java/awt/package-summary.html

10.http://java.sun.com/docs/books/tutorial/

11.http://www.apl.jhu.edu/~hall/java/

12.http://www.jsptut.com/

13.http://www.roseindia.net/jsp/jsp.htm

14.http://www.roseindia.net/

15.http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/



Distributed applications are a good time in a usual this IT landscape even in our country. Recent years have meant, also significant and concrete steps in imposing the Internet throughout the economy and society. With this distributed applications - which support the Internet and the technologies developed for it and with it, since the state news technology at this real IT community.

This application is aimed to simulate an online auction in an environment in which computer users can interact in a more welcoming environment easy to use and functional.
Throughout the paper i tried to show the possibility of programming, and many options that java has to offer programming for a system of auctions based on the server and ease of use and its effectiveness.
Besides the nice interface and easy to use program the sistem offers users ways to put products sold in auctions or buy them. As a conclusion, Java was designed to help software by as much as ease of programming, and with JSP it became more dynamic for online . I think this application has met that aim to meet the users need for a way to provide a sistem in which objects can be sold or bought through online auctions.

E-commerce offers several major advantages. Main advantages are the best known advantages of the world: time and money. Regarding time, there is a very large economy. The user can see a list of products and prices in a few minutes from the comfort of their armchair. No more trips necasare or other actions that consume time unnecessarily. This saves time thus resulting in increased profitability, where it appears and saves money.
I choose java advantages of using a system of auctions and how to create an easy to use application that will provide users with all the options they need in completion of sale through an auction.



Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright

stiinta

Java



Access
Autocad
Baze de date
C
Calculatoare
Catia
Excel
Foxpro
Grafica design
Html
Internet
Java
Linux
Mathcad
Matlab
Oracle
Outlook
Photoshop
Php
Powerpoint
Retele calculatoare
Sql
Windows
Word

Lucrari pe aceeasi tema


Diagrame de Clasa - operatii/Metode
Proiect - aplicatie de licitatie in JAVA



Ramai informat
Informatia de care ai nevoie
Acces nelimitat la mii de documente, referate, lucrari. Online e mai simplu.

Contribuie si tu!
Adauga online proiectul sau referatul tau.