Week 1: Flicks
๐ good work, terra! A few notes after checking out the code:
- Consider following the layout id naming conventations in the following guide:
- Consider using string resource, dimens and color xml files for default values.
- Consider including a check to see if the internet is available to detect any network failures. Show an appropriate message in case of failure.
- nice work organizing your source files. consider creating an activity folder as well.
- Good to see you playing around with RelativeLayout. RelativeLayout is one of the most powerful responsive-first layout systems available across web and mobile platforms and provides better control in comparison to a linear layout.
- Nice work handling
onFailure
method in JsonHttpResponseHandler
. Consider adding an error dialog here for the user when a network request fails.
- Nice to see you used the SwipeRefreshLayout for easy stream refreshes
- Great work on using a placeholder graphic during loading.
- Try out the YouTubePlayerView in the future.
- Consider using the ButterKnife library annotations for declaring handles to view objects.
One of the most important part of these projects is that you add additional features and tweak the UI / UX because that will provide many more learning opportunities. I would encourage you to complete the projects each week with required stories early and then spend time adding your own UI elements and experimenting with optional extensions that will improve the user experience.
We have provided a detailed Project 1 Feedback Guide here which covers the most common points we see for this project. Read through the feedback guide point-by-point to determine other ways you could improve your submission. You should consider going back and implementing applicable feedback as well. Keep in mind that one of the most important parts of Android development is learning the correct patterns and conventions.
Hopefully, this first project has given you a better sense of working with RelativeLayout which is a very flexible layout system, probably one of the most powerful responsive-first layout systems available across web and mobile platforms. This assignment also gave us our first introduction to networking, working with APIs and loading remote images. The next assignment will introduce new concept such as accepting user input and navigating between activities but will also reinforce important concepts such as networking, using APIs, handling remote images.
If you have any particular questions about the assignment in general or on any of the feedback, feel free to reply here or slack me at @lita in the Hearsay channel.
P.S. Good to see you properly added the README with features and screenshots to your project as described in the submitting assignments guide! Hopefully, the submit button worked out. Let me know if you ran into any issues.