Skip to main content

Posts

Showing posts from June, 2015

Maven Tips... and Tricks

Maven, one of the central actors in the Java World, resposible for managing the building life-cycles of many projects, is full of little features, that sometimes we forget to explore. Let us go straight away and take a look at some very useful Maven features that will make your builds shine. From where it stopped Sometimes it is needed to build a bunch of projects all together, artifact-a , artifact-b and so on. What do we usually do when one of them fail? Build it all again! But not anymore: By using this option you can run the build from the project that failed. Two out of ten Ok, suppose you have 10 projects, and you only want to build 2 of them, how would you do? The option -pl will do the job Multi-threaded Build If in the machine you run the build you have many Cores, tou can take advantage of them by using the following option(it means 2 Threads per Core): It is also possible to define 3 Threads per Core(T3C) Skip your Tests when you want to With a lot of test

The Scala's Equivalent of Java ArrayList

ArrayList   is a widely misused "default"  List  in Java. It has terrible performance when elements are added/removed frequently, but works pretty well as a replacement for  Array .  But what about Scala? What is Scala's default collection? What Scala collection has characteristics similar to  ArrayList ? What's a good replacement for  Array   in Scala? So here are the answers for these: What is Scala's default collection? Scala's equivalent of Java's  List  interface is the  Seq . A more general interface exists as well, which is the  GenSeq  -- the main difference being that a  GenSeq  may have operations processed serially or in parallel, depending on the implementation. Because Scala allows programmers to use  Seq  as a factory, they don't often bother with defining a particular implementation unless they care about it. When they do, they'll usually pick either Scala's List  or  Vector . They are both immutable, and  Vector

Enum Types in Scala - How to?

Java is well known for provinding Enum Types since its version 1.5. Powerful, simple to use, they make your code easy to understand, and provide a nice way to implement Singleton Objects , since an Java Application will have only one instance of the each Enum Type. Among some of its advantages Enums variables cannot have any other type other than those defined in the Enum class. Let us model Gender in a Java Enum Type Reviewing Java Type-Safe Enum Type In the above code, there is only to options for any variable of type Gender : MALE  or  Female. Now    what if we want model Enum Types like this in other JVM Languages? Such as Scala, our focus today. Scala , a Functional and yet Object Oriented language for the Java Platform has no built-in Enumeration type like Java's. Instead, it provides an abstract class Enumeration which can be used :