Code Monkey home page Code Monkey logo

amitshekhariitbhu / android-interview-questions Goto Github PK

View Code? Open in Web Editor NEW
10.9K 498.0 2.2K 1.48 MB

Your Cheat Sheet For Android Interview - Android Interview Questions and Answers

Home Page: https://amitshekhar.me

License: Apache License 2.0

Java 54.96% Kotlin 45.04%
cheatsheet cheat-sheets android android-interview-practice android-interview-questions android-interview interview-questions interview-practice interview-prep android-interview-question

android-interview-questions's Introduction

About me

Hi, I am Amit Shekhar, I have taught and mentored many developers, and their efforts landed them high-paying tech jobs, helped many tech companies in solving their unique problems, and created many open-source libraries being used by top companies. I am passionate about sharing knowledge through open-source, blogs, and videos.

Learn from my blogs: amitshekhar.me/blog

Learn from my videos: youtube.com/@amitshekhar

Get High Paying Tech Job: amitshekhar.me

You can connect with me on:

android-interview-questions's People

Contributors

abhi007tyagi avatar amitshekhariitbhu avatar anandwana001 avatar asifrpatel avatar babar-bashir avatar beesham avatar codeshef avatar curiousnikhil avatar df31m4j0rhax0rs avatar ehsanmashhadi avatar eviliana avatar fabiitch avatar fmastale avatar ifhay avatar jayesh83 avatar josiassena avatar jukov avatar karntrehan avatar lawonga avatar masoudfallahpour avatar mishra3452 avatar nishanttala avatar subhadiptech avatar sukhbeer avatar supro-96 avatar surajsahani avatar taruncse avatar truongngoclinh avatar vivekkumarsingh07 avatar yale8848 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

android-interview-questions's Issues

What is AppCompatActivity ?

Hey guys, this README is filled with plenty of wonderful Questions and I think that addition of What is AppCompatActivity ? under Core Android might be helpful ๐ŸŽ‰

Design WhatsApp

What is the right answer for design questions?
Design WhatsApp

Quicksort

The best and average time for quicksort is O(n log(n)), not O(n^2).

Flows blog doubt

In your blog post about Retrofit with Kotlin Flow, you used an API helper class instead of a repository. Was this approach only for the tutorial, or can we also follow it in an actual project? Thank you for your help." @amitshekhariitbhu

Wrong order of the access modifiers

To my knowledge answer to this question: "What are the access modifiers you know? What does each one do?" is wrong.

default is more restrictive than protected because default's scope is within the same class and package whereas the scope of protected is the same class, same package, and other packages as well through inheritance.

So the order of the access modifiers from the least restrictive to the most restrictive should be:
public > protected > default > private

[Critical Issue] Mistake in README file which can mislead a beginner

While reading I found that there was a question under OOPS section that

Can you list 8 primitive types in java?

Present ans:
byte
short
int
long
float
double
char
String
boolean

Expected ans:

byte
short
int
long
float
double
char
boolean

String is not a primitive data type of Java.

This point may mislead a beginner.

"a" instead of "an"

In the very top of the guide, you wrote "A Array" instead of the correct "An Array".

When will we have answers?

This is really awesome! It really helps to prepare for the Android developer interview. When will we have answers? Some questions are hard or too general to me, it's difficult to find the answer.

Thanks

the word is wrong

Parcelable was created to be more efficient then Serializable.
"then" should change to "than".

LinkedList Insert complexity

LinkedList has O(1) complexity only on insertions to a head of the list. Insertions to middle causes traversal that takes O(n)

Hilt

Not updated questions "How does the Hilt work? "

Serialization inaccurate

What is serialization? How do you implement it?

Serialization is the process of converting an object into a stream of bytes in order to store an object into memory so that it can be recreated at a later time while still keeping the objects original state and data. In Java there are two methods of doing this, one is by implementing Serializable or Parcelable.

Parcelable is Android exclusive. Java has Externalizable.

In Android, however, Serializable should never be used in Android.

That's like saying you should never use enums on Android. (You shouldn't use enums to represent an integer or string constant.)

Parcelable was created to be more efficient then Serializable, and performs about 10x faster then Serializable because Serializable uses reflection which is a slow process and tends to create a lot of temporary objects which may cause garbage collection to occur more often.

That's the default if you just stamp Serializable interface onto a class and don't override writeObject or don't implement Externalizable. There's no mention that Parcelable is not as automatic as Serializable.

I Love this Community, but Should We Have More Active Contributors?

@amitshekhariitbhu, I love your work here, and I understand that to maintain the integrity of this project, you probably don't want too many chefs in the kitchen.

This project has helped thousands of people across the world, and I'm sure there are many developers that would love to give back and contribute after having benefited HEAVILY from them (myself included).

Any suggestions on how we can accomplish this moving forward?

A few things I have in mind:

  • I understand that the answers provided by anyone can possibly contain errors, so before submitting, pull requests must be approved by at least 3 developers who are not the owner in order to be merged.
  • Upon reviewing, sources must be included either in the pull request, or by reviewers upon approving, to make sure that the PR is free from error; basically fact-check the PR.
  • Moving forward, if there are trusted devs who have heavily contributed to this project, besides @amitshekhariitbhu, maybe they can also be added as maintainers?
  • Once we have more than one maintainer, a PR can be merged as long as it has met the above requirements OR has been approved by at least one maintainer.

Answered link is not Live anymore

What are "launch modes"? Mindorks
"Mindorks" link is not Live anymore, it showing this error "Cannot GET /android-%60Activity%60-launchmode-explained-cbc6cf996802"

Suggestion on writing style

This is a very useful repository with lots of views on daily basis.

Hence I would suggest increasing readability, it would be great if change questions to bold and keep answers in the normal fonts.

This way it would be easy to distinguish between the two especially with the increase in text size, it will make it much easier for users to read.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.