Notes![what is notes.io? What is notes.io?](/theme/images/whatisnotesio.png)
![]() ![]() Notes - notes.io |
A. Read the oxford dictionary... Really?? No you learnt english reading novels and watching movies.
Q. Best way to learn Java!!
A. Don't go on reading a book/dictionary.
Q. Then How do I learn Java?
A. Before that lets answer this, Why do we fail sir? Because we give up.
The biggest problem in learning a new language is giving up. People give up before they are productive enough to enjoy the fruits. So you need to make sure that you are productive before your patience runs out.
How.
First, take a book on java (any book that teaches java 7/8), read through, like you read a novel (not like a school book, don't mug up). Finish this in a week. Not the complete book, just as much as you can. But you are reading a novel, haven't you finished novels in a week?
Then, Secondly, Don't do those stupid number problems/trick programs/ascending/descending/sorting/searching/hashing... etc. Just Don't. You shall do them in a introductory programming course + Algorithms course, not when learning a new language. Besides these things don't make you ready for industry or personal projects. If you don't have introductory programming+basic math skills learn them first. And don't concentrate on corner cases, you learn about corner cases when they arise in your projects, not before.
Pick up a small project, something you want to do. Don't go big. You are not Tony stark so don't try making Jarvis. I did a sudoku and then a website downloader (crawls through the site and downloads each page, simplified version of httack). In the website downloader I learnt to use AVL trees + Java I/O + Folder management + Networking.
Q. Wouldn't it take long time to learn AVL trees + Java I/O + Folder management + Networking??
A. Yes, and probably your patience will reach it's end before you have made a small project.
Q. So what to do?
A. Use libraries, They make your life easier, they let you be productive before you give up. Why reinvent the wheel? I uses apache commons I/O and networking libraries. JDK itself comes with great libraries for data structures, use them.
Q. Now what?
A. Now that you have done a small project, you probably feel confident. start writing bigger projects. Or just improve your small project, make it big. Think new features you can implement in your small project and do it. Going by the same website downloader, try implementing filters. Filters based on hyperlinks will teach you regex use. Make a GUI for it, you will learn Java swing.
Q. Done that, what's next?
A. Now you have probably realised that your code is not manageable, its unreadable and you are having a hard time adding new features. You have common code that could have been put in a single place.
This is when you start thinking about inheritance/OOP features, about making common code as library. You think about using design patterns and frameworks. Consider using Play or Spring framework , or look into other design patterns and frameworks that suit your task.
Now keep doing new projects, keep adding on your old projects, learn about the good practices followed and look into the libraries you are using. Learn about data structures and algorithms too. Your aim must be to be more productive, Never show off. The day you start showing off you will fall.
You will make a great programmer (Not just a java programmer).
![]() |
Notes is a web-based application for online taking notes. You can take your notes and share with others people. If you like taking long notes, notes.io is designed for you. To date, over 8,000,000,000+ notes created and continuing...
With notes.io;
- * You can take a note from anywhere and any device with internet connection.
- * You can share the notes in social platforms (YouTube, Facebook, Twitter, instagram etc.).
- * You can quickly share your contents without website, blog and e-mail.
- * You don't need to create any Account to share a note. As you wish you can use quick, easy and best shortened notes with sms, websites, e-mail, or messaging services (WhatsApp, iMessage, Telegram, Signal).
- * Notes.io has fabulous infrastructure design for a short link and allows you to share the note as an easy and understandable link.
Fast: Notes.io is built for speed and performance. You can take a notes quickly and browse your archive.
Easy: Notes.io doesn’t require installation. Just write and share note!
Short: Notes.io’s url just 8 character. You’ll get shorten link of your note when you want to share. (Ex: notes.io/q )
Free: Notes.io works for 14 years and has been free since the day it was started.
You immediately create your first note and start sharing with the ones you wish. If you want to contact us, you can use the following communication channels;
Email: [email protected]
Twitter: http://twitter.com/notesio
Instagram: http://instagram.com/notes.io
Facebook: http://facebook.com/notesio
Regards;
Notes.io Team