Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UMKD SDP2 2016-2017.docx
Скачиваний:
25
Добавлен:
14.10.2016
Размер:
126.72 Кб
Скачать

3. Availability of teaching and learning resources of the course

«RP 2214 Application Development (SDP2)»

(Course title)

Major

Textbooks and study guides

Copies available

Lecture notes, methodological guidelines for laboratory and practice sessions, SIS, etc.

Copies available

In the library

At the Dept

In the library

At the Dept

5B070400-CSSE

Julie Anderson, Hervé Franceschi, Java Illuminated: An Active Learning Approach, 3rd Edition, ISBN-13: 978-1449632014

N/A

Electronic resource

Lecture notes

N/A

Electronic resource

Kathy Sierra, Bert Bates, Head First Java, 2nd Edition, ISBN:978-0-596-00920-5

N/A

Electronic resource

H. M. Deitel - Deitel & Associates, Inc., P. J. Deitel - Deitel & Associates, Inc., Java™ How to Program, Sixth Edition, ISBN-13 : 978-0-13-128933-8

N/A

Electronic resource

Cay S. Horstmann, Gary Cornell, Core Java™ 2 Volume I - Fundamentals, Seventh Edition, ISBN: 0-13-148202-5

N/A

Electronic resource

Joshua Bloch, Effective Java, 2nd Edition, ISBN-13: 978-0321356680

N/A

Electronic resource

Herbert Schildt, Java: The Complete Reference, Ninth Edition, ISBN-13: 978-0071808552

N/A

Electronic resource

Herbert Schildt, Java: A Beginner's Guide, Sixth Edition, ISBN-13: 978-0071809252

N/A

Electronic resource

4. List of

specialized classroom, specialized equipment and software for conducting course sessions

«RP 2214 Application Development (SDP2)»

(course title)

№ of rooms (classrooms, laboratories)

Purpose of the classroom facility (study rooms, laboratories)

Devices, equipment and software used in the course delivery

1

2

3

4

1

All computer laboratories

For laboratory works and practical classes

Provided with all necessary software

PC’s, monitors, projectors,

Java Development Kit

Eclipse IDE

NetBeans IDE

IntellijIdea IDE

2

All lecture classrooms

For lectures

PC’s, monitors, projectors

5. Lecture materials

LECTURE 1

Course overview.

Review of Java Fundamentals.

The Java Environment.

Introduction to OOP.

Learning Goal: Provides an overview of Java technology as a whole. It discusses both the Java programming language and platform, providing a broad overview of what this technology can do and how it will make your life easier. Language Basics describes the traditional features of the language, including variables, arrays, data types, operators, and control flow.

Object Oriented Programming is a paradigm that provides many concepts such as inheritance, data binding, polymorphism etc. Simula is considered as the first object-oriented programming language. The programming paradigm where everything is represented as an object, is known as truly object-oriented programming language.

LECTURE 2

Object-Oriented Programming.

Class. Object.

Class Design.

Class structure.

Learning Goal: Object-Oriented Programming Concepts teaches the core concepts behind object-oriented programming: objects, classes, inheritance, abstraction, polymorphism, and encapsulation. This lecture introduces how these concepts can be translated into code. Classes and Objects describes how to write the classes from which objects are created, and how to create and use the objects.

In Java everything is encapsulated under classes. Class is the core of Java language. Class can be defined as a template/ blueprint that describe the behaviors /states of a particular entity. A class defines new data type. Once defined this new type can be used to create object of that type. Object is an instance of class. You may also call it as physical existence of a logical template class.

A class is declared using class keyword. A class contain both data and code that operate on that data. The data or variables defined within a class are called instance variables and the code that operates on this data is known as methods.

LECTURE 3

Methods. Variables.

Data types.

Using Loop Constructs.

Expressions and Flow Control.

Learning Goal: Java language has a rich implementation of data types. Data types specify size and the type of values that can be stored in an identifier.

In java, data types are classified into two categories : Primitive Data type and Reference Data type.

Java Programming language defines mainly three kind of variables: Instance variables, Static Variables, Local Variables.

Programming languages provide various control structures that allow for more complicated execution paths. A loop statement allows us to execute a statement or group of statements multiple times.

LECTURE 4

References and Objects.

Polymorphism.

Encapsulation.

Constructors.

Learning Goal: Object is an instance of a class. Class is a template or blueprint from which objects are created. So object is the instance(result) of a class.

Polymorphism - Subclasses of a class can define their own unique behaviors and yet share some of the same functionality of the parent class.

Encapsulation in java is a process of wrapping code and data together into a single unit, for example capsule i.e. mixed of several medicines.

Constructor in java is a special type of method that is used to initialize the object. Java constructor is invoked at the time of object creation. It constructs the values i.e. provides data for the object that is why it is known as constructor.

LECTURE 5

Overflow and Underflow.

Cast in Java.

Object Class.

Abstraction. Abstract classes, methods.

Static keyword.

Learning Goal: Assigning a value of one type to a variable of another type is known as Type Casting.

The Object class, in the java.lang package, sits at the top of the class hierarchy tree. Every class is a descendant, direct or indirect, of the Object class. Every class you use or write inherits the instance methods of Object. You need not use any of these methods, but, if you choose to do so, you may need to override them with code that is specific to your class.

An abstract class is a class that is declared abstract—it may or may not include abstract methods. Abstract classes cannot be instantiated, but they can be subclassed. An abstract method is a method that is declared without an implementation (without braces, and followed by a semicolon).

The static keyword in java is used for memory management mainly. We can apply java static keyword with variables, methods, blocks and nested class. The static keyword belongs to the class than instance of the class.

LECTURE 6

Numbers. String. StringBuilder.

Identifiers, Keywords.

Interfaces.

Advanced String processing.

Learning Goal: In java, string is basically an object that represents sequence of char values. An array of characters works same as java string. Java String class provides a lot of methods to perform operations on string such as compare(), concat(), equals(), split(), length(), replace(), compareTo(), intern(), substring() etc. The java.lang.String class implements Serializable, Comparable and CharSequence interfaces.

In the Java programming language, an interface is a reference type, similar to a class, that can contain only constants, method signatures, default methods, static methods, and nested types. Method bodies exist only for default methods and static methods. Interfaces cannot be instantiated—they can only be implemented by classes or extended by other interfaces.

LECTURE 7

Final.

Typesafe Enumerations.

Code Reuse.

Polymorphism and Composition.

Arrays.

Learning Goal: You can declare some or all of a class's methods final. You use the final keyword in a method declaration to indicate that the method cannot be overridden by subclasses. The Enumeration interface isn't itself a data structure, but it is very important within the context of other data structures. The Enumeration interface defines a means to retrieve successive elements from a data structure. Array is a container which can hold fix number of items and these items should be of same type. Most of the data structures make use of array to implement their algorithms.

LECTURE 8

Generics and Collections.

Data Structures. Arrays.

Learning Goal: Generics are a powerful feature of the Java programming language. They improve the type safety of your code, making more of your bugs detectable at compile time. A collection — sometimes called a container — is simply an object that groups multiple elements into a single unit. Collections are used to store, retrieve, manipulate, and communicate aggregate data. Typically, they represent data items that form a natural group, such as a poker hand (a collection of cards), a mail folder (a collection of letters), or a telephone directory (a mapping of names to phone numbers). The data structures provided by the Java utility package are very powerful and perform a wide range of functions. These data structures consist of the interface and classes.

LECTURE 9

Working with Methods and Method Overloading.

Learning Goal: If a class have multiple methods by same name but different parameters, it is known as Method Overloading. Method Overloading is a feature that allows a class to have two or more methods having same name, if their argument lists are different. In the last tutorial we discussed constructor overloading that allows a class to have more than one constructors having different argument lists.

LECTURE 10

Using Advanced Object-Oriented Concepts.

Advanced class design.

Learning Goal: In Java, just like methods, variables of a class too can have another class as its member. Writing a class within another is allowed in Java. The class written within is called the nested class, and the class that holds the inner class is called the outer class.

Java inner class or nested class is a class i.e. declared inside the class or interface. We use inner classes to logically group classes and interfaces in one place so that it can be more readable and maintainable. Additionally, it can access all the members of outer class including private data members and methods.

LECTURE 11

Exception Handling.

Exceptions and Assertions.

Errors and debugging.

Learning Goal: An exception (or exceptional event) is a problem that arises during the execution of a program. When an Exception occurs the normal flow of the program is disrupted and the program/Application terminates abnormally, which is not recommended, therefore, these exceptions are to be handled.

LECTURE 12

I/O Fundamentals.

Console I/O and File I/O.

Files and Streams.

Learning Goal: The java.io package contains nearly every class you might ever need to perform input and output (I/O) in Java. All these streams represent an input source and an output destination. The stream in the java.io package supports many data such as primitives, object, localized characters, etc. All the programming languages provide support for standard I/O where the user's program can take input from a keyboard and then produce an output on the computer screen.

LECTURE 13

Recursion.

Searching and Sorting Algorithms.

Learning Goal: Recursion in computer science is a method where the solution to a problem depends on solutions to smaller instances of the same problem (as opposed to iteration).

Sorting refers to arranging data in a particular format. Sorting algorithm specifies the way to arrange data in a particular order. Most common orders are numerical or lexicographical order.

search algorithm is an algorithm that retrieves information stored within some data structure. Data structures can include linked lists, arrays, search trees, hash tables, or various other storage methods. The appropriate search algorithm often depends on the data structure being searched.

LECTURE 14

Writing Servlets.

JSP.

Database Access and Permissions.

Learning Goal: Servlets provide a component-based, platform-independent method for building Web-based applications, without the performance limitations of CGI programs. Servlets have access to the entire family of Java APIs, including the JDBC API to access enterprise databases.

JavaServer Pages (JSP) is a technology for developing web pages that support dynamic content which helps developers insert java code in HTML pages by making use of special JSP tags, most of which start with <% and end with %>.

LECTURE 15

Multithreading, Threads, Runnable class.

Introducing Lambda Expressions.

Learning Goal: Java is a multi-threaded programming language which means we can develop multi-threaded program using Java. A multi-threaded program contains two or more parts that can run concurrently and each part can handle a different task at the same time making optimal use of the available resources specially when your computer has multiple CPUs.

Learn how and why to use Lambda Expressions in your applications.

Соседние файлы в предмете Программирование на Java