Today I want to share with you my free translation of an article written by Sergey Povzner. Sergey runs the blog bongizmo.com and develops tourist guides under the general name Citybot .As Android continues its incredible
growth , more and more programmers are starting to develop applications on this platform. If you start your journey today, then you are definitely lucky. In recent years, Android has matured significantly and got rid of many childhood diseases. Information on the platform is more than enough. I will tell you about the most important resources.
The article will be useful both for beginners and experienced developers. This is a guide to the world of Android development.
Books
It may seem that learning a new platform from books these days is a very obsolete way, and you may be right. But you still have to do it - look at the article by Jeff Atwood.
Programmers do not read books - but you must .
')
I recommend these two books:
- The Busy Coder's Guide to Android Development , written by Mark Murphy . Deep coverage (over 2000 pages) and regular updates make this book special. Of course, this is the best model for a book that talks about such an actively developing topic as the Android SDK. Subscribers have the opportunity to ask Mark questions during open hours. Examples from the book are available on the githaba . Mast Reed!
- Smashing UI by Juhani Lehtimaki . Great book for any Android developer who cares about good UI design.
developer.android.com
Before you start writing your first application, carefully study
Android Design . Especially these articles:
Be sure to take a look at the
downloads section - there you can find templates and source codes for various icons and widgets.
Well? Ready to write code? Sorry, we continue to read:
Stackoverflow
Google engineers, as well as experienced programmers regularly answer interesting questions. Here are the
top best Android experts on Stackoverflow. I’m subscribed to many people’s RSS feeds, here are some of them:
CommonsWare (Mark Murphy),
Dianne Hackborn ,
Romain Guy ,
Reto Meier ,
Trevor Johns ,
Roman Nurik ,
Adam Powell .
Blogs
In many blogs, you can pick up very useful and relevant information:
- Android Dev Weekly . The author is Jyuri Grell . Great weekly news from the world of Android. Highly recommend.
- The official blog of Android developers. It is worth digging in old posts - many are of interest, for example: How to avoid memory leaks, memory analysis of Android applications
- Romain Guy (Romain Guy). Excellent blog of a key engineer of the Android platform. Once you are comfortable with the development, be sure to read the Android Performance Case Study . Using the example of one twitter client, the author examines various aspects of the application performance analysis. Offtop: besides, Romain is also an excellent photographer .
- Creator of the Android animation framework, Chet Haase, runs the Codependent blog
- The CommonsBlog Mark Murphy (Mark Murphy)
- Blog Android developer Cyril Mottier (Cyril Mottier). Fantastic blog with very deep articles. Among the last: Tips on using ListView # 5: increase the area of ​​depression , Tweets about Android development , Utopia of the second version of the Google Maps API , About the right approach to launching the application , Pull-to-refresh: antipattern .
- We decorate Android (Styling Android) with Mark Allison.
- Coder Thoughts (Coding Thoughts), led by Daniel Lew - notes from Expedia Hotels & Flights app developer
Google+
Despite the fact that Google+ has not become a social network, for us it is a valuable source of information on Android. Here are a few people to look out for:
Tor Norbye (ADT),
Dianne Hackborn ,
Romain Guy ,
Chris Banes ,
Roman Nurik ,
Nick Butcher ,
Adam Powell ,
Rich Hyndman ,
Cyril Mottier ,
Paul Burke ,
Jeff Gilfelt .
Be sure to round out Jake Wharton. Jake gave us ActionBarSherlock, ViewPageIndicator, NineOldAndroid and
many other open source libraries for Android.
Also, you can join these communities in the same Google+:
Open Source: projects
Reading someone else's code is a useful activity. Especially when it comes to:
- Google I / O application. If you want to copy something, there is no better place to find.
- Photup by Chris Baines (Chris Banes)
- Android prototypes: deep dive into Location by Reto Meier. The application demonstrates the use of location, fragments and backup manager. Use neatly - the code has not been updated for some time.
Well, of course, the infinite source:
Android source code .
Open Source: Libraries
Here are some of the most useful libraries:
- ActionBarSherlock by Jake Wharton. A library that allows you to use the native action bar on fours and custom on twos, using the same API and theme.
- ViewPagerIndicator by Jake Wharton. Library widgets are compatible with the ViewPager from the Android Support Library and with ActionBarSherlock. Used to improve navigation.
- NineOldAndroids by Jake Wharton. Allows you to use the Honeycomb Animation API on the earliest versions of Android.
- Universal-Image-Loader by Sergey Tarasevich ( nostra ). A powerful and flexible tool for asynchronous loading of images, caching and displaying them on the screen.
- UrlImageViewHelper from Koushik Dutta. Automatically inserts in ImageView image uploaded on the link. Able to save and cache.
- Android BitmapCache by Chris Baines (Chris Banes). Special cache for working with Bitmap objects.
- DiskLruCache by Jake Wharton. Java implementation of LRU cache on a disk oriented for compatibility with Android.
If you are still small, look for a
githaba . Also,
DevAppsDirect is a great collection of open-source views, widgets and libraries.
Lectures with Google I / O
Getting a ticket to Google I / O has become almost impossible. But all performances are available online (usually even with slides). Here are links to sessions of different years:
2012 ,
2011 ,
2010 ,
2009 .
Here are some of my favorite lectures:
Please stop! You're scaring me
If the article seems to be a little scary, do not despair. Some links will be useful only for beginners, while others may be interesting for developers of all levels who want to create the coolest Android applications.
A few tips on how to master it all effectively:
- First, read the books. Did I mention that you should read books? This will lay the right foundation in knowledge of the Android platform.
- Subscribe to blogs and RSS responses from stackoverflow.
- Create an Android-dev-circle on Google+
Android stars
Talented developers make a great contribution to the prosperity of the Android ecosystem. Among them, I would especially note two. These guys have played a huge role in making the life of an ordinary Android developer easier. I'm talking about
Mark Murphy (Mark Murphy) and Jake Wharton.
Mark and Jake have earned life-long unlimited beer for their biggest and rewarding contribution to Android open source. If you ever meet them, be sure to buy them something to drink at their choice. [amendment to comments from the original post: Mark’s beer is better to give Chris Bane, and Mark’s
subscription to his book will be the best reward for him.]
Of course, let's not forget the Android developers and designers from Google, who did a great job on Android. Some of them have been mentioned above.
End finally
That's all friends. Now you have everything to do the coolest apps! Well, not really: you still need a cool designer, but this is a topic for a separate post. But what can be said now for sure - you are ready to write your first Android application.
Happy coding!
PS: I am not a translator, and Russian is far from my very strong side. I just want this great article to be on Habré. Therefore, please write comments about all errors (spelling, grammatical and stylistic) in a personal. I will try to fix everything quickly.