Best Books/online classes - Android

Any thoughts on the best books and/or online classes to learn Java and Android developing.
There is one Android class at a UC school by me but it is $650 for like 6 meetings.
Thanks

1) Best source to get started with Java: http://java.sun.com/docs/books/tutorial/
2) For Android, check out "Busy Coder's Guide To Android"
It's not free, but it's not expensive either ($40 for 1 year subscription and updates).
You get 3 books: basic & advanced Android, together with a tutorial.
If found these books very informative and it helped me alot during my first Android application.
Covers up to Android 2.1 API.

Big Java by Cay Horstman is an excellent book and the one my university recommends for our Software Workshop 1 (Java) module.
We're ranked 5th in the UK for computer science so we can't be that wrong

http://www.anddev.org/
Lots and lots of tutorials.

finally a forum dedicated to this...**** yes im excited. now i know what imma be doing in my spare time at school hahahah. i already was on the forums 24/7....

So, is it alright to step directly to android?
Or is it Java first??

I would say Java first...
Another good book: Professional Android Application Development
And don't forget the tutorials and sample code at http://developer.android.com/resources/samples/get.html

RationalGaze said:
I would say Java first...
Another good book: Professional Android Application Development
And don't forget the tutorials and sample code at http://developer.android.com/resources/samples/get.html
Click to expand...
Click to collapse
The first book above is now into it's second edition which is obviously the one, of the two, to go for given the rate at which Android is changing. I've just bought that & the last edition of Thinking in Java.

Two more great books, they are very good, from the basics up to professional. They are updated with Android version 2 so relatively new:
Apress' Beginning Android 2
http://apress.com/book/view/1430226293
Apress' Pro Android 2
http://apress.com/book/view/1430226595
Oh and Java books are not so mandatory because Android is not REALLY Java, it's Google's own implementation, the basics are Java, but almost
everything is possible without knowing Java and reading these books.

Chapell said:
Oh and Java books are not so mandatory because Android is not REALLY Java, it's Google's own implementation, the basics are Java, but almost
everything is possible without knowing Java and reading these books.
Click to expand...
Click to collapse
The principal programming language for Android is Java. What you mean perhaps is that Android doesn't use the common Java class libraries such as AWT & Swing, but rather its own.
To code effectively you must understand OOP, the Java language & Android's class libraries. There's no way around that.

cauli said:
The principal programming language for Android is Java. What you mean perhaps is that Android doesn't use the common Java class libraries such as AWT & Swing, but rather its own.
To code effectively you must understand OOP, the Java language & Android's class libraries. There's no way around that.
Click to expand...
Click to collapse
Yeah, I know that the programming language is Java. What I mean is if someone has knowledge about OOP and has experience with other programming languages (C++, C#, etc) there is no need to buy a book about Java. Just learn the syntax in 1-2 hour(s). During Android programming you'll be using the Android's classes almost all the time, so it's not the same like really programming some java app from the beginning.

Here is a good set of video tutorials targeted towards programmers that provides a quick down and dirty intro to Android programming and concepts.
http://android.voxisland.com/
I find the biggest challenge having never really learned Java much is learning the Android API. Coming from C the syntax is very familiar.

I am looking to start learning on my own and got this link form Andrew Web.
http://oreilly.com/catalog/0636920001690
Anyone have or heard anything about these videos?

Related

Starting with Android app development

I have very little programming experience, just some in C and C++. But I'd like to start learning how to develop for Android.
Any good books/ebooks which will help me started? Or any guide or anything such?
Ill help you out if you want. Email me [email protected].
i wanted to start too, i just wanted to know if it is harder to learn to program for android than for example to programm with c#. and what's the best way to get started
meaningQo said:
i wanted to start too, i just wanted to know if it is harder to learn to program for android than for example to programm with c#. and what's the best way to get started
Click to expand...
Click to collapse
Just like me...
1. Start with learning Java as a programming language.
Don't waste time on learning how to create GUI in java as it is irrelevant to Android, but make sure you know the basics of how threading works, what collections you can use, learn the java event listeners model (concept only) etc.. Also make sure you're using Eclipse as it would probably be your primary IDE for Android development. For an experienced C++ programmer this step should take no longer than a week.
2. Install the Android SDK (follow http://developer.android.com/sdk/installing.html).
3. Read the developers guide basics.
4. Learn from examples!
The Android SDK comes with many example projects, just add a new Android project in eclipse and choose "from example" in the window that will follow.
There are also many open source Android projects you can learn from.
roee88 said:
1. Start with learning Java as a programming language.
Don't waste time on learning how to create GUI in java as it is irrelevant to Android, but make sure you know the basics of how threading works, what collections you can use, learn the java event listeners model (concept only) etc.. Also make sure you're using Eclipse as it would probably be your primary IDE for Android development. For an experienced C++ programmer this step should take no longer than a week.
2. Install the Android SDK (follow http://developer.android.com/sdk/installing.html).
3. Read the developers guide basics.
4. Learn from examples!
The Android SDK comes with many example projects, just add a new Android project in eclipse and choose "from example" in the window that will follow.
There are also many open source Android projects you can learn from.
Click to expand...
Click to collapse
good advice. but consider IntelliJ as well as Eclipse. i find IntelliJ nicer and faster to use
Another useful thread on this topic is here:
[Q] How did you learn to develop?
http://forum.xda-developers.com/showthread.php?t=1206082
As mentioned there, it would be good to get a general noob dev guide set up on here so that people can get started with developing.
Well i just started learning development in android as well,i have been trying hard to find sources to help me understand until i stumbled upon a gold mine....!
here it is:http://www.youtube.com/user/CornboyzAndroid
http://www.youtube.com/user/mybringback
this guys videos are awesome explains in detail....
Hope this helps all new learners like me,also the user in those videos has been doing this out of his busy schedule for free,if those videos teach you something or help you in anyway then please consider making him a small donation....!
I would also suggest to post your questions (or find answers) on the stackoverflow website (http://stackoverflow.com). It is full of smart guys
Another approach would be to build your apps in html / javascript using frameworks like JQuery, and then use a tool like PhoneGap which will bundle it into an app that will run cross platform
Found another good book:
android application devlopment for dummies.....!
great book see if u can find it,if u dont then let me know i will upload it ...!
its the best book i have seen for android
edit: ok here is a link for the book,i am doing this just because many ppl pmed me to upload it,if the mods feel the link shouldnt exist u can always delete it
http://stor1070.uploaded.to/dl/JnhVLWv0qz
link added to the above post
Thanks for this, good resources.
adicool said:
Found another good book:
android application devlopment for dummies.....!
great book see if u can find it,if u dont then let me know i will upload it ...!
its the best book i have seen for android
edit: ok here is a link for the book,i am doing this just because many ppl pmed me to upload it,if the mods feel the link shouldnt exist u can always delete it
http://stor1070.uploaded.to/dl/JnhVLWv0qz
Click to expand...
Click to collapse
Page not found
Error: 404
I would love to get that book but the link is not good. Thanks anyway.
i will be uploading it tonight then,u will see a link soon
Found the book here for download: http://www.google.com/url?sa=t&sour...s61ws8oFg&sig2=vQS3EtQFTFUaJWLnsmYGXQ&cad=rjt
Sent from my Transformer TF101 using Tapatalk
Ok another few of my good resources as always for laerning android:
Get hold of Android course videos by Plural sight
Android with java essential videos by Lynda.com
Android using essential java by O reilly
adicool said:
Ok another few of my good resources as always for laerning android:
Get hold of Android course videos by Plural sight
Android with java essential videos by Lynda.com
Android using essential java by O reilly
Click to expand...
Click to collapse
I have all 3 . They are really great sources. I've been learning development on android past 2 months.
Sent from my SAMSUNG-SGH-I997 using xda premium
you can also develop apps in adobe air. I have been able to port over some of my flex code into adobe air. You can compile into android, blackberry playbook, and the IOS with flash builder 4.5.1 only problem is flash builder is not free.
I'm currently churning my way through Thinking In Java. There's a free version on the official mindview.net website.
Learning Java as a programming language will pay off in the long run (I believe) as C# shares many fundamental areas with Java and so adapting to it should be easier if you have a good foundation in Java.
If you have previous experience with C++, then Java should not be too big a step for you.
I've heard that all those "Java for Dummies" books are pretty useless as they focus a lot on basic stuff and less on programming structure/patterns, etc.
as for the leap from Java -> Android Apps, I think the official android dev site is pretty sweet.

[Q] Android: How to get started developing learn to develop?

I am very interested in learning how to develop for Android. Could anyone let me know what the best way is to get started I have installed the Java JDK and Eclipse and so far created the Hello World! App as per Google's own how to get started tutorial.
I have no experience programming except very basic HTML (Dreamweaver).
My goal is to learn how to develop for Android, from as much as I know it is Java based, should I learn Java before trying to do anything else, or should I just follow Google's own Tutorial ?
If there are books to get which ones are the best ones to get going? Which websites are the best ones to learn? What other resources should I consider?
I don't mind having to spend a couple dollars, but I have looked around and where I live there are no Java courses available.
You should first learn Java or at least the basics on Object Orientated Programming.
I want to pass you 2 links for video tutorials about Android Programming, maybe will help:
http://www.xtensivearts.com/
http://www.youtube.com/playlist?list=PL34F010EEF9D45FB8&feature=playlist-comment
maximillion82 said:
I am very interested in learning how to develop for Android. Could anyone let me know what the best way is to get started I have installed the Java JDK and Eclipse and so far created the Hello World! App as per Google's own how to get started tutorial.
I have no experience programming except very basic HTML (Dreamweaver).
My goal is to learn how to develop for Android, from as much as I know it is Java based, should I learn Java before trying to do anything else, or should I just follow Google's own Tutorial ?
If there are books to get which ones are the best ones to get going? Which websites are the best ones to learn? What other resources should I consider?
I don't mind having to spend a couple dollars, but I have looked around and where I live there are no Java courses available.
Click to expand...
Click to collapse
Having an understanding of Java will be good, as you'd be more comfortable when writing or understanding the code structure/syntaxes. You can also learn while doing Tutorials on Android, but scope on Java will be limited though. So basically its your choice.
Tutorials from the Android developer website is good. You can also consider going to these websites, as they have some good resources :
Video Tutorials : http://thenewboston.org/list.php?cat=6 (Already specified by above person)
Another set : http://www.vogella.com/articles/Android/article.html
Linux.com's series of Fresh Tutorials : http://www.linux.com/learn/docs
And if you Google for more Tutorials, you'd get more too. Cheers!
djeordje said:
You should first learn Java or at least the basics on Object Orientated Programming.
I want to pass you 2 links for video tutorials about Android Programming, maybe will help:
http://www.xtensivearts.com/
http://www.youtube.com/playlist?list=PL34F010EEF9D45FB8&feature=playlist-comment
Click to expand...
Click to collapse
Much appreciated thank you very much. I'll get started on that right now.

[Q] Learning to develop Android app - should I learn Java first?

I learnt programming a long time ago (20 years ago) and back then I learnt C++. Fast forward to present, I have interest in creating an Android app and started doing some research. I bought some books and watched some video, downloaded Eclipse, etc.
Although I still remember some Object Oriented Programming concepts (Polymorphism, if-else-then loops, etc.), I never fully grasp some of the syntax presented in those study books / videos. This could be because I am a total noob when it comes to Java.
So my question is: is it worth it to learn Java first, completely independent on Android, and THEN learn Android programming?
PS: I did bought some Java books but I don't think some of the things there are applicable to Android. For one, I setup Eclipse with Android SDK and although I can create some Android app (even have it run on my phone! YAY!), I could not figure out how to write, compile and execute Java app in my MacBook (keep throwing a bunch of exceptions).
lanwarrior said:
So my question is: is it worth it to learn Java first, completely independent on Android, and THEN learn Android programming?
Click to expand...
Click to collapse
Of course. You need basic-medium java knowledge to develop your apps. About this...
lanwarrior said:
I don't think some of the things there are applicable to Android
Click to expand...
Click to collapse
It's not true. If something can be done in Java for PC, can be done in Android as well (in the same way, or using the Android way, easier and better, mostly times ).
Any recommendation on a good Java Book that:
- gets me up and running faster, since I am not focusing in developing a PC/MAC based Java app but Android app?
- Make use of Eclipse?
I suggest learning java first before you start app development so that you will understand what you are actually doing while writing the source code
Complete reference java is a good book to make your concepts crystal clear
for android app development tutorial you can refer thenewboston video tutorials and developer.android.com for understanding android os and API
Sent from my GT-S5670 using xda premium
How "deep" should I learn Java first?
I read some Jave books that covers really deep stuff that are over 1000+ pages, and there are books like the "Learn Java in 24 hours", etc.
I am just curious because I have read articles whereby people with no programming experiences had developed iPhone apps in months. I think Objective-C is harder to learn than Java because it does not have some of the great features like garbage collections, etc.
lanwarrior said:
How "deep" should I learn Java first?
I read some Jave books that covers really deep stuff that are over 1000+ pages, and there are books like the "Learn Java in 24 hours", etc.
I am just curious because I have read articles whereby people with no programming experiences had developed iPhone apps in months. I think Objective-C is harder to learn than Java because it does not have some of the great features like garbage collections, etc.
Click to expand...
Click to collapse
Throwing an Android app together is relatively easy, especially if you've got prior programming experience. Between the plentiful tutorials and stackoverflow to help with specific semantics, it's pretty straight forward to get what you want done. However, there's a big difference between getting something done, and getting it done efficiently - that's where having a fundamental grasp of the underlying language comes in handy.
When I was starting out I grabbed a couple different books, from basic Android programming to Advanced Java. I found Learn Java for Android Development to be a very decent read, and it was great for getting me up to speed on Java quickly, without going through basic coding principles I already understood from using other languages (or burying me in deep Java mechanics that I didn't really want or need).
--
Jason
rossja said:
When I was starting out I grabbed a couple different books, from basic Android programming to Advanced Java. I found Learn Java for Android Development to be a very decent read, and it was great for getting me up to speed on Java quickly, without going through basic coding principles I already understood from using other languages (or burying me in deep Java mechanics that I didn't really want or need).
--
Jason
Click to expand...
Click to collapse
Thanks for the recommendation on the book. Seems like a perfect book for me!
lanwarrior said:
I learnt programming a long time ago (20 years ago) and back then I learnt C++. Fast forward to present, I have interest in creating an Android app and started doing some research. I bought some books and watched some video, downloaded Eclipse, etc.
Although I still remember some Object Oriented Programming concepts (Polymorphism, if-else-then loops, etc.), I never fully grasp some of the syntax presented in those study books / videos. This could be because I am a total noob when it comes to Java.
So my question is: is it worth it to learn Java first, completely independent on Android, and THEN learn Android programming?
PS: I did bought some Java books but I don't think some of the things there are applicable to Android. For one, I setup Eclipse with Android SDK and although I can create some Android app (even have it run on my phone! YAY!), I could not figure out how to write, compile and execute Java app in my MacBook (keep throwing a bunch of exceptions).
Click to expand...
Click to collapse
I think u are on the right way.
Please go into android directly.
Do you have a specific idea what you want to create? If no, Get one. I had no idea about Java and Android, only knew visual basic and some c#, but I had an idea what I want to create. And this way i started watching basic tutorials and got some basic information how to do stuff(intents, the thing with the contexts). For me personally, learning the Java stuff was easy, as its really close to what i knew(and you know some c++, which gives you the basics). Simply read a little bit about the control structures and classes and Start making your app. And if you want to know how something works, Google it!
Btw: i am really young, so this shouldnt be a Problem for somebody older.
Gesendet von meinem SM-N9005 mit Tapatalk

Writing in C++ for Android

Hello,
I'm looking for an easy way to write android apps in C++. I'm a begineer and I would apriciate a simple, easy to use metod. How can I do it? (Note: I don't know Java).
Regards,
Igor
Anybody?
You should start doing tutorials first if you have no programming experience. There are a lot of good resources available on YouTube. Search for Bucky and C++. Once you get the hang of it, you can try making some simple stuff.
Put coding programs for android to the side for a bit. Just try to master the language of c++. And then figure out how to code the grograms
Maybe you can start by developing with Qt on pc and then progressively switch to their Android framework .
Phurkus said:
Put coding programs for android to the side for a bit. Just try to master the language of c++. And then figure out how to code the grograms
Click to expand...
Click to collapse
Like this person said OP. Just master it first
In addition of what had been say and which is true, if you're targeting Android specifically, you should learn Java.
If you're going to dev, the language is not really important, when you master three language or more, you should be able to quickly master other needed languages. You should also read a bit about Algorithmic and Objects.
hi
First you need to know JNI,How to call function from c on java and opposite and Java is require !!!
go here : qt.io
windows , android , ios , osx , Linux and more
Definitely take a look at JNI. And this https://developer.android.com/tools/sdk/ndk/index.html
Sent from my XT1254
Is there some kinda ebook for it? ?
Dhruvam said:
Is there some kinda ebook for it? ?
Click to expand...
Click to collapse
Probably, there are ebooks for all sorts of things. Just be sure to understand you won't be able to write Android application in C++ (ok, you will be, but the struggle to call JNI won't be worth the effort). So do you want to learn C++ or to write an Android app?

[Q] Developing for the Android, where to begin?

I am toying with the idea of developing for the Android. It's mostly for fun and to see where it goes. I am a programmer, but do not know Java specifically. If i was to learn Java, i would need to learn it from scratch, but for a programmer, not for a newcomer to the programming field.
I downloaded Android Studio and can follow the guides, but i wonder: Is it better to learn Java first and then Android? Or is it better to learn Android first? And regardless of which, is there a level of basic learning that is "enough" to foray into the other. I ask this because it seems that guides for Android expect one to know Java already. Then again, someone told me he learnt how to do Android, and found Java snippets on the web as he went along.
If there is no specific answer, please lend your advice or personal experience. I am very interested in hearing what other have to say about this.
Do both together
Hey there,
I was a bit worse off than you because the only "programming" experience I had was MS Excel formulas but with some effort now feel pretty good about getting even relatively complicated things working in Android. Basically, I would recommend you learn both Java and Android at the same time.
Here's why:
- you need to get the Android Studio tool set up anyway, and it will do a great job showing you syntax issues and recommending changes as you go. In this way you can rely on Android's developer tools to help you learn basic Java.
- the Internet is chock full of sample code for Android. You can use that as a base, deploy it to a device, change it around, deploy it to a device (or emulator) again, and so on. It will give you both hope and eventual confidence when you're able to see the changes you make in Java actually reflected in an app. It makes it more fun too.
- in the end the majority of your time will be learning the Android SDK frameworks, and I was often able to use the Android documentation examples themselves to teach myself both Java and the Android platform's ins and outs.
Dive in and enjoy!

Categories

Resources