martasmith / InstagramViewer

This app displays the most popular Instagram photos
1 stars 0 forks source link

InstagramViewer app initial submission for grading #1

Open martasmith opened 9 years ago

martasmith commented 9 years ago

This is my initial submission of the InstagramViewer app, ready for grading. It contains all the required elements and some advanced optionals as well. I will likely make another submission tomorrow to complete the most of the advanced optionals, just for the purpose of my portfolio. @nesquena @thecodepath

codepathreview commented 9 years ago

:+1: nice work, Marta. A few notes after checking out the code:

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 continue completing 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 email us support@thecodepath.com.

Best, PT

P.S. Good to see you properly added the README with features completed and GIFs to your project as described in the submitting assignments guide!

martasmith commented 9 years ago

Thank you so much for the thorough and valuable feedback. It is much appreciated. I spent some time today implementing your suggestions, but I have a question about the following point:

"Consider implementing your JSON deserializing logic in your InstagramPhoto() object."

Can you please elaborate on this? Why is this a good practice and is there an example of how should this be done? I spent some time searching Google for answers and it mentions some Android libraries that do this, such a GSON. Is this what you are referring to? Or do I need something simpler that is manually implemented?

Thank you in advance, Marta

On Wed, Sep 17, 2014 at 2:12 AM, codepathreview notifications@github.com wrote:

[image: :+1:] nice work, Marta. A few notes after checking out the code:

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 continue completing 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 https://gist.github.com/nesquena/67a195af43a981f3827d which covers the most common points we see for this project. Read through the feedback guide point-by-point https://gist.github.com/nesquena/67a195af43a981f3827d 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 email us support@thecodepath.com.

Best, PT

P.S. Good to see you properly added the README with features completed and GIFs to your project as described in the submitting assignments http://courses.codepath.com/courses/intro_to_android/pages/submitting_assignments guide!

— Reply to this email directly or view it on GitHub https://github.com/martasmith/InstagramViewer/issues/1#issuecomment-55868158 .

codepathreview commented 9 years ago

Hi Marta,

Good job working on the feedback. I was referring to the following:

http://guides.codepath.com/android/Converting-JSON-to-Models

Basically, right now the parsing logic lies in the handler of the activity, but this is not reusable and the best practice is it should be implemented in the model object itself.

So in short, your code would be simplified and reusable.

Your handler would look like:

InstagramPhoto photo = new InstagramPhoto.fromJson(photoJson);

The fromJson method will de-serialize your JSON into a model object.

If you have multiple activities needing your model object, it's easier to handle it.

Also, unit testing wise it will come in handly.

Let me know if you need any other info..

Best, Prerak

martasmith commented 9 years ago

Thank you so much! This info should be sufficient. I will work on implementing this.

On Wed, Sep 17, 2014 at 4:48 PM, CodePath Reviewers < notifications@github.com> wrote:

Hi Marta,

Good job working on the feedback. I was referring to the following:

http://guides.codepath.com/android/Converting-JSON-to-Models

Basically, right now the parsing logic lies in the handler of the activity, but this is not reusable and the best practice is it should be implemented in the model object itself.

So in short, your code would be simplified and reusable.

Your handler would look like:

InstagramPhoto photo = new InstagramPhoto.fromJson(photoJson);

The fromJson method will de-serialize your JSON into a model object.

If you have multiple activities needing your model object, it's easier to handle it.

Also, unit testing wise it will come in handly.

Let me know if you need any other info..

Best, Prerak

— Reply to this email directly or view it on GitHub https://github.com/martasmith/InstagramViewer/issues/1#issuecomment-55977809 .

codepathreview commented 9 years ago

You can implement this in future projects, not necessarily needed for this one :)