Android using Kotlin Industrial Training and Online Classes by Deepak Smart Programming
Introduction
Course Syllabus
We are living in an era where we can't servive without the mobile phones. With the huge growth in mobile computing, the concept of simple phone is totally repaced by smartphone. Android is the well known and the best platform to develop various mobile applications for the devices . For the change in mobile computing now a days developers are moving to the platfom that is kotlin a language that is simple and easy to use and develop the mobile applications. They are using by the number of companies now a days. if you are interested to enroll your self with the best do it now with our expert techniques of delivering of lectures through online classes.A good training in android programming will help you to get a complete knowledge of core as well as of advanced by working on real time projects. This is only posible with a well qualified expert with a good experience that our experts have. Don't worry if you are not near to us our experts are delivering all over the world. Enroll yourself now with us and be a smart programmer.

    • 1. Getting Started with Kotlin
    • ⇒ Using the command line to compile and run Kotlin code

    • ⇒ Kotlin runtime

    • ⇒ The REPL

    • ⇒ Kotlin for scripting

    • ⇒ Kotlin with Gradle

    • ⇒ Kotlin with Maven

    • ⇒ IntelliJ and Kotlin

    • ⇒ Eclipse and Kotlin

    • ⇒ Mixing Kotlin and Java in a project

    • 2. Kotlin Basics
    • ⇒ Vals and vars

    • ⇒ Type inference

    • ⇒ Basic types

    • ⇒ Numbers

    • ⇒ Booleans

    • ⇒ Chars

    • ⇒ Strings

    • ⇒ Arrays

    • ⇒ Comments

    • ⇒ Packages

    • ⇒ Imports

    • ⇒ Wildcard imports

    • ⇒ Import renaming

    • ⇒ String templates

    • ⇒ Ranges

    • ⇒ Loops

    • ⇒ Exception handling

    • ⇒ Instantiating classes

    • ⇒ Referential equality and structural equality

    • ⇒ This expression

    • ⇒ Scope

    • ⇒ Visibility modifiers

    • ⇒ Private

    • ⇒ Protected

    • ⇒ Internal

    • ⇒ Control flow as expressions

    • ⇒ Null syntax

    • ⇒ Smart casts

    • ⇒ Explicit casting

    • ⇒ When expression

    • ⇒ When (value)

    • ⇒ When without argument

    • ⇒ Function Return

    • ⇒ Type hierarchy

    • 3. Functions in Kotlin
    • ⇒ Defining functions

    • ⇒ Single expression functions

    • ⇒ Member functions

    • ⇒ Local functions

    • ⇒ Top-level functions

    • ⇒ Named parameters

    • ⇒ Default parameters

    • ⇒ Extension functions

    • ⇒ Extension function pre

    • ⇒ Extension functions on nulls

    • ⇒ Member extension function

    • ⇒ Overriding member extension functions

    • ⇒ Companion object extensions

    • ⇒ Multiple return values

    • ⇒ Infix functions

    • ⇒ Operators

    • ⇒ Operator overloading

    • ⇒ Basic operators

    • ⇒ In/contains

    • ⇒ Get/set

    • ⇒ Invoke

    • ⇒ Comparison

    • ⇒ Assignment

    • ⇒ Java interop

    • ⇒ Function literals

    • ⇒ Tail recursive functions

    • ⇒ Varargs

    • ⇒ Spread operator

    • ⇒ Standard library functions

    • ⇒ Apply

    • ⇒ Let

    • ⇒ With

    • ⇒ Run

    • ⇒ Lazy

    • ⇒ Use

    • ⇒ Repeat

    • ⇒ Require/assert/check

    • ⇒ Generic functions

    • ⇒ Pure functions

    • ⇒ Java from Kotlin

    • ⇒ Getters and setters

    • ⇒ Single abstract methods

    • ⇒ Escaping Kotlin identifiers

    • ⇒ Java void methods

    • ⇒ Kotlin from Java

    • ⇒ Top-level functions

    • ⇒ Default parameters

    • ⇒ Object and static methods

    • ⇒ Erasure naming

    • ⇒ Checked exceptions

    • 4. Higher Order Functions and Functional Programming
    • ⇒ Higher order functions

    • ⇒ Returning a function

    • ⇒ Function assignment

    • ⇒ Closures

    • ⇒ Anonymous functions

    • ⇒ Function references

    • ⇒ Top-level function references

    • ⇒ Member and extension function references

    • ⇒ Bound references

    • ⇒ Function-literal receivers

    • ⇒ Functions in the JVM

    • ⇒ Bytecode

    • ⇒ Function composition

    • ⇒ Inline functions

    • ⇒ Noinline

    • ⇒ Currying and partial application

    • ⇒ Currying in action

    • ⇒ Adding currying support

    • ⇒ Memoization

    • ⇒ Implementing memoization

    • ⇒ Type alias

    • ⇒ Either

    • ⇒ Fold

    • ⇒ Projection

    • 5. Properties
    • ⇒ Why use properties?

    • ⇒ Syntax and variations

    • ⇒ Visibility

    • ⇒ Late initialization

    • ⇒ Delegated properties

    • ⇒ Lazy initializations

    • ⇒ Lateinit versus lazy

    • ⇒ Observables

    • ⇒ A non-null property delegate

    • ⇒ Properties or methods?

    • 6. Null Safety, Reflection, and Annotations
    • ⇒ Nullable types

    • ⇒ Smart cast

    • ⇒ Safe null access

    • ⇒ Force operator

    • ⇒ Elvis operator

    • ⇒ Safe casting

    • ⇒ Optionals

    • ⇒ Creating and returning an Optional

    • ⇒ Using an Optional

    • ⇒ Reflection

    • ⇒ KClass

    • ⇒ Instantiation using reflection

    • ⇒ Constructors

    • ⇒ Instantiation with callBy

    • ⇒ Objects and companions

    • ⇒ Useful KClass properties

    • ⇒ Reflective functions and properties

    • ⇒ Invoking a function reflectively

    • ⇒ Declared and undeclared

    • ⇒ Annotations

    • ⇒ Annotation parameters

    • 7. Generics
    • ⇒ Parameterised functions

    • ⇒ Parameterized types

    • ⇒ Bounded polymorphism

    • ⇒ Upper bounds

    • ⇒ Multiple bounds

    • ⇒ Type variance

    • ⇒ Invariance

    • ⇒ Covariance

    • ⇒ Covariant return

    • ⇒ Contravariance

    • ⇒ Variance overview

    • ⇒ Nothing type

    • ⇒ Type projection

    • ⇒ Type erasure

    • ⇒ Type reification

    • ⇒ Recursive type bounds

    • ⇒ Algebraic data types

    • 8. Data Classes
    • ⇒ Automatic creation of getters and setters

    • ⇒ The copy method

    • ⇒ toString out of the box

    • ⇒ hashCode and equals methods generated for you

    • ⇒ Destructed declarations

    • ⇒ Destructing types

    • ⇒ Data class definition rules

    • 9. Collections
    • ⇒ Class hierarchy

    • ⇒ Arrays

    • ⇒ Lists

    • ⇒ Maps

    • ⇒ Sets

    • 10. Concurrency
    • ⇒ Threads

    • ⇒ Blocking

    • ⇒ Creating a thread

    • ⇒ Stopping a thread

    • ⇒ Thread interrupts

    • ⇒ CPU-bound versus I/O-bound

    • ⇒ Deadlocks and livelocks

    • ⇒ Dining philosophers problem

    • ⇒ Executors

    • ⇒ Race conditions

    • ⇒ Monitors

    • ⇒ Locks

    • ⇒ Read-write locks

    • ⇒ Semaphores

    • ⇒ The bounded buffer problem

    • ⇒ Concurrent collections

    • ⇒ ConcurrentHashMap

    • ⇒ A blocking queue

    • ⇒ Atomic variables

    • ⇒ CountDownLatch

    • ⇒ Cyclic Barrier

    • ⇒ Non-blocking I/O and asynchronous programming

Batches Details

  • Duration

    2-3 Months
  • Available Seats

    15
  • Online Training Schedule

    8.00 pm to 10.00 pm
  • Industrial Training Schedule in Chandigarh

    8.00 am to 7.00 pm
    (2 hours per batch)


Register in Android Course

If you want to take online/offline classes from us, please mail us directly