Honestly buying a book, reading it, and do the examples is the best way to learn if you don't know where to start. After you have a basic understanding then look online for examples and tutorials.
Once you feel you are starting to get the hang of it, try writing any program that comes to mind, when you find something in it you can't do, look it up. After awhile you will find you are finishing many programs without looking anything up.