Hi. COuld you please provide me with a list of sources (both webpages
and good books) that would contain tips on how to **improve
programming (coding) speed**.
It would be better if the source gives ideas for all languages in
general. But a few sources on programming specifically in Java would
also be great.
Any personal tips that you have will also be much appreciated.
Thanks! |
Request for Question Clarification by
mathtalk-ga
on
14 Nov 2003 18:22 PST
Hi, amirehsans-ga:
Do I understand that you are interested in tips on how to improve
speed in writing code? or on how to write code that executes faster?
Also, the price you've offered is commensurate with a single link or
short paragraph. If you're after a more detailed answer, and no
researcher has taken a special interest in your question, you might
consider raising the amount offered. Google Answers provides some
guidelines here:
[Google Answers - How to price your question]
http://answers.google.com/answers/pricing.html
regards, mathtalk-ga
|
Clarification of Question by
amirehsans-ga
on
15 Nov 2003 19:15 PST
Hi. What I mean is: what smart techniques (or tools <preferably free>)
can I use to code faster (so the "task of coding" is done the most
efficient and time-conserving way). So I am not concerned about the
efficiency of the code itself at this point.
Regrading the level of the material, it might help you to know that I
am a second year student in a Software Engineering program. However I
hear people finish writing the program in a fraction of the time I
spend on it.
Also, I read the guidlines, and I have increased the List Price to
$12. Please understand that I am a second year university student; and
even though your help is obviously worth much more to me (and other
students), a higher price is not affordable for me.
YOur help will be much appreciated.
|
Hi,
I have found that you will gain coding speed with more experience, try
doing all the exercises that you are given and follow some tutorials
on the web.
There are lots of tutorials here on the Sun site:
http://developer.java.sun.com/developer/onlineTraining/
I've also found that using a tool such a JBuilder reduces the time to
write code. It has lots of features that make it much easier to spot
mistakes. It takes some time to learn how to use JBuilder, but once
you do, you can write programs in less time than before.
JBuilder personal is free, you can download it from:
http://www.borland.com/products/downloads/download_jbuilder.html
Please note that the documentation from JBuilder is a separate download.
Do not hesitate to ask your tutors or more experienced students for
help. It helps sometimes to have an external view of your problem, and
if someone explains it to you, it can seem easier. Also you could try
devising solutions with a group of friends, from a logical point of
view, then try coding separately, then compare your code, discuss your
problems and mistakes.
If you have a problem with a specific class or function, try and find
an example on the web that uses that class, or you can lookup the way
the class/function works in the API Documentation:
Sun Java API documentation
http://java.sun.com/j2se/1.4.2/docs/api/index.html
Here are also a few books that are generally recommended for beginners
in Java, you should be able to find them, or similar ones at your
school library:
Java in a Nutshell
http://www.amazon.com/exec/obidos/tg/detail/-/0596002831/qid=1069014484/sr=1-4/ref=sr_1_4/104-1415336-1348713?v=glance&s=books
Core Java 2, Volume I: Fundamentals
http://www.amazon.com/exec/obidos/tg/detail/-/0130471771/qid=1069014507/sr=1-13/ref=sr_1_13/104-1415336-1348713?v=glance&s=books
Here are some general programming books for beginners, they have good
reviews on Amazon:
Absolute Beginner's Guide to Programming
http://www.amazon.com/exec/obidos/tg/detail/-/0789729059/qid=1069014699/sr=1-4/ref=sr_1_4/104-1415336-1348713?v=glance&s=books
Beginning Programming For Dummies
http://www.amazon.com/exec/obidos/tg/detail/-/0764505963/ref=pd_sim_books_2/104-1415336-1348713?v=glance&s=books
I hope this helps, if you need any more advice, please do not hesitate
to ask, I'll be more than happy to clarify the answer.
Thank you for using Google Answers.
endo |
Request for Answer Clarification by
amirehsans-ga
on
16 Nov 2003 14:43 PST
Hi endo-ga:
Thanks for taking the time, but I believe your answer is targetted at
the wrong person.
The reason I told you I am in second year is that you would hopefully
understand that I am not a beginner, and that I have done Java coding
before (in high school and in first year) and have obviously used the
Java API and IDE tools like (and specifically JBuilder) extensively
before.
Again, you are right these books are popular and cover the basics (I
have read both of them years ago), but they don't tell you how to look
at the problem in a smart way, and don't give you any tips, tricks or
secrets regarding how to code the fastest and most efficient way.
I would appreciate it if you could "re"-answer this question after
having a better view of your audience in mind.
Thanks for your attention.
|
Clarification of Answer by
endo-ga
on
16 Nov 2003 15:58 PST
Thank you for your clarification.
I don't think there's any book that can tell you 'how to look at a
problem in a smart way' or give you secrets about how to code the in
the 'fastest and most efficient way'. The "secret" is called
experience. The more you code, the easier you'll find solutions to
your problem.
If you have problems devising algorithms or practical solutions to
problems, then I recommend that you think about the program abstractly
first, then try and compare it to another program you've worked on
before. E.g. both programs use the same type of data structures, or
have similar functionality. Once you have something to relate to, this
gives you a starting point.
Secondly, you need to spend some time thinking about your program, its
structure and design. Try and think of the data types you want to use,
and how they should interact. You can use pencil and paper for this.
Just write down everything you think you need for a program, then try
and devise a way you want all these things to interact. Can you use 1
function instead of 2? Can you write 2 small and simple functions
instead of 1 large function? Have you done something like this before
but in an easier way?
Also compare your programs to other students who you believe took less
time than you did. Try and spot differences, is their program shorter
or is it written in a more efficient way? Try and discuss the problems
at hand, and how you took different ways in solving them.
Sites like jGuru and codeGuru feature examples of code done by other
people, usually if you're stuck on a problem, someone has been there
before, you can usually find something similar on those sites.
Java Guru
http://www.jguru.com
Code Guru
http://www.codeguru.com
You might be interested in these books:
1001 Java Programmer's Tips
http://www.amazon.com/exec/obidos/tg/detail/-/1884133320/qid=1069026153/sr=1-3/ref=sr_1_3/104-1415336-1348713?v=glance&s=books
Key Java: Advanced Tips and Techniques
http://www.amazon.com/exec/obidos/tg/detail/-/3540762590/qid=1069026153/sr=1-2/ref=sr_1_2/104-1415336-1348713?v=glance&s=books
Mastering Java 2, J2SE 1.4
http://www.amazon.com/exec/obidos/ASIN/078214022X/ref=nosim/javaworld08-20/104-1415336-1348713?dev-t=DRER5JHG8PV44
I also recommend that you look through the tips on this website:
Java Tips
http://www.javaworld.com/columns/jw-tips-index.shtml
And the tutorials on this website:
IBM developerWorks Java technology
http://www-106.ibm.com/developerworks/views/java/tutorials.jsp
In summary I recommend that you go through as many tutorials as
possible, this will help you grasp techniques and get a better
understanding on how to solve problems. Also compare and contrast
whatever you write with the given solution. Think before writing a
single line of code. You will find that it is much easier to start
coding, if you already have a structure written down and you know what
you?re trying to achieve.
I hope this helps, if you need anymore information, please do not
hesitate to ask. In which case, do you have problems devising
algorithms to problems, or do you have practical problems in writing
code, or are you finding yourself writing a lot of code for nothing?
Thanks.
endo
|
Clarification of Answer by
endo-ga
on
16 Nov 2003 16:12 PST
This is also pretty interesting, it presents problems and their solutions:
Core Java
http://www.javaworld.com/channel_content/jw-core-index.shtml
|