Recomandare carte
#1
Posted 20 August 2014 - 01:18
Salutare!
După ceva vreme de practicat alte limbaje, mai mult mark-up decât Object Oriented, am hotărât să trec la Java. Cunosc oleacă de C++ dar nu cred că mă ajută efectiv, poate doar ca principii. Aș avea nevoie de sfatul vostru - caut o carte. Un PDF gratuit dacă este dar merge și un 40 / 50 RON pe o carte. Aș dori ceva care să cuprindă tot Java/ul, de la începător până la un mediu dar partea importantă este să fie cât mai nouă și mai adaptată la noile tehnologii. Am găsit o carte foarte bună dar e din 2005 și nu știu cât de bună mai este. Iar cealaltă din 2008 e destul de prost scrisă... Orice sfaturi sunt binevenite. Sper deasemenea că am scris în aria corectă. |
#2
Posted 20 August 2014 - 03:31
Invata programare procedurala in caz ca nu stii deja. Sa te arunci direct la OOP iti va fi mai dificil. Cat despre carti... documentatia Oracle e gratis si destul de completa. Resursa care sa cuprinda "tot" java-ul nu exista. E mult prea vast. Merge orice carte chiar si vechi din 2000 ca mare lucru nu s-a schimbat. (+ la treaba asta)
Sfat: daca nu cumva vrei sa inveti pentru ceva anume mai bine te-ai gandi la alt limbaj. - Pe partea de desktop e destul de mort, Swing arata ca ceva din 2005, JavaFX arata modern (a se citi ce era modern in anu' 2009 ) insa chiar si in ziua de azi tot incomplet e, n-ai clasa de MessageDialog, tre' sa ti-o faci tu. Alte dezavantaje java la programare desktop: utilizatoru' trebuie neaparat sa il aiba instalat. Exista si optiuni de jvm personal insa pe bani, + ca inseamna ca un program ce in mod normal ar avea 4mb in cazul tau va avea 304 mb. - Framework-ul android e cam jegos + xml hell. - Pe partea de enterprise... ei bine iti ia cel putin 3 - 5 ani pana sa te 'dezamortesti'. Inca mai am cosmaruri de cand lucram... Spring (xml hell, mod retardat de a gandi lucrurile), Hibernate (erori peste erori, anotatii idioate si contraintuitive, legaturi bizare intre tabele definite prin anotatii contraintuitive, comportament haotic). Din fericire e sansa pentru tehnologiile standard java ee ca cel putin cu versiunea 7 sunt chiar decente dar firmele tot cu framework-uri 3rd party de 2 lei o dau... sa nu mai zic de 'faimoasele' build tool-uri ). Daca ar fi sa trag o linie (atentie, doar sub java ee) cred ca mai mult am stat sa rezolv erori si sa configurez 'incompatibilitati' decat sa scriu 'business' code in sine Per total e simpatic limbaju' insa mie acum nu imi mai foloseste la nimic. Sunt scribălău freelancer si lumea vrea pehashpeuri, sa nu coste mult la host sau manopera. Sau daca vrea program de desktop vrea sa se miste repede si sa nu fie nevoie sa instaleze alte chestii ca sa mearga. De ceva timp folosesc exclusiv o tehnologie care compileaza direct pt. sistemul de operare. Parca e alta viata cand ai acces ceva mai larg la ce iti ofera OS-ul, poti face programe mai 'speciale', iti faci tu interfata cum vrei, ruleaza mult mai repede etc Edited by potae, 20 August 2014 - 03:34. |
#3
Posted 20 August 2014 - 18:39
Ca și carte Core Java mi s-a părut ok.
potae, on 20 august 2014 - 03:31, said:
- Pe partea de enterprise... ei bine iti ia cel putin 3 - 5 ani pana sa te 'dezamortesti'. Inca mai am cosmaruri de cand lucram... Spring (xml hell, mod retardat de a gandi lucrurile), Hibernate (erori peste erori, anotatii idioate si contraintuitive, legaturi bizare intre tabele definite prin anotatii contraintuitive, comportament haotic). Din fericire e sansa pentru tehnologiile standard java ee ca cel putin cu versiunea 7 sunt chiar decente dar firmele tot cu framework-uri 3rd party de 2 lei o dau... sa nu mai zic de 'faimoasele' build tool-uri ). Daca ar fi sa trag o linie (atentie, doar sub java ee) cred ca mai mult am stat sa rezolv erori si sa configurez 'incompatibilitati' decat sa scriu 'business' code in sine |
#4
Posted 20 August 2014 - 19:44
Eu citesc Atac la Java, 2006 Teora, poate o gasesti la biblioteca. E scrisa intr-un stil mai altfel. Nu am pdf din pacate.
|
#5
Posted 20 August 2014 - 23:51
Mulțumesc de sfaturi potae și de recomandare republicall. O să caut, văd, poate găsesc cartea.
|
#6
Posted 20 August 2014 - 23:59
m3th0dman, on 20 august 2014 - 18:39, said:
Se pare că n-ai prea înțeles cum se folosesc Spring și Hibernate... Ba da. Bottom line sunt niste porcarii fara de care se poate face treaba la fel de bine. Doar ca din pacate companiile iubesc "procesele" si birocratia. Drept dovada: cate startupuri folosesc java? majoritatea isi fac site-ul sau aplicatia in php, python, perl. Iarasi: cate din site-urile/aplicatiile de top folosesc java? Mai niciunul. Facebook tehnologie proprie, Google tehnologie proprie, Amazon tehnologie proprie samd sau folosesc chestii de nisa gen Erlang sau mai stiu eu ce chestie obscura. In concluzie: prea bulldozer pentru ceva 'homemade', insa mult prea slab pentru ceva high performance. Asta e doar parerea mea, si eu eram fanboy java candva insa mi-am scos capul din rect si am acceptat faptul ca tehnologii la care radeam fac acelasi lucru ca si java doar ca mai repede, mai simplu si unele chiar mai bine |
#7
Posted 21 August 2014 - 13:27
Daca ai deja putina experienta in programare, incearca Thinking in Java:
http://www.saeedsh.c...Java 4th Ed.pdf Edited by xyv123, 21 August 2014 - 13:27. |
#8
Posted 21 August 2014 - 21:30
potae, on 20 august 2014 - 23:59, said:
Drept dovada: cate startupuri folosesc java? majoritatea isi fac site-ul sau aplicatia in php, python, perl. Iarasi: cate din site-urile/aplicatiile de top folosesc java? Mai niciunul. Facebook tehnologie proprie, Google tehnologie proprie, Amazon tehnologie proprie samd sau folosesc chestii de nisa gen Erlang sau mai stiu eu ce chestie obscura. In concluzie: prea bulldozer pentru ceva 'homemade', insa mult prea slab pentru ceva high performance. Java e una dintre tehnologiile cele mai folosite la Google, daca nu cea mai folosita. Daca motorul performant de cautare e in C/C++, partea de logica a programelor e scrisa in Java (Gmail, Apps, plus ca e la baza google app engine). Si amazon foloseste masiv Java. Si ebay. Si nu mai e de mult "mult prea slab". Nici macar slab. Daca tu ai incercat sa inveti Java ca sa te faci freelancer, tzeapa, asta e... @OP: al 7-lea simt imi spune ca nu stii engleza... invat-o! .. ca nu faci nimic fara ea... Edited by MrReason, 21 August 2014 - 21:32. |
#9
Posted 21 August 2014 - 23:19
Google foloseste python
Quote Google uses Python for many tasks including the backends of web apps such as Google Groups, Gmail, and Google Maps, as well as for some of its search-engine internals La fel si reddit, yahoo groups, youtube java practic e inexistent inafara corporatiilor. Nu ai motiv real sa folosesti asa ceva cand ai alternative mult mai bune. Quote
Java is mostly an “industry” language aiming at controlling the level of work and thus innovation from current coders. A good idea to maintain control over the salary and the production work of the “doers” as opposed to the “thinkers”. But generally in situation of Web coding or social interactions on the network, java thinking is more a handicap than a promise to agility of thoughts. I believe also that Android platforms and others will do less with native applications. The browser will be the rule. HTML5 and flat dbs with rest/json connection is the perfect balance. Even Twitter or Facebook messaging applications are a real pain in the UI comparing to their equivalent on the browser. IMHO, as we are progressing, light and purposeful tools and languages will continue to keep out java pure industrial devs and managers from a sensible approach to the Web and the Internet. It’s just not their playground of choice. + ca m-am referit pentru el la treaba cu freelancieru'. Eu nu mai lucrez cu asa ceva de cativa ani. Fac bani cu capu' acuma, nu cu 'carca' . Daca iti arat printscreen la cont de adsense cu 4000 euro doar pe o luna, culmea, a unei persoane care habar nu are programare cred ca te apuca tremuratu' ), iti distrug pe veci visele de corporatie LE: oh noes, si instagram tot pythong?! http://instagram-eng...ances-dozens-of Edited by potae, 21 August 2014 - 23:23. |
#10
Posted 22 August 2014 - 03:12
potae, on 21 august 2014 - 23:19, said:
Google foloseste python Grosul de business logic e in Java. Ca sa nu o ardem cu presupuneri: I would not say Python was ever "hot" at Google, but it remains one of our official languages, alongside C++, Go, and Java. Python is used for scripting and prototyping purposes. Core projects are generally in one of C++ or Java. autor: Robert Love, I work at Google on web search http://www.quora.com...id=3h5J&share=1 There is no single programming language. Google has a very open development environment with many different service APIs. Java, Javascript, C++, Python, Go, Sawzal (a custom logging language), and probably a few other languages are supported. Search is mostly based on C++ and some Python. Ads is a Java/SQL stack. Google Apps is a Javascript/Java/C++ stack. autor: Software Engineer III at Google India http://www.quora.com...-use-internally As David Petrou mentions, C++, Java, and Python are the most prevalent. C++ generally powers compute-intensive back-end services, Java (and a wealth of libraries including servlets, Guice, and Guava) is often used for application logic, and many scripts are written in Python. Parts of YouTube are written in Python as well as some App Engine applications. Java For most standard applications, Java is a perfectly fine language. It features great tools, lots of existing libraries, and not a lot of time spent debugging. Java is used for a lot of bigger websites that would be much more difficult to maintain in a lower-level language like C or C++. For example, my understanding is that GMail is written in Java. Also, note that you can use Google's Web Toolkit to compile Java code into Javascript. So that awesome webpage or widget you see might have began life as a Java class. Python Python is a fantastic general purpose language, but doesn't offer as much fine-grained control as even Java. http://programmers.s...usage-at-google autor: I used to work at Microsoft on the F# team. Now I kick it old school at Google. http://programmers.s...usage-at-google potae, on 21 august 2014 - 23:19, said:
Eu nu mai lucrez cu asa ceva de cativa ani. Fac bani cu capu' acuma, nu cu 'carca' . Daca iti arat printscreen la cont de adsense cu 4000 euro doar pe o luna, culmea, a unei persoane care habar nu are programare cred ca te apuca tremuratu' ), iti distrug pe veci visele de corporatie LE: oh noes, si instagram tot pythong?! http://instagram-eng...ances-dozens-of Pls. lasa copilariile. |
|
#11
Posted 22 August 2014 - 23:33
potae, on 20 august 2014 - 23:59, said:
Ba da. Bottom line sunt niste porcarii fara de care se poate face treaba la fel de bine. + multe altele precum Spring Integration, Data, Rabbit, MVC, Batch, Cache ș.a.m.d. potae, on 20 august 2014 - 23:59, said:
Doar ca din pacate companiile iubesc "procesele" si birocratia. Drept dovada: cate startupuri folosesc java? potae, on 20 august 2014 - 23:59, said:
majoritatea isi fac site-ul sau aplicatia in php, python, perl. potae, on 20 august 2014 - 23:59, said:
Iarasi: cate din site-urile/aplicatiile de top folosesc java? potae, on 20 august 2014 - 23:59, said:
Mai niciunul. Facebook tehnologie proprie, Google tehnologie proprie, Amazon tehnologie proprie samd sau folosesc chestii de nisa gen Erlang sau mai stiu eu ce chestie obscura. In concluzie: prea bulldozer pentru ceva 'homemade', insa mult prea slab pentru ceva high performance. Asta e doar parerea mea, si eu eram fanboy java candva insa mi-am scos capul din rect si am acceptat faptul ca tehnologii la care radeam fac acelasi lucru ca si java doar ca mai repede, mai simplu si unele chiar mai bine Toate folosesc masiv Java; toate trebuie să proceseze date masive pentru care folosesc Hadoop; nu prea există alternativă serioasă la Hadoop. De exemplu Facebook - http://borthakur.com...pSigmod2011.pdf |
#12
Posted 23 August 2014 - 12:10
MrReason, on 21 august 2014 - 21:30, said:
@OP: al 7-lea simt imi spune ca nu stii engleza... invat-o! .. ca nu faci nimic fara ea... Ei bine, al șaptelea simț se înșală. Am făcut facultatea în engleză și Sâmbătă plec în Irlanda, pentru un an de școală. Deci engleza mea este cea mai mică problemă aici. |
#13
Posted 23 August 2014 - 16:04
ArgumentAbstract, on 23 august 2014 - 12:10, said:
Ei bine, al șaptelea simț se înșală. Am făcut facultatea în engleză și Sâmbătă plec în Irlanda, pentru un an de școală. Deci engleza mea este cea mai mică problemă aici. Te uiti la descrieri, vezi cam cui se adreseaza, etc. .... sper ca nu vrei sa-ti aratam si de unde sa le descarci... |
#14
Posted 23 August 2014 - 23:44
Sunt sute de cărți de Java pe internet. De descărcat una știam și eu. Dar mă gândeam că știe cineva de aici una anume pe care să mi-o recomande. Doar fiindcă-i pdf, fiindcă-i despre Java și se poate descărca nu o face o carte bună.
|
#15
Posted 24 August 2014 - 15:16
fiecare carte e buna in felul ei. nu o sa inveti java sau oricare alta tehnologie doar dintr-una. deci alege-ti orice. sau si mai bine direct documentatia oracle ca tot din ea sunt scrise si cartile.
|
|
#16
Posted 24 August 2014 - 15:22
ArgumentAbstract, on 20 august 2014 - 01:18, said:
Aș dori ceva care să cuprindă tot Java/ul, de la începător până la un mediu dar partea importantă este să fie cât mai nouă și mai adaptată la noile tehnologii. Citeste din cat mai multe, tot din atatea nu vei intelege cate ceva, ulterior vei reveni cand vei mai acumula, la mine poate sa prinda una iar la tine nu si tot asa. Daca era o astfel de carte toti erau specialisti dintr-o simpla lecturare ori stii bine ca nu e asa. Ca sa intelegi noile tehnologii ai nevoie si de cele vechi, acestea din urma sunt baza pentru celelalte. Edited by neagu_laurentiu, 24 August 2014 - 15:29. |
#17
Posted 10 September 2014 - 11:52
Salut,
Mă confrunt și eu cu o problemă similară (găsirea unei surse bune pentru un începător, și când zic începător, zic blană/tufă/praf/n00b, cum vreți să îi spuneți). După ce am tot citit pe net, am ajuns la concluzia că voi începe cu Head First Java 2nd Edition Întrebările mele sunt următoarele: 1. Cartea e scrisă pe când ultima versiunea era Java 1.5 (Java 5/Tiger) - e vreo problemă dacă învăț asta? s-au schimbat multe până la Java 7/8. Înțeleg că 7/8 au multe lucruri în plus, dar presupun că „nucleul”/sintaxa este undeva asemănătoare. Am downloadat sdk-ul jdk-1_5_0_22-windows-i586-p.exe de aici. Înțeleg că e pentru 32 biți, există și pentru 64? ... 2. Cartea nu recomandă folosirea vreunui progrămel gen Eclipse, ci un editor de text normal, pentru a învăța cum să îți faci singur indentările. Aici am o problemă în sensul că de fiecare dată când compilez cu „javac program.java” îmi pune fișierul „program.class” la calea: C:\Users\<Nume user>\AppData\Local\VirtualStore (folosesc Windows 7) În mod normal, știam că ar trebui să pună fișierul *.class în același folder cu fișierul *.java .... Există o modalitate de a schimba calea default? Comanda „javac -d” am înțeles că se folosește pentru a specifica destinația fișierului *.class pentru fiecare în parte. Mulțumesc anticipat. |
#18
Posted 10 September 2014 - 13:16
1. nu e nici o problema, java s-a schimbat prea putin. Sintaxa e 100% la fel.
2. mai bine folosesti eclipse. in realitate nu stai sa compilezi manual alea. Daca esti incepator si nu stii programare deloc mai bine incepi cu ceva procedural ca C. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users