Published using Google Docs
SCALA_SUMMER_2011_SHENKAR
Updated automatically every 5 minutes

Java & Scala Internet Programming Scala Summer 2011

Meeting

Date

Abelski Course

Topics

Remarks

1

Developing Java SE Applications

Developing Java SE Applications: Introductions; Let’s Start; The Basics; Introduction to OOP; Object Oriented Programming; Arrays & Strings; Inheritance; Inner Classes; Applets (yaeli); Exceptions Handling (yaeli);

you should complete all assignments in all topics.

Towards next meeting you should get ready especially with ‘Threads’. Please go over the slides, read the texts at www.javabook.co.il and watch the relevant video clips. Another important topic to get ready to is ‘Reflection’. I strongly recommend watching the video clips about Reflection at www.javabook.co.il.

In addition, in order to understand the topics I/O and Networking (next meeting) please wath the relevant video clips and read the texts at www.javabook.co.il.

In order to get ready for Swing please watch the ‘events handling’ video clip at www.javabook.co.il.

2

(start chat assignment with yaeli assist)

Developing Java SE Applications;



Java SE Reflection Introduction;



Java SE Swing Introduction;











Java SE Images Processing;

Developing Java SE Applications: 
I/O Streams; Threads (1/2), Threads (2/2), Networking,

Java SE Reflection Introduction: Introduction; The ‘Class’ Class; The Class Members; The Array Type;

Java SE Swing Introduction (yaeli): Introduction; Events; Handling; MVC Architecture; Basic; Components; Toggle Buttons; Menu & Toolbars; Borders; Containers; Pop Ups; Layout Managers; Advanced Containers; Bounded; Range Components; List Model; Components; Spinner Model; Components; Text Based Components; The Tree Component; The JTable Component;

Java SE Images Processing (yaeli):
Threads Issues;

you should complete all assignments in I/O Streams, Networking and Reflection).

you should start working on the chat exercise. practice by the end of the third meeting will be devoted to this exercise.  

I STRONGLY RECOMMEND ON GOING OVER www.javabook.co.il BOTH THE VIDEO CLIPS AND THE TEXTS.

3

(complete chat assignment with yaeli assist)

Developing Java SE Applications


Java SE Generics Introduction


Java SE Assertion Facility;



Java SE Collections Framework;



Log4J Basics;


XML Fundamentals;

Java SE Annotation Facility;

Developing Java SE Applications: Threads (2/2)

Java SE Generics Introduction
Introduction; Subtypes; Wildcards; Indepth;


Java SE Assertions Facility:
Introduction to Assertions;Using Assertions; Assertion Examples;

Java SE Collections Framework (yaeli): Introduction; Performance; Set; List; Queue; Map;

Log4J Basics:
Introduction; Architecture; Configuration;

XML Fundamentals:
Introduction to XML, XML Syntax, XML Validation, Display XML, Document Object Model

Java SE Annotations Facility:
Introduction to Annotation; Annotations Syntax; Standard Annotations; Annotation Processing;

you should complete all assignments in all topics.

Towards next meeting (top priority):

Watch the JDBC video clips u can find in ‘Deevloping Java SE Applications’.

Watch the video clips u can find in ‘AspectJ Fundamentals’.

4

(start final project phase 1 with yaeli assist)

Java SE JDBC Introduction;

Java SE Core Web Services

Introduction to Ant

The JUnit Framework;

Java SE JDBC Introduction: Introduction to JDB; Database Transactions; Simple Statements; Prepared Statements; Callable Statements; ResultSet Processing;

Core Web Services: Introduction to XML in Java SE; Java API for XML Web Services (JAXWS); Java Architecture for XML Binding (JAXB); REpresentational State Transfer Web Services (REST); Java API for XML Processing (JAXP);

Introduction To Ant:
The Apache Ant; Installation Guide; Using The Apache Ant;

Introduction to JUnit (yaeli):

Eclipse and JUnit; The JUnit Assertions;

you should complete all assignments in all topics.

you should complete the final project phase 1 (in java).

5

(complete final project phase 1 with yaeli assist and get ready for mid term quiz with yaeli assist)

AspectJ Fundamentals;



Java SE JDNI Introduction;



Java SE Design Patterns;


Java SE Regular Expressions;

Java SE Efficient Programming;






Hibernate Fundamentals

Scala Fundamentals

AspectJ Fundamentals:

Introduction to AOP; AspectJ Jump Start; The Joint Point Model;

Java SE JDNI Introduction: Introduction to JNDI; JNDI Naming Operations; JNDI Directory Operations;

Java 2 SE Design Patterns: Structural Patterns; Behavioral Patterns; Creational Patterns; Concurrency Patterns;


SE Regular Expressions:
Introduction; Character Classes; Logical Operators; Quantifiers; Capturing Groups; Boundary Matches; The Pattern Class; The Matcher Class;

Java SE Efficient Programming:
Introduction to Efficiency; Declaring Classes; Objects Instantiations;
Using Strings; Declaring Interfaces; Using Generics; Using Enums; Using Annotations; Handling Exceptions; Threads Programming;
Collections Usage;


Hibernate Fundamentals

Introduction; Persistence; Mapping

Mapping; Sessions; Queries

Scala Fundamentals:
Introduction; Basics;

you should complete all assignments in all topics.

6  

mid term quiz

Scala Fundamentals

Objects & Classes; Operators; Control Statements; Functions;
Closures; Inheritance; Control Structures; Hierarchy; Traits; Packages; Assertions; Unit Testing;

you should complete all assignments in all topics.

7

(start working on final project stage 2 with yaeli assist)

Scala Fundamentals

Exceptions Handling; Patterns Matching; Collections;
Lists; Type Parametrization; Abstract Members; Stateful Objects; Types Conversions; Extractors; Annotations; Scala & XML; Objects Comparisons; Java Integration; Concurrency

you should complete all assignments in all topics.

http://www.abelski.com
This is the web site on which you can find most of the training material, including the slides, the assignments and the solutions for most of them. In addition, please note the video clips each relevant course includes.

http://www.javabook.co.il

This web site includes short hebrew tutorial together with links for small video clips in hebrew hosted on youtube. This resource covers the basic topics in Java only.

http://java.sun.com

This is where you should download and install the JDK. This site includes many more resources relevant for our course. You can find guidelines for installing the JDK at ‘Java SE Applications Development’ course at www.abelski.com.

http://www.eclipse.org

This web site is where you can download the Eclipse IDE. In addition, you can find in this web site many more resources relevant for using the Eclipse, such as tutorials and a detailed overview of this IDE.

http://www.scala-lang.org 
This is Scala main web site. In this web site you can download the Scala SDK as well as many other relevant resources for using this software programming language.

http://java.sun.com/javase/6/docs/api/
This is the Java AP online documentation. This is your best friend during the course and afterwards, as far as it concerns for Java programming.