Languages and ecosystem

Trend 3: Go and Kotlin emerge as primary choices for lightweight microservices with a low memory footprint

With strong memory safety, garbage collection and structural typing, Go offers high runtime efficiency. It is already a top choice for system design but also is widely used for microservices. At Infosys, we use Go for many projects where a memory footprint is critical. Kotlin, which evolved primarily from developers using Android, is seeing a shift to the microservices domain due to the conciseness, interoperability and safe nature of its programming. Banking, telecom and other sectors adopt these languages as part of their modernization programs to develop large, cloudnative and scalable microservices.

Typically, Java, .NET, JavaScript or Python, in combination with frameworks such as SpringBoot, Django and Nameko, were used to develop microservices. The outcome was bulky applications that consumed significant memory and lacked resilience. With the advent of languages such as Go and polyglot virtual machines (VMs) like GraalVM that support multiple languages and libraries, application teams now have a choice of languages and access to advanced tools to debug, monitor, profile and optimize resource consumption.

Infosys DevOps platform (IDP) is rebuilt on Go, which helps reduce the memory footprint threefold. With its efficient memory management capabilities, Go is now becoming a preferred language for many engineering platforms.

Languages and ecosystem

Trend 4: .NET 5 expands the developer experience and unifies runtime behavior on all platforms

The .NET community eagerly awaits the release of .NET 5, which will unify ASP.NET, .NET Core, Entity Framework Core, WinForms, Windows Presentation Foundation, Xamarin and ML.NET, and provide a single platform to build cross-platform applications.

The .NET framework was initially designed to build a robust framework for Windows-based desktop, web and enterprise applications. The addition of .NET Core provided support for non-Windows environments, although it required different libraries to develop other types of applications such as mobile, desktop and Windows Communication Foundation. The new .NET 5 unified platform aims to provide a rich developer experience with high performance and scalable, consistent runtime behavior on multiple target platforms at the same time.

.NET 5 takes the best of .NET Core, .NET Framework, Xamarin and Mono to produce a single .NET runtime and framework that can be used everywhere.

Subscribe

To keep yourself updated on the latest technology and industry trends subscribe to the Infosys Knowledge Institute’s publications

Infosys TechCompass