Mit Google Docs veröffentlicht
SCALA_SUMMER_2011_HIT
Automatisch alle 5 Minuten aktualisiert

Java & Scala Internet Programming HIT 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;  

1. You should install JDK on your computer. You can follow the small clips at ‘Developing Java SE Applications’.

2. You should complete all assignments in all topics.
3. You should read the hebrew texts and watch the relevant vide clips at
www.javabook.co.il following topics:
הקדמה
יסודות השפה
מחלקות ואובייקטים
מערכים ומחרוזות תווים
הורשה וממשקים

מחלקות פנימיות

4. You should install the Eclipse IDE. You can find few video clips that explain how to work with the Eclipse both at www.javabook.co.il and at www.abelski.com (within the ‘Java SE Developers Guide to Eclipse’). You should download ‘Eclipse IDE for Java Developers’ at http://www.eclipse.org/downloads/.

Towards next meeting I strongly recommend you to read and watch the relevant clips about Threads. You can find clips both in hebrew (www.javabook.co.il) and in english (www.abelski.com).

2

Developing Java SE Applications

Developing Java SE Applications: Inner Classes; Applets; Exceptions Handling; I/O Streams; Threads;

Towards next meeting make sure you go over all slides of the threads topic (and video clips), networking (especially the TCP/IP client server sample and its explanation in video at www.javabook.co.il), events handling (i especially recommend watching the video clip in javabook.. the one that explains events handling) and reflection (this is a very difficult topic relatively to the other topics).

You should complete all assignments (except for the applets topic... don’t spend time on applets... and except for the threads topic that we have just started).

One of the topics next meeting is GUI using AWT. The only relevant slides from this topic are the slides that explain layout managers. Don’t waste time on the other slides in ‘GUI using AWT’.

Next meeting we will learn how to develop basic UI using Swing. The meeting after we will delve a bit more into Swing (using the ‘Java SE Swing Introduction’ course at www.abelski.com).

3

Developing Java SE Applications;
Java SE Reflection Introduction;

Developing Java SE Applications: Threads; Networking, Java Utilities, GUI using AWT; Events Handling;Java SE Reflection Introduction: Introduction; The ‘Class’ Class; The Class Members; The Array Type;

In ‘Developing Java SE Applications’:
1. In Threads you should complete just those assignments we already covered their material.

2. Don’t do assignments in ‘Java Utilities’.
3. Don’t do assignments in ‘GUI using AWT’.
4. Don’t do assignments in ‘Events Handling’.

5. Please complete all assignments in ‘Networking’.

In Reflection do all assignments. .

4

Java SE Assertion Facility;
Java SE Collections Framework; Java SE Swing Introduction;
Java SE Images Processing;

Developing Java SE Applications: Threads;
Java SE Collections Framework: Introduction; Performance; Set; List; Queue; Map; Java SE Swing Introduction: 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:Threads Issues;

You should complete all assignments in Threads.

You should learn Collections Framework on your own and complete its assignments.
You can learn Swing on your own and complete the assignments in your own time. The same apply for ‘Java SE Images Processing’.

5

Log4J Basics;
XML Fundamentals;
Introduction to JUnit;
Java SE Generics Introduction;

Java SE Assertions Facility: Introduction to Assertions;Using Assertions; Assertion Examples;
Log4J Basics: Introduction; Architecture; Configuration; XML Fundamentals: Introduction to XML, XML Syntax, XML Validation, Display XML, Document Object Model; Introduction to JUnit: Eclipse and JUnit; The JUnit Assertions; Java SE Generics IntroductionIntroduction; Subtypes; Wildcards; Indepth;

You should complete all assignments in all topics we covered in class.

Towards next meeting make sure you watch the relevant video clips about jdbc.

6

Introduction to Annotations;
Introduction To Ant;
Java SE Regular Expressions;
Java SE JDBC Introduction;

Java SE Annotations Facility:
Introduction to Annotation; Annotations Syntax; Standard Annotations; Annotation Processing;
Introduction To Ant: The Apache Ant; Installation Guide; Using The Apache Ant;Java SE JDBC Introduction: Introduction to JDB; Database Transactions; Simple Statements; Prepared Statements; Callable Statements; ResultSet Processing; SE Regular Expressions: Introduction; Character Classes;

7

Regular Expressions

Java SE Core Web Services

Regular Expressions: Introduction; Character Classes; Logical Operators; Quantifiers; Capturing Groups; Boundary Matches; The Pattern Class; The Matcher Class;
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);

8

Java SE JDNI Introduction;
Java SE Design Patterns;
Java SE Efficient Programming;
Introduction to Maven;
Introduction to JAAS;
Java SE Internationalization;
Java SE Annotations Facility
Mongo Basics
Hibernate Fundamentals
JNI Basics;
AspectJ Fundamentals

Scala Fundamentals

Java SE JDNI Introduction: Introduction to JNDI; JNDI Naming Operations; JNDI Directory Operations; Java
Java 2 SE Design Patterns
: Structural Patterns; Behavioral Patterns; Creational Patterns; Concurrency Patterns;
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;

Introduction To Maven:
 Jump Start; Build Life Cycle; Archiva; Testing; Website Setup;
Introduction to JAAS:
 Introduction to JAAS; Authentication; Autharization;
Java SE Internationalization:
Introduction; The Locale Class; Resources Bundles; Data Formatting; Localized GUI;
MongoDB Basics

Introduciton; Jump Start; CRUD Operations; Querying; Indexing;
Hibernate Fundamentals

Introduction; Persistence; Mapping

Hibername Fundamentals
Mapping; Sessions; Queries
JNI Basics:
Introduction to JNI; Jump Start;
AspectJ Fundamentals:

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

Introduction; Basics;

9

Scala Fundamentals

Objects & Classes; Operators; Control Statements; Functions;
Closures; Inheritance;

10

Scala Fundamentals

Control Structures; Hierarchy; Traits; Packages; Assertions; Unit Testing; Exceptions Handling; Patterns Matching; Collections;
Lists;

11

Scala Fundamentals

Type Parametrization; Abstract Members; Stateful Objects; Types Conversions; Extractors; Annotations; Scala & XML; Objects Comparisons; Java Integration; Concurrency

Quiz

The quiz will take place in meeting #10. It includes three parts:

1. Question\Questions regarding the client server assignment (40%)                

2. Tricky questions. The tricky questions include questions similar to those you can find at http://zindell.com/joomla/index.php?option=com_content&task=view&id=40&Itemid=47 in the following topics: Basics, Classes & Objects, Arrays & Strings, Inheritance, Inner Classes, Threads, Exceptions Handling, I/O Streams, Collections. In addition, the tricky questions part includes questions in the following topics: Reflection and Generics. (60%)

3. General questions about Design Patterns implementation in Java SE. Towards this part of the quiz you should watch all video clips that explain design patterns at http://javabook.co.il/wp/?page_id=64. (20%)

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.