Java EE

Showing 1-9 of 12 results
EngineeringIcon ChevronMobile

Meet RxJava: The Missing Reactive Programming Library for Android

By Christopher Arriola

Implementing applications that deal with complex concurrent behavior has always been a challenging aspect of programming. Various paradigms exist that promise a solution to this problem in different ways. RxJava is a Java library that enables Functional Reactive Programming in Android development. It raises the level of abstraction around threading in order to simplify the implementation of complex concurrent behavior. In this article, Toptal Freelance Software Engineer Christopher Arriola gives us a detailed walkthrough of RxJava and how it fits into the realm of Android development.

12 minute readContinue Reading
EngineeringIcon ChevronBack-end

How to Build a Multitenant Application: A Hibernate Tutorial

By Andre Hildinger

In the realm of enterprise software, especially for software provided as a service, multitenancy ensures that data is truly isolated for each client within a shared instance of software. Among its numerous benefits, multitenancy can greatly simplify release management and cut down costs. In this article, Toptal Freelance Software Engineer André William Prade Hildinger shows us how Hibernate, a persistence framework for Java, makes implementing a multitenant Java EE application easier than it sounds.

8 minute readContinue Reading
EngineeringIcon ChevronBack-end

Implementing a Remote Framebuffer Server in Java

By Igor Delac

Connecting to remote computers and working on them through terminals over a network is something we often take for granted. Technologies that enable us to do this have changed the way we work and have opened doors to amazing possibilities. Although the inner workings of these technologies may seem like obscure knowledge, implementations of many of these technologies are surprisingly straightforward. In this article, Toptal engineer Igor Delac gives us a step-by-step tutorial on how to implement the Remote Framebuffer server-side protocol in Java, allowing Swing-based applications to run and be interacted with remotely using standard VNC clients.

15 minute readContinue Reading
EngineeringIcon ChevronWeb Front-end

Why You Need to Upgrade to Java 8 Already

By Eduard Grinchenko

The newest version of the Java platform, Java 8, was released more than a year ago. Many companies and developers are still starting new applications with old versions of Java. There are very few good reasons to do this, because Java 8 has brought some important improvements to the language. I'll show you a handful of the most useful and interesting ones.

10 minute readContinue Reading
EngineeringIcon ChevronWeb Front-end

Buggy Java Code: The Top 10 Most Common Mistakes That Java Developers Make

By Mikhail Selivanov

Java, a sophisticated programming language, has been dominating a number of ecosystems for quite a while. Portability, automated garbage collection, and its gentle learning curve are some of the things that make it a great choice in software development. However, like any other programming language, it is still susceptible to developer mistakes. This article explores the top 10 common mistakes Java developers make and some ways of avoiding them.

14 minute readContinue Reading
EngineeringIcon ChevronTechnology

Concurrency and Fault Tolerance Made Easy: An Akka Tutorial With Examples

By Diego Castorina

Writing concurrent programs is hard. Having to deal with threads, locks, race conditions, and so on is highly error-prone and can lead to code that is difficult to read, test, and maintain. This post provides an introductory guide to the Scala-based Akka framework, showing (with code samples) how Akka facilitates and simplifies the implementation of robust, concurrent, fault-tolerant applications.

13 minute readContinue Reading
EngineeringIcon ChevronTechnology

Python Class Attributes: An Overly Thorough Guide

By Charles Marsh

In a recent phone screen, I decided to use a class attribute in my implementation of a certain Python API. My interviewer challenged me, questioning whether my code was syntactically valid, when it was executed, etc. In fact, I wasn’t sure of the answers myself. So I did some digging. Python class attributes: when (or how) to use them. In this guide, I walk you through common pitfalls and conclude with a list of valid use cases that could save you time, energy, and lines of code.

11 minute readContinue Reading
EngineeringIcon ChevronMobile

Automated Android Crash Reports with ACRA and Cloudant

By Ivan Dimoski

Making a basic Android app is easy. But making it reliable, scalable, and robust, on the other hand, can be quite challenging. With thousands of available devices pumped out from tons of different manufacturers, assuming that a single piece of code will work reliably across phones is naive at best. Segmentation is the greatest tradeoff for having an open platform, and we pay the price in the currency of code maintenance, which continues long after the app passes the production stage. In this post, we'll walk through a solution: automated crash reporting with ACRA and a Cloudant back-end, all visualizable with acralyzer.

9 minute readContinue Reading
EngineeringIcon ChevronTechnology

Hunting Java Memory Leaks

By Jose Ferreirade Souza Filho

Inexperienced programmers often think that Java's automatic garbage collection frees them from the burden of memory management. This is a common misperception: while the garbage collector does its best, it's entirely possible for even the best programmer to fall prey to crippling memory leaks. In this post, I'll explain how and why memory leaks occur in Java and outline an approach for detecting such leaks with the help of a visual interface.

14 minute readContinue Reading

Join the Toptal® community.