Nic good info. Do you know open source projects that a new java developer can contribute, I would like to do the same? Thanks,
From: [email protected] [mailto:[email protected]] On Behalf Of Nic Fox Sent: Thursday, December 10, 2009 11:28 PM To: [email protected] Cc: [email protected] Subject: Re: [java programming] how to become a hardcore programmer Hi The best thing to do to work on large applications is to either get a developer job in an organisation or to contribute to an open source project. Most jobs in Java development these days seem to require J2EE/Java EE, and usually that also means familiarity with SQL/database technologies, and HTML/CSS is also required. It is also common to see Struts, Spring, JBoss or ZK frameworks being employed which extend Java EE capabilities. Hibernate is another popular framework used for implementing persistence/database features. There are quite a few other frameworks-I've just listed the ones that I see most often in job adverts for Java developers-so you might like to look at others such as Google Web Toolkit and Tapestry for example. The use of algorithms or maths really depends on the type of programming you intend to do. You would find them used more in fields like games, simulation, scientific applications, artificial intelligence and statistical analysis. Proof of correct operation and application efficiency are also areas where maths and knowledge of algorithms count. Boolean logic is pretty important to computer programming in general, so it's always good to have an understanding of that no matter what you do in programming. Another useful thing to practice is coding existing algorithms or mathematical formulas in Java, because you will often be applying existing algorithms or theory anyway. If you're looking for more general skills to gain as a developer I suggest finding out more about the following: - Design principles: - don't repeat yourself (DRY) - "keep it simple, stupid" (KISS) and "you aren't gonna need it" (YAGNI) - tight cohesion - loose coupling - favour composition over inheritance - encapsulate what varies - UML: good for building models of class/object relationships and interactions, as well as the flow of program logic. - Design patterns: I can't offer much advice as these can be hard to understand and I've only scratched the surface in learning these myself. They are ways of implementing common programming tasks. You will find knowing about abstract classes, interfaces and UML to be handy in learning about design patterns. Cheers Nic On 11/12/2009, at 7:40 AM, Rammohan Vadlamani wrote: Hi all, I have been practising java programming for the past one year and have learnt pretty much of it. But I want to program really big stuff. Can any one tell me how should I proceed. I have also heard that algorithms and mathematics play a big role in programming. Can any one let me know the significance of algorithms and maths in the field of computer programming. Rammohan -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaprogrammingwithpassion?hl=en -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaprogrammingwithpassion?hl=en CONFIDENTIALITY NOTICE - This e-mail transmission, and any documents, files or previous e-mail messages attached to it, may contain information that is confidential. If you are not the intended recipient, or a person responsible for delivering it to the intended recipient, you are hereby notified that you must not read this transmission and that any disclosure, copying, printing, distribution or use of any of the information contained in or attached to this transmission is STRICTLY PROHIBITED. If you have received this transmission in error, please immediately notify the sender by telephone or return e-mail and delete the original transmission and its attachments without reading or saving in any manner. -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaprogrammingwithpassion?hl=en
