Scala Programming Course in HIT Autumn 2013 ACD

During 2013 first semester I will deliver in HIT the ‘Internet Programming’ course. Its first part focuses on Java. Its second part focuses on Scala. You can find the detailed syllabus at http://www.lifemichael.com/hit/internet_programming_2013_10_he.pdf. You can find the google group we are going to use during this course at https://groups.google.com/forum/#!forum/hit-scala-2013-10. You can find the on-line detailed […]

Play Framework Jump Start in Scala PRO

I have recently started to work on a new course for learning how to use the Play Framework. Its community version is already available for free personal usage at http://abelski.lifemichael.com. So far I have completed the first two topics: Introduction and Jump Start. I believe that if you consider learning this framework then you might […]

Scala Programming Course in HIT Summer 2013 ACD

During 2013 summe semester I will deliver in HIT the ‘Internet Programming’ course. Its first part focuses in Java. Its second part focuses in Scala. You can find the detailed syllabus at http://www.lifemichael.com/hit/internet_programming_2013_07_he.pdf. You can find the google group we are going to use during this course at https://groups.google.com/forum/#!forum/hit-scala-2013-06. You can find the on-line detailed plan at https://docs.google.com/spreadsheet/pub?key=0AhDgrQD6qivLdFl6YkJQMUg0S0MyVUhUMS11dXZqSnc&output=html. […]

Scala Programming Course in Shenkar ACD

During 2013 spring semester I will deliver in Shenkar the Java Programming course. Its first part focuses in Java. Its second part focuses in Scala. The highlight is Scala. You can find the detailed syllabus at http://www.lifemichael.com/shenkar/SHENKAR_BASIC_JAVA_201302.pdf. You can find the google group we are going to use during this course at https://groups.google.com/forum/?fromgroups#!forum/shenkar-java-scala-2013-03. You can find the […]

Scala Programming Course in HIT ACD

During 2013 spring semester I will deliver in HIT the ‘Internet Programming’ course. Its first part focuses in Java. Its second part focuses in Scala. You can find the detailed syllabus at http://www.lifemichael.com/hit/internet_programming_2013_02_en.pdf. You can find the google group we are going to use during this course at https://groups.google.com/forum/?fromgroups#!forum/hit-scala-2013-02. You can find the on-line detailed plan at https://docs.google.com/spreadsheet/pub?key=0AhDgrQD6qivLdEFGdTJYQjQ3ek5OTDlORjdXSnIxY3c&output=html.

Generics Wild Card in Scala PRO

When defining a variable of a generic type we can use a wild card instead of specifying the exact secondary type the generic type uses. object HelloSample { def main(args:Array[String]):Unit = { val a:MyStack[SportCar] = new MyStack[SportCar]; val b:MyStack[_ <: Car] = a; } } class Car class SportCar extends Car class MyStack[T] The following […]

Generics Contravariance in Scala PRO

When using generics Scala doesn’t support covariance. The following code doesn’t compile. object HelloSample { def main(args:Array[String]):Unit = { val a:MyStack[SportCar] = new MyStack[SportCar]; val b:MyStack[Car] = a; } } class Car class SportCar extends Car class MyStack[T] The following video clip shows the compilation error we get while trying to compile this code and […]

Type Bounds in Scala PRO

When we define a function or a class and we choose to use generics we can set limits on the unknown type: S <: T – means that S is a sub type of T S >: T – means that S is a super type of T It is also possible to mix between […]

Functions and Anonymous Classes in Scala PRO

When calling a function we indirectly invoke the apply method on the object that represents the function. We can use the anonymous inner class syntax for defining a new anonymous inner class that extends the Function relevant trait in order to create a new function. The following code sample shows that. object HelloSample { def […]

Functions as Objects in Scala PRO

Function values are treated as objects. The function A=>B is an abbreviation for using a new object instantiated from a class that extends the scala.Function1[A,B] trait and overrides the apply function. There are currently Function1, Function2, Function3… etc… up to Function22, that takes 22 parameters. The following code sample shows that. object HelloSample { def main(args:Array[String]):Unit […]

Skip to content Update cookies preferences