It makes Android development much easier 3. Seamlessly with IDE (Mature language with great IDE) 4. Modern language feature 5. From Startup to Fortune 500 already used in production 6. Kotlin is Multiplatform 7. Work very well with Java code base or Java libraries 8. Google fully support Source: https://antonioleiva.com/reasons-kotlin-android/
not Prefer to immutable String java = "Java Language" Java , Kotlin val kotlin = "Kotlin Language" ⭐ By default, you should strive to declare all variables in Kotlin with the val keyword
w o rd o b j e c t d e c l a r a t i o n ( s i n g l e t o n l i k e s t a t i c ) c o m p a n i o n o b j e c t s o b j e c t e x p re s s i o n ( a n a l o g o u s t o J a v a a n o n y m o u s c l a s s e s )
y m o d i f i e r Modifier Class Member Top-Level Declaration Public (Default) Visible Everywhere Visible Everywhere Internal Visible In a Module Visible in a Module Protected Visible in Subclasses -- Private Visible in a Class Visible in a File
c e o r I m p l e m e n t K o t l i n u s e s t h e c o l o n ` : ` a f t e r t h e c l a s s n a m e t o re p l a c e b o t h t h e e x t e n d s a n d i m p l e m e n t s k e y w o rd s u s e d i n J a v a
i f i e r i n a c l a s s Modifier Corresponding Member Comments Final Can’t Be Overridden Used By Default For Class Members Open Can Be Overridden Should Be Specified Explicitly Abstract Must Be Overridden Can Be Used Only In Abstract Classes; Abstract Members Can’t Have An Implementation Override Overrides A Member In A Superclass Or Interface Overridden Member Is Open By Default, If Not Marked Final
f u n c t i o n Ability to extend a class with new functionality without having to inherit from the class or use any type of design pattern such as Decorator Source: https://kotlinlang.org/docs/reference/extensions.html
c t i o n I n l i n i n g i s a n a t t e m p t t o re m o v e ( o r re d u c e ) t h e r u n t i m e o v e r h e a d o f l a m b d a f u n c t i o n s b y m o v i n g ( o r i n l i n i n g ) t h e h i g h e r o rd e r f u n c t i o n a n d i t s l a m b d a a rg u m e n t b o d y t o t h e c a l l - s i t e S o u rc e : h t t p s : / / m e d i u m . c o m / t o m p e e / i d i o m a t i c - k o t l i n - i n l i n e - f u n c t i o n s - e 3 9 b 2 f 9 0 a 2 9 1
e r n ( S e p a r a t i n g t h e W h a t F ro m t h e H o w ) Source: https://speakerdeck.com/jakewharton/testing-robots-kotlin-night-may-2016 Page Object?