Pereiti prie turinio

JAVA: nuo ko pradėti?


Rekomenduojami pranešimai

  • po 4 savaičių...

Java web applikacijos. Nuo ko pradėti? Manau, reikia tinkamo techn pasiruošimo. Mano atveju, kolkas, lyg ir reikia tik Tomcat+velocity(tiksliai dar nezinau kas tai :D)+db connectoriu, nes mano norimam projekte bus tūkstančiai užklausų ir responsų su MYSQL. Pradžioje noriu tą savo projektą kurti localhoste su eclipse ir bandau dabar su tais db connectoriais susitvarkyt, bet vis nepavyksta prijunkt jsp prie duomenų bazės, gal kas galėtų padėt, paaiškint?

 

 

Taigi, nuo ko pradėti mokytis jsp? java web application? :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 8 mėnesių...
  • po 1 mėnesio...

Mačiau keli žmonės klausia, apie web aplikacijas - pasistengsiu trumpai paaiškinti.

 

Java kuo puikiausiai tinka webui kurti. Žinoma, pati aplikacijų struktūra gerokai skiriasi nuo PHP, bet perkandus, galima daug geresnių rezultatų pasiekti su Java negu su tuo pačiu PHP.

 

Struktūra.

 

Yra keli variantai. Pateiksiu patį paprasčiausią: naudoti Servlet ir JSP plius kokį nors duomenų bazės jungtį (Osvaldo atveju MySQL Connector/J). Kaip tas veikia? Rašote Java kodą, kuris per DB jungtį gauna duomenis, o Servlet tuos duomenis pateikia webui. JSP, kas yra daugmaž PHP atitikmuo, naudoja tuos Servleto pateiktus duomenis, kad sukurtų dinaminį puslapį. Pvz:

 

Prekių katalogas.

1. Duomenų bazėje turit prekių lentelę.

2. Rašote Java klasę, kuri per MySQL Connector/J gauna visas arba dalį prekių. Ten taip pat galite suprogramuoti prekių filtravimą pagal kainą ar paiešką pagal pavadinimą. Didesnėm aplikacijom gerai būtų pasidaryti Cache, kad nereiktų kaskart į DB kreiptis to pačio.

3. Parašote Servletą, kuris webui (JSP puslapiui) grąžina jums reikiamas prekes.

4. Sukuriate JSP, kuris atvaizduotų tas prekes HTML. (Velocity beje yra panašu į JSP - užpildant "templeitą" dinamiškai kuriamas HTML puslapis)

 

Greitis.

 

Dauguma žmonių pasakytų, kad Java daug lėtesnė webui negu PHP, ir dalinai tai gali būti tiesa. Viskas priklauso nuo to, kaip suprogramuota. Gerai parašyta Java web aplikacija veiks taip pat greitai kaip ir PHP. Šis Javos lėtumo mitas atėjo iš visų "bankinių aplikacijų", kurios dėl saugumo ir sudėtingumo turi naudoti pernelyg komplikuotą struktūrą, kuri savaime yra lėta (kam įdomu pasigūglinkit - Enterprise Java Beans, EJB - atgyvenusi technologija, kurią iki šiol naudoja didžiosios kompanijos). Keletas dalykų į ką atkreipti dėmesį rašant applikaciją, kai greitis yra labai svarbus:

 

1. Duomenis, kuriuos dažnai naudojate, laikykite "Cache". Duomenų bazės iškvietimai 1000x lėtesni nei skaitant iš atminties (RAM).

2. Kur įmanoma naudokit paprastą HTML vietoj JSP.

3. Atsargiai rinkitės bibliotekas, kurias naudojate. Kai kurios gali gerokai sulėtinti užklausas.

 

Kol kas tiek, jei kas konkrečiai domina, klauskit :)

 

Pamiršau paminėti IDE - mačiau daug diskutavote šita tema.

 

Jei norite rimtai mokintis Java, pamirškite visus JGrasp, notepadus ir visokias jų versijas. Yra pritaikytos aplinkos, kurios ŽYMIAI sutrumpina programavimo laiką. Geriausios iš jų:

 

NetBeans - neblogas pradedantiesiems, turi gerą UI kūrimo įrankį.

Eclipse - ilgai naudojau, buvo super. Paskutinės versijos pasidarė ypač lėtos, tai pakeičiau į IntelliJ

IntelliJ - šiuo metu geriausias IDE. Turi nemokamą community versiją, kuri tinka 75% atvejų

 

Sėkmės

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Tai, kad java veikia lėčiau nei php yra pūliai, ištraukti iš piršto. Būtų gerai teiginius pagrįsti įrodymais: pvz. http://www.techempower.com/benchmarks/#section=data-r5&l=w0 dauguma populiariųjų php karkasų visų rezultatai praščiausi.

 

 

Mačiau keli žmonės klausia, apie web aplikacijas - pasistengsiu trumpai paaiškinti.

 

Java kuo puikiausiai tinka webui kurti. Žinoma, pati aplikacijų struktūra gerokai skiriasi nuo PHP, bet perkandus, galima daug geresnių rezultatų pasiekti su Java negu su tuo pačiu PHP.

 

Struktūra.

 

Yra keli variantai. Pateiksiu patį paprasčiausią: naudoti Servlet ir JSP plius kokį nors duomenų bazės jungtį (Osvaldo atveju MySQL Connector/J). Kaip tas veikia? Rašote Java kodą, kuris per DB jungtį gauna duomenis, o Servlet tuos duomenis pateikia webui. JSP, kas yra daugmaž PHP atitikmuo, naudoja tuos Servleto pateiktus duomenis, kad sukurtų dinaminį puslapį. Pvz:

 

Prekių katalogas.

1. Duomenų bazėje turit prekių lentelę.

2. Rašote Java klasę, kuri per MySQL Connector/J gauna visas arba dalį prekių. Ten taip pat galite suprogramuoti prekių filtravimą pagal kainą ar paiešką pagal pavadinimą. Didesnėm aplikacijom gerai būtų pasidaryti Cache, kad nereiktų kaskart į DB kreiptis to pačio.

3. Parašote Servletą, kuris webui (JSP puslapiui) grąžina jums reikiamas prekes.

4. Sukuriate JSP, kuris atvaizduotų tas prekes HTML. (Velocity beje yra panašu į JSP - užpildant "templeitą" dinamiškai kuriamas HTML puslapis)

 

Greitis.

 

Dauguma žmonių pasakytų, kad Java daug lėtesnė webui negu PHP, ir dalinai tai gali būti tiesa. Viskas priklauso nuo to, kaip suprogramuota. Gerai parašyta Java web aplikacija veiks taip pat greitai kaip ir PHP. Šis Javos lėtumo mitas atėjo iš visų "bankinių aplikacijų", kurios dėl saugumo ir sudėtingumo turi naudoti pernelyg komplikuotą struktūrą, kuri savaime yra lėta (kam įdomu pasigūglinkit - Enterprise Java Beans, EJB - atgyvenusi technologija, kurią iki šiol naudoja didžiosios kompanijos). Keletas dalykų į ką atkreipti dėmesį rašant applikaciją, kai greitis yra labai svarbus:

 

1. Duomenis, kuriuos dažnai naudojate, laikykite "Cache". Duomenų bazės iškvietimai 1000x lėtesni nei skaitant iš atminties (RAM).

2. Kur įmanoma naudokit paprastą HTML vietoj JSP.

3. Atsargiai rinkitės bibliotekas, kurias naudojate. Kai kurios gali gerokai sulėtinti užklausas.

 

Kol kas tiek, jei kas konkrečiai domina, klauskit :)

 

Pamiršau paminėti IDE - mačiau daug diskutavote šita tema.

 

Jei norite rimtai mokintis Java, pamirškite visus JGrasp, notepadus ir visokias jų versijas. Yra pritaikytos aplinkos, kurios ŽYMIAI sutrumpina programavimo laiką. Geriausios iš jų:

 

NetBeans - neblogas pradedantiesiems, turi gerą UI kūrimo įrankį.

Eclipse - ilgai naudojau, buvo super. Paskutinės versijos pasidarė ypač lėtos, tai pakeičiau į IntelliJ

IntelliJ - šiuo metu geriausias IDE. Turi nemokamą community versiją, kuri tinka 75% atvejų

 

Sėkmės

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 3 mėnesių...

Sveiki,

pradejau mokytis Java kalbos. Pradejau nuo siame forume rekomeduotų vaizdo irašų, bet jie yra labai seni. Paskaites http://docs.oracle.com/javase/tutorial/index.html pastebejau kad kodai toms pacios uzduotims labai skiriasi. Gal galetumet rekomenduoti naujasniu vaizdo irasu, arba gal kas parduoda java knyga ?

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 4 savaičių...

Sveiki,

pradejau mokytis Java kalbos. Pradejau nuo siame forume rekomeduotų vaizdo irašų, bet jie yra labai seni. Paskaites http://docs.oracle.com/javase/tutorial/index.html pastebejau kad kodai toms pacios uzduotims labai skiriasi. Gal galetumet rekomenduoti naujasniu vaizdo irasu, arba gal kas parduoda java knyga ?

 

Sveikas,

 

knygą apie Java programavimą, apie kurią dar negirdėjau neigiamų atsiliepimų, gali nusipirkti iš amazon http://www.amazon.com/Head-First-Java-2nd-Edition/dp/0596009208/ref=sr_1_1?ie=UTF8&qid=1383164322&sr=8-1&keywords=Head+First+JAva. Pats tą knygą pirkau iš ten.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 4 savaičių...
  • po 3 savaičių...
  • po 3 savaičių...

Mačiau keli žmonės klausia, apie web aplikacijas - pasistengsiu trumpai paaiškinti.

 

Java kuo puikiausiai tinka webui kurti. Žinoma, pati aplikacijų struktūra gerokai skiriasi nuo PHP, bet perkandus, galima daug geresnių rezultatų pasiekti su Java negu su tuo pačiu PHP.

 

Struktūra.

 

Yra keli variantai. Pateiksiu patį paprasčiausią: naudoti Servlet ir JSP plius kokį nors duomenų bazės jungtį (Osvaldo atveju MySQL Connector/J). Kaip tas veikia? Rašote Java kodą, kuris per DB jungtį gauna duomenis, o Servlet tuos duomenis pateikia webui. JSP, kas yra daugmaž PHP atitikmuo, naudoja tuos Servleto pateiktus duomenis, kad sukurtų dinaminį puslapį. Pvz:

 

Prekių katalogas.

1. Duomenų bazėje turit prekių lentelę.

2. Rašote Java klasę, kuri per MySQL Connector/J gauna visas arba dalį prekių. Ten taip pat galite suprogramuoti prekių filtravimą pagal kainą ar paiešką pagal pavadinimą. Didesnėm aplikacijom gerai būtų pasidaryti Cache, kad nereiktų kaskart į DB kreiptis to pačio.

3. Parašote Servletą, kuris webui (JSP puslapiui) grąžina jums reikiamas prekes.

4. Sukuriate JSP, kuris atvaizduotų tas prekes HTML. (Velocity beje yra panašu į JSP - užpildant "templeitą" dinamiškai kuriamas HTML puslapis)

 

Greitis.

 

Dauguma žmonių pasakytų, kad Java daug lėtesnė webui negu PHP, ir dalinai tai gali būti tiesa. Viskas priklauso nuo to, kaip suprogramuota. Gerai parašyta Java web aplikacija veiks taip pat greitai kaip ir PHP. Šis Javos lėtumo mitas atėjo iš visų "bankinių aplikacijų", kurios dėl saugumo ir sudėtingumo turi naudoti pernelyg komplikuotą struktūrą, kuri savaime yra lėta (kam įdomu pasigūglinkit - Enterprise Java Beans, EJB - atgyvenusi technologija, kurią iki šiol naudoja didžiosios kompanijos). Keletas dalykų į ką atkreipti dėmesį rašant applikaciją, kai greitis yra labai svarbus:

 

1. Duomenis, kuriuos dažnai naudojate, laikykite "Cache". Duomenų bazės iškvietimai 1000x lėtesni nei skaitant iš atminties (RAM).

2. Kur įmanoma naudokit paprastą HTML vietoj JSP.

3. Atsargiai rinkitės bibliotekas, kurias naudojate. Kai kurios gali gerokai sulėtinti užklausas.

 

Kol kas tiek, jei kas konkrečiai domina, klauskit :)

 

Pamiršau paminėti IDE - mačiau daug diskutavote šita tema.

 

Jei norite rimtai mokintis Java, pamirškite visus JGrasp, notepadus ir visokias jų versijas. Yra pritaikytos aplinkos, kurios ŽYMIAI sutrumpina programavimo laiką. Geriausios iš jų:

 

NetBeans - neblogas pradedantiesiems, turi gerą UI kūrimo įrankį.

Eclipse - ilgai naudojau, buvo super. Paskutinės versijos pasidarė ypač lėtos, tai pakeičiau į IntelliJ

IntelliJ - šiuo metu geriausias IDE. Turi nemokamą community versiją, kuri tinka 75% atvejų

 

Sėkmės

 

Dabar tik pamačiau šitą atsakymą :) Šiai dienai dirbu jaunesniuoju java programuotoju, tai per tris mėnesius jau spėjau susipažint kaip veikia java web aplikacijos, nes kaip tik prie tokio projekto ir dirbu.

 

Turiu tokį klausimą diskusijai: Šiuo metu naudoju zk

Jau spėjau su juo susipažinti ir pasirodė gan nesudėtingas. Ar teko su juo susidurti? Kokia jūsų nuomonė apie jį? Ar visgi geriau būtų pasirinkti kažką iš velocity jsp jsf?

Redagavo Osvaldass
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Dabar tik pamačiau šitą atsakymą :) Šiai dienai dirbu jaunesniuoju java programuotoju, tai per tris mėnesius jau spėjau susipažint kaip veikia java web aplikacijos, nes kaip tik prie tokio projekto ir dirbu.

 

Turiu tokį klausimą diskusijai: Šiuo metu naudoju zk

Jau spėjau su juo susipažinti ir pasirodė gan nesudėtingas. Ar teko su juo susidurti? Kokia jūsų nuomonė apie jį? Ar visgi geriau būtų pasirinkti kažką iš velocity jsp jsf?

 

Neteko ZK naudot, nors peržiūrėjau features'us ir pavyzdžius, atrodo solidžiai. Matai, svarbiausia, kad framework'as tiktų projekto tikslams pasiekti, ir jei tau su ZK viskas pavyksta, nėr problemų - nesuk galvos apie JSP/JSF/Velocity. Visa tai tik skirtingos priemonės galutinio produkto (svetainės) sukūrimui.

 

Į ką gali atkreipti dėmesį - ar tavo naudojamas framework'as lengvai plečiamas, nes nesu matęs projekto, kuriam nereikėtų programuoti kažko specifinio, ko nėra tame framework'e. Pvz. man patiko, kad ZK turi theming'ą su LESS ir nesunkiai parašomus Custom Components, mano projektams tai būtų svarbiausi kriterijai, kitiems matyt reiktų kažko kito.

 

Tai tiek, smagu matyt, kad Java domiesi ir tobulėji. Sėkmės darbe :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 3 savaičių...
  • po 1 mėnesio...

www.codeacademy.com pradėjau Javascript mokintis. Patinka. Viskas gan aiškiai aiškinama, o jei reikia - yra forumai.

 

+ galima ir kitų kalbų mokintis + ALL FREE

 

1. Kalba eina ne apie Javascript, o apie Java. Nemaišyk.

2. www.CODECADEMY.com, o ne www.CODEACADEMY.com (nors realiai nukreipia ten pat). Čia toks pastebėjimas įdomus :D

3. Codecademy užtenka tik pagrindiniams kalbos žodžiams išmokti, vėliau bet kokiu atveju teks pereiti prie asmeninės praktikos, kada pagrindinis mokymosi ir žinių šaltinis bus Stackoverflow.com ir panašios svetainės ;)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 4 savaičių...

Sveiki. Kaip jums The BlueJ? Jei kas praėjot jų Tutorial, kokie atsiliepimai, verta pradėti žaliukui?

 

Aš iš BlueJ knygos pradžioj mokiausi kas yra labai geras practice mano manymu, nes labai lengvai perpranti viska, po to perejau prie Head First Java su eclipse, išties labai naudinga, mano manymu, pradėti su BlueJ, kad visi concept'ai susideliotu į galva ir po to šokti prie Head First Java knygos, priklausomai nuo tempo gali lengviau ir greiciau ikirsti visas subtilybes.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 4 mėnesių...

Gal kas žinote, kur Lietuvoje būtų galima gauti knygą "Head First Java"? Gal kas nors turite nebereikalingą ir parduodate? :s

 

Siaip nesunkiai galima rasti elektronine versija sitos knygos google.lt pagalba, pats siuo budu parsisiunciau. Bet prie to pacio galeciau dar viena gera knyga rekomenduot, "Thinking in Java 4th edition". Jei noresi, prikabinu.

Thinking In Java 4th Edition Dec 2007 Bruce Eckel.pdf

Redagavo Specific
Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 6 mėnesių...
  • po 4 mėnesių...
  • po 2 savaičių...
  • po 9 mėnesių...

Prieš prasidedant universitete JAVA kursui pats "Head First Java" perskaičiau ir 2/3 semestro nebuvo ką veikti paskaitose. Aišku dar papildomai turi domėtis, praktikuotis, kad viską geriau įsisavintum :)

 

O jei tingi skaityti knygas, tai čia preliminarus sąrašas, ką turėtų mokėti advanced Java programmer (radau internete):

 

Language fundamentals:

Statements

Conditional blocks

Loop blocks

Boolean expressions

Variables

Primitive Types

Arithmetic expressions

Literals

Methods

String

Objects

Packages

Arrays

Mathematical functions

Large numbers

Random numbers

Unicode

Comments

Keywords

Coding conventions

 

Classes and objects:

Defining classes

Inheritance

Interfaces

Overloading methods and constructors

Object Lifecycle

Scope

Nested classes

Generics

 

Aggregate:

Collection

ArrayList

Map

Comparing Objects

 

Exceptions:

Throwing and catching exceptions

Checked exceptions

Unchecked exceptions

Preventing NullPointerException

Stack trace

Nesting exceptions (chained exceptions)

 

Concurrent Programming:

Threads and Runnables

Basic Synchronization

Client Server Programming

Remote Method Invocation (RMI)

Enterprise JavaBean Programming (EJB)

Java Spaces Programming (Jini)

 

Annotations:

Javadoc

Introduction to Annotation

Creating custom annotations

Meta-annotations

Helping the compiler

 

Designing user interfaces:

Basic I/O

Streams

Event handling

JavaBeans

Canvas

Graphics

Drawing basic shapes

Drawing complex shapes

Drawing text

Understanding gradients

Applets

Overview

User Interface

Event Listeners

Graphics and Media

 

Reflection:

Reflection Overview

Dynamic Class Loading

Dynamic Method Invocation

Accessing Private Features with Reflection

 

Advanced topics:

Networking

Database programming

Regular Expressions

Libraries, extensions and frameworks

3D programming

Java Native Interface

Invoking C

Byte Code

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 3 mėnesių...
  • po 5 mėnesių...
  • po 1 metų...

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...