page banner
'Increasing efficiency in Grails' post illustration
Increasing efficiency in Grails

Modern web applications are counting on the big amount of users, so efficiency is a very important aspect of a web development. Today we’ll talk about the ways to increase efficiency of the web application, developed on the Grails platform.

'Effectively Immutable Objects' post illustration
Effectively Immutable Objects

An immutable object is one whose state cannot be changed after construction. All the beauty in these objects is that they are simple and safe. In multi-threaded applications all concurrency issues boil down to coordinating access to mutable state. The less mutable state, the easier it is to ensure thread safety. That’s why you should always consider making your objects immutable whenever it is feasible. Creating an immutable type is not a complex process, but you should follow a handful of rules to stay away from pitfalls it definitely implies.

'Synchronizing threads with Java locks' post illustration
Synchronizing threads with Java locks

Java locks often supersede synchronized blocks and methods by allowing to back out from the synchronization attempt. This post shows how to use the feature, and demonstrates some other basic concepts, like the lock fairness and reentrant locks, which should help you to get started with the lock-based synchronization.

'Command object in Grails' post illustration
Command object in Grails

Using command objects in Grails is a simple way to perform data binding and validation when there is no need to create domain object. In this tutorial I will show you some examples of using it.

'Simply about Spring AOP' post illustration
Simply about Spring AOP

This week I would like to talk about aspect oriented programming. A lot of programming paradigms like OOP, modular programming and other, let to divide functionality into logical parts (functions modules, classes). But these functional elements may be marked out into separate modules. Aspect oriented programming (AOP) has as a target to provide separation of functionality and addition to points where it really needs.

'Use Floats With Prudence' post illustration
Use Floats With Prudence

In the world of mathematics real numbers have infinite precision and are therefore continuous and nonlossy. Floating-point numbers, which are used in computing, are limited with a finite precision and are not evenly spaced throughout their range. If don't keep this in mind you can get into many numerical blunders.

'Authorize.Net CIM With Java SDK: Managing Your Customers' Info' post illustration
Authorize.Net CIM With Java SDK: Managing Your Customers' Info

In the previous post I’ve told how to bill a customer with a minimal fuss. But oftentimes returning customers wish to add or change their billing information or maybe you want to delete the old ones. Let’s dive deeper and see what’s possible to do with Authorize.Net Customer Information Manager by remote procedure calls using, as previously, Java SDK.

'Building ESME with Logica OpenSMPP Java library' post illustration
Building ESME with Logica OpenSMPP Java library

Short Message Peer to Peer (SMPP) is an open, telecommunications industry protocol for exchanging text messages (SMS) between short message service centers (SMSC) and External Short Messaging Entities (ESMEs). The protocol is often used for connecting to SMS centers in order to send messages to mobile devices.

'Simply about Spring. Inversion of Control (IoC)' post illustration
Simply about Spring. Inversion of Control (IoC)

This week I'll tell you about inversion of control. This is very useful thing if you are going to develop dynamic application in compliance with modern approach to software development.