Skip to content

Arinyadav1/Kotlin-Programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

Kotlin Programming Language

This is my Kotlin Programming Learning repo from beginning to advance level. I have deep knowledge of kotlin programming and Object-Oriented Programming (OOPs). I have covered all the topics from beginner to advanced level in Kotlin

I have mentioned all the topics which I learned in Kotlin programming language.

Explore All Topics

  • if-else
  • The (if-else) statement is used to execute different blocks of code based on a condition.

  • When
  • when is a keyword used to create a conditional control flow statement, essentially acting as a switch statement in other languages like Java,

  • While Loop
  • A while loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition

  • Do while loop
  • A do-while loop is a control flow statement that executes a block of code at least once, and then repeatedly executes the block as long as a specified condition remains true.

  • For Loop
  • A for loop is used to iterate over a collection of items, such as a list, array, or range. It allows you to execute a block of code for each element in the collection.

  • Range
  • A range is a collection of consecutive values defined by a starting and ending point. It's a convenient way to represent a sequence of elements, especially when iterating over them.

  • Function
  • A function is a self-contained block of code that performs a specific task. It can take input parameters and return a value.

  • Function as a object
  • Functions are first-class citizens, meaning they can be treated like any other object. You can store them in variables, pass them as arguments to other functions, and return them from functions.

  • Collection Functions
  • A set of built-in functions that allow you to manipulate and transform data stored within collections like lists, sets, and maps, enabling operations like filtering, mapping, reducing, and more, all in a concise and functional style

  • Array
  • An array is a collection of elements of the same data type stored in contiguous memory locations

  • Class
  • Class is a blueprint for creating objects. It defines a structure that encapsulates data (properties) and behavior (functions)

  • Constructor
  • A constructor is a special initialization function that is automatically called whenever a class is declared. The constructor always has the same name as the class name, and no data types are defined for the argument list or the return type.

  • Getter Setter
  • A "getter" is a function that retrieves the value of a property, while a "setter" is a function that allows you to modify the value of a property

  • Inheritance
  • "Inheritance" is a core object-oriented concept that allows a new class (called a subclass or derived class) to inherit properties and methods from an existing class (called a superclass or base class)

  • Overriding Inheritance
  • Overriding inheritance allows a subclass (derived class) to provide a specific implementation of a method or property that is already defined in its superclass (base class).

  • Polymorphism
  • Polymorphism is a property through which any message can be sent to objects of multiple classes, and every object has the tendency to respond in an appropriate way depending on the class properties.

  • Abstract
  • Abstraction, in the context of OOP, refers to the ability to hide complex implementation details and show only the necessary features of an object

  • Interface
  • An "interface" is a blueprint defining a set of abstract methods and properties that a class must implement, essentially acting as a contract for how a class should behave without providing concrete implementation details; it allows a class to inherit multiple behaviors by implementing multiple interfaces.

  • Type Checking
  • Type checking in Kotlin is the process of verifying that a variable or expression is of a certain type. This is done at compile time to prevent errors that would occur if the wrong type of data was used.

  • Casting
  • Kotlin's compiler performs automatic type checks and casts when possible. This eliminates the need for explicit casting in many cases.

  • Visibility Modifiers
  • "Visibility Modifiers" refer to keywords like "public", "private", "protected", and "internal" which define the accessibility or visibility of a class, property, or function.

  • Object keyword
  • The object keyword is used to create a singleton object, which is a class that has only one instance. This instance is created and managed by the Kotlin runtime, ensuring that there is only ever one instance of the object in your application.

  • Singleton Pattern
  • A "Singleton" refers to a design pattern where only one instance of a class can exist throughout the entire application, providing a global access point to that single instance.

  • Companion
  • A companion object is an object that is declared within a class using the companion keyword. Unlike regular objects, companion objects are unique because they allow you to define members that can be called on the class itself rather than on instances of the class

  • Factory Pattern
  • The Factory Pattern is a creational design pattern that provides an interface for creating objects without exposing the instantiation logic to the client.

  • Data Class
  • The data class in Kotlin is used to hold the data. This data class contains some utility functions that are often derivable from the data. With the help of the data class, you don't need to write the boiler plate code. The compiler automatically generates all the getter and setter for all the data class properties.

  • Enum
  • "Enum" (short for enumeration) is a special type of class that represents a fixed set of named constants, essentially defining a collection of distinct values for a specific type, like days of the week or directions and so on

  • Sealed Class
  • Sealed classes in Kotlin are a powerful feature that allows you to define a restricted hierarchy of classes. They are particularly useful for representing restricted class hierarchies, where a type can be one of a limited number of types

  • Null Safety
  • "Null Safety" is a language feature that aims to eliminate the risk of "NullPointerExceptions" by explicitly differentiating between variables that can hold null values (nullable types) and those that cannot (non-nullable types)

  • Exception
  • An "Exception" refers to an unexpected event that occurs during program execution, disrupting the normal flow of instructions and signaling an error that needs to be handled to prevent the program from crashing

  • Throw Keyword
  • The throw keyword is used to explicitly throw an exception. This signals that an abnormal condition has occurred during the program's execution.

  • ArrayList
  • An ArrayList stores a variable number of objects. This is similar to making an array of objects, but with an ArrayList, items can be easily added and removed from the ArrayList and it is resized dynamically

  • MutableList
  • A "MutableList" in Kotlin is a data structure that represents a collection of elements where you can dynamically add, remove, or modify existing elements after it's been created, essentially acting like a resizable array that allows for flexible manipulation of its contents; unlike a standard "List" which is typically immutable (read-only). it is similar to LinkedList

  • MutableMaps
  • In Kotlin programming, a "MutableMap" is an interface that represents a collection of key-value pairs where you can add, remove, or modify existing entries. It is similar to HashMap

  • MutableSet
  • A "MutableSet" is a collection that stores unique elements (no duplicates) and allows you to add or remove elements from it after creation. It is similar to HashSet

  • High Order Function
  • A higher-order function is a function that takes one or more functions as parameters, or returns a function as its result.

  • Lambdas
  • A lambda function (or simply "lambda") is an anonymous function that can be treated as a value. It can be passed as an argument to other functions, stored in a variable, or returned from a function

  • Extension
  • Kotlin provides the ability to extend a class or an interface with new functionality without having to inherit from the class or use design patterns such as Decorator.

  • Inline
  • "Inline Kotlin programming" refers to a feature in the Kotlin programming language where a function marked as "inline" gets its code directly inserted into the calling code at compile time

  • Scope Function
  • Scope functions are a set of functions available in Kotlin that allow for concise and convenient operations on objects within a specific scope.

  • Generics
  • Generics allow you to write flexible and reusable code by parameterizing types. This means you can define classes, interfaces, and functions that work with a variety of data types while maintaining type safety

  • Nasted Class
  • A nested class is a class that is declared inside another class. It's a way to logically group classes that are closely related and to encapsulate code.

    About

    It is My learning of Kotlin programming language from beginning to advance level

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published

    Languages