Nerd For Tech
Published in

Nerd For Tech

Ktor - Prerequisites for Backend

Introduction to Ktor, why to use Ktor for backend, what is Routing, Serialization and Deserialization, IDEs for Ktor applications.

Hello Friends, this is the very first article in Ktor series. Most of us, Being native Android app developer we’re well versed with Kotlin but don’t have easy options to explore the backend of the Android apps. Now, we can use Ktor for building backend by writing code in Kotlin.
We’ll learn about Ktor, why to consider Ktor for backend development, basics of Routing, Serialization and Deserialization, IDEs that we can use to create Ktor projects and alternate options.

Topics we’ll be covering in this blog

  • What is Ktor?
  • Why to choose Ktor for backend development?
  • Routing?
  • Serialization and Deserialization?
  • Which IDE to use?
  • What’s next?

What is Ktor?

Ktor is a framework built using Kotlin by JetBrains. This framework can be used to build applications like, web applications, HTTP services, mobile applications and browser based applications too. It fullfills the need of being asynchronous in order to provide the best experience to users, Feature of Kotlin coroutines provides mechanism to be asynchronous in a very easy and straightforward manner.
Considering the end-to-end multi-platform application framework for connected applications and the wide acceptability of Ktor, It’s going to be one of the demanding tech-stack that one can learn and master.

Why to choose Ktor for backend development?

  • Kotlin and Coroutines
    Ktor is build from scratch using Kotlin and Coroutines, It’s one of the language used in multi-platform application development. Can’t ignore the power of Asynchronous programming.
  • Lightweight and Flexible
    Ktor allows us to use only what we need by removing a lot of boilerplate codes. We have flexibility to structure our application freely. Along with that we can extend Ktor with our own plugins very easily.
  • Interoperable
    You can use Ktor with any existing Java project. Kotlin is completely interoperable with many Java frameworks like Springboot.
  • Community support
    Since Ktor is built using Kotlin and Kotlin already has a good community across the globe. A good community is already there to help you resolving your queries at any time.
  • Tooling support
    JetBrains built the Ktor not just for their customers but JetBrains also uses the Ktor internally, So you can guess the reliability of Ktor. For IDEs, JetBrains provide two IDEs named IntelliJ IDEA Ultimate and IntelliJ IDEA Community Edition.

Routing

Routing is the process of selecting a path for traffic in a network or between or across multiple networks.

Serialization and Deserialization

Serialization is the process of converting the data used to a format that can be sent or received over a network or saved in a database or a file. Similar to that, Deserialization is the opposite process of serialization, Deserialization is the process of reading data from an external source and converting it to a runtime object based on the platform. Both Serialization and Deserialization are an essential part of an application for exchange of data.

Which IDE?

The IDE that you can use to create the KTOR project is IntelliJ IDEA Ultimate. If you want to install IntelliJ IDEA click here — Install IntelliJ IDEA.
Although, you can use the community version for development, but in community version there’s no option for creating KTOR project. If you’re using community version of IntelliJ IDEA, you can use this web-based project generator for KTOR — Generate Ktor Project.

What’s Next?

In next article we’ll learn about creating a Ktor project, Project structure and understanding where to write what sorts of code and at last we’ll see how to run a Ktor application.

❤️ Finally ❤️

I hope this article was worth reading and you’ve learnt something from it. If you’ve any questions or suggestions, let me know in the comments and Please share it with people who might need to learn about the above topics.
Clap👏, Comment 💭 and Share ❤️

Thanks,Be safe, Keep coding. Cheers 🍻!

--

--

--

NFT is an Educational Media House. Our mission is to bring the invaluable knowledge and experiences of experts from all over the world to the novice. To know more about us, visit https://www.nerdfortech.org/.

Recommended from Medium

Hirb-A Ruby Gem You Don’t Want To Be Without

Using the AWS CloudFormation registry to manage your own custom CloudFormation Resource Types: Part…

A Virtual YouTuber System Without Deep Learning

The Role of Agile Delivery — The Case Study

The Anatomy of a Task (for the Manager)

Validator Guide of Archway

Install a software package from the Extras Library on an EC2 instance

REACTO: Technical Interview Prep the Fullstack Way

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Gajendra Singh Rathore

Gajendra Singh Rathore

Android Engineer | Kotlin | ❤️ Open Source

More from Medium

How to build TreeView from JSON in Android

SOLID Principles with Android Development Examples

Design Patterns in Kotlin: Visitor

Kotlin Scope Functions In Dart