Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Syllabus Ben-GurionUniversity of the Negev Department of Computer Science Name of Course : Introduction to Java Programming Lecturer – Mr. Alexander Shkolnik Course number : 202.1.9031 Mandatory service course Credits : 4 Course Site http://www.cs.bgu.ac.il/~ipc151 Course Objectives: The main purpose of the course - introduction to Java language programming methods, based on new approaches in computer science. On the first part of the course students will acquire procedural programming: software development technique that imposes a hierarchical structure on the design of the programs. On the second part of the course students will learn the principles of object-oriented programming (OOP): programming technique based on objects. Students will learn operation system Windows 7 and Integrated Development Environment (IDE) Eclipse, which provides first – class Java programming tools. The course includes: algorithm building principles, basic Java commands, control structure, arrays, different kinds of methods (including recursion methods), principles of object-oriented programming (OOP) ,collections, dynamic data structures and Java files manipulations. Course requirements: 1. 13 x 3 hours lectures 2. 13 x 2 hours (4 x 2 lab, 9 x 2 frontal) practical lessons 3. 4 programming assignments (about 20 hours each) Every assignment 7.5% of the final grade. 4. Submissions: alone only. Final exam 3 hours long (70% of final grade, a "Pass" requirement regarding Final exam: 56) . No auxiliary material allowed, except for a single two-sided A4 paper sheet (neither printed nor copied). Detailed Syllabus: Meetings Subject(s) Details 1 Computer structure and algorithms Computer structure. Low and high level languages, Compiling, running and debugging. 2 The components of JAVA language Basic Input/Output commands. Types in JAVA, variables, assignment and conditional statements, Casting, switch statement . 3 Iteration statements The FOR statement, the WHILE statement, the DO-WHILE statement, nested loops and jump statements. 4 Arrays Arrays declaration ,basic array operations, multidimensional arrays. Class String and string methods. 5 Methods in Java Principles of procedural programming. Top-down design of a program, modulation, passing parameters to a method, static methods. Java method overloading. 6 Sorting and searching algorithms Selection sort, insertion sort, bubble sort. Searching methods: linear and binary search. Recurrence as an alternative to iteration. 7 Recursion 1 Recursion and loops, recursion and arrays. 8 9 10 11 Building recursive algorithm. Different kinds of recursion. Recursion 2 Permutation and recursion, Towers of Hanoi problem. Principles of object-oriented programming (OOP) 1 Class definition: attributes and methods. Constructors (copy, default), Setter and Getter methods. Object class variables, references to objects. Principles of object-oriented programming (OOP) 2 Class variables and methods, encapsulation. Java API classes. Aggregation, UML diagram , generisity. Composite objects. Self - referential classes. 12 Advanced Input /Output: Streams and Files 13 Review Dynamic data structures: Java linked lists. Class List basic methods. Exception handling, class File and file methods. Reading and writing an object in JAVA. Review on the whole material following above. References: 1. Java Software Solutions John Lewis, William Loftus. Addison Wesley 2. Introduction to Programming Using Java, Sixth Edition Version 6.0, June 2011 Author: David J. Eck 3. . מהתחלהJAVA גדי הולצמן ואיתן הרטמן,נועם גילעדי