Interface's Default Methods : Interfaces, part-2
Default methods were introduced to enable interface evolution. If backwards compatibility is sacrosanct, this is limited to adding new methods to interfaces (which is their exclusive use in the JDK). But if clients are expected to update their code, default methods can be used to gradually evolve interfaces without causing compile errors, thus giving clients time to update their code to a new version of the interface.
Interface's Default Methods : Methods, part-1
In the context of the JDK this meant adding new methods to interfaces without breaking all the code out there. But while Java itself is extremely committed to keeping backwards compatibility, the same is not necessarily true for other projects. If those are willing, they can evolve their interfaces at the cost of having clients change their code.
Test Collection Implementations with Guava
I’m currently adding a new feature to LibFX, for which I create some custom collections akin to those from the Java Collections Framework. I went looking for tests I could run against them and was delighted to find out that Google’s Guava contains just what I need: a massive test suite which verifies every nook and cranny of my implementation for all collection interfaces from the JDK and Guava.
New Javadoc Tags @apiNote, @implSpec and @implNote
This post will have a quick view at the tags’ origin and current status. It will then explain their meaning and detail how they can be used with IDEs, the Javadoc tool and via Maven’s Javadoc plugin.
Lambda expressions: Getting Rid of Anonymous Classes
I really enjoy writing and reading lambda expressions – they’re succinct, expressive and fashionable (come on, like that doesn’t matter a little!). Compare that to anonymous classes which are neither of those things. Which is why I like to get rid of them!
To make sure everybody knows what we’re talking about I’ll start with a quick recap on anonymous classes. I will then explain why I’d like to get rid of them before identifying their last stronghold and how to conquer it.
Easy Data Structures
Python is a beautiful, easy-to-read language. It’s also (usually) easy to write, most of the time. For the most part, it’s simple to make sure that your classes work well with the language by implementing several “magic methods”, but this gets tedious to do for a few of them.
Add new functionality using Decorator Pattern
Decorator pattern allows a user to add new functionality to an existing object without altering its structure. This type of design pattern comes under structural pattern as this pattern acts as a wrapper to existing class.
How The Decorator Pattern Saved My Day
This post does not aim at teaching the decorator pattern as plenty tutorials already exist. Instead, it gives a real life example of how it came in handy and saved the day.
The Decorator Pattern With Java 8
In a recent post I described how the decorator pattern saved my day. I gave a small code snippet which contained the simplest way to create decorators but promised that there would be a nicer way with Java 8.
A New Idea for Calling Functions
I’ve had a recent thought process about calling functions. It has been ceaselessly frustrating to me how functional languages (and even other languages at times) accomplish a certain goal. That goal is chaining calls...
WordPress Full Text Search With ElasticSearch
ElasticSearch is a flexible and powerful, distributed, real-time search and analytics engine. You can send the data into it, and have it index and available for search quickly. It's highly optimized for its job: Searching. More than that, the results includes a value of how good the data matched the search term. ElasticSearch even comes with a REST API allow you easily query search or play with it during testing/development with a tool like Sense.
How to Display Related Posts in WordPress
There are two methods of doing so and you can choose whichever method you prefer. One way is doing it without a plugin and then there is another method that is doing it with a plugin.
How to Customize Twenty Fifteen to Make it Your Own
In this post I’ll take a look at a number of ways you can turn an already awesome theme into a site design that’s just right for you. We look at the built-in customization options, some plugins to add further style improvement, and self-coded solutions to some problems problems, albeit minor ones.
A Look at Twenty Fifteen, the New WordPress Default Theme
As most of you probably know, the release of the new default WordPress theme has been a time-honored tradition of the past five years. Starting with Twenty Ten, these themes have been a show of WordPress development best practices, state-of-the-art theme making, and great parents for child themes.
How to Reverse Layer Order
In this tutorial, you'll learn how to reverse the order of all or some of your layers in Photoshop. As with many quick tips, this one is meant to speed up your workflow. This is especially helpful when you're importing multiple files into a new document, where the default behavior orders them in reverse alphabetical order.
Conform Text to a Surface Using a Displacement Map
There's nothing that screams "fake" more than a dynamic background surface covered in boring, flat text. Giving your text or shape layer the same depth as the background it sits on will instantly improve the realism of your designs. This tutorial will teach you how to wrap your text and shape layers so that they conform to the surface of the layer underneath.
How to move your WordPress database to a new host
A few notes before we get started: This tutorial assumes you have an SQL database of less than 7.1MB, access to a one-click install application for WordPress on the new host and access to PHPMyAdmin. Follow the simple eight step guide below to learn how to move your WordPress database like a pro...
How to change a theme via the database
Sometimes new changes such as plugins or updates are simply not compatible with your current theme. Often, with this incompatibility you are unable to enter the admin area to switch the theme. This can leave you in a circular problem as you need to change the theme in order to get into the admin area. In this scenario you will need to change it directly in the database. This article will guide you on how to do that within your WordPress site.
Deep in Space Portfolio Layout Design
In this tutorial I will teach you how to create an outer space website layout that could be used for a portfolio design. The first thing we need to do is create a new document with the dimensions of 1020×1200.
Simplistic Black and White Portfolio Layout
In this tutorial you will learn how to create a beautiful and clean portfolio in black and white using Photoshop. The first thing we need to do is create a new document with the dimensions of 1020×1400.