intro-cs3331 - Department of Computer Science
Download
Report
Transcript intro-cs3331 - Department of Computer Science
Welcome to CS 3331,
Advanced Object-Oriented
Programming
Fall 2015
Dept. of Computer Science
University of Texas at El Paso
Quick Survey …
10 minutes
2
Let’s Learn about CS 3331
New pedagogies
Active learning
A process whereby students engage in activities, such as
reading, writing, discussion, or problem solving that
promote analysis, synthesis, and evaluation of class
content … [Wikipedia]
Flipped classroom
An instructional strategy and a type of blended learning
that reverses the traditional educational arrangement by
… [Wikipedia]
Read the course syllabus
10 minutes and then quiz shortly
3
Quiz: What You Just Learned
Download an Android app named MoQuiz
http://www.cs.utep.edu/cheon/cs3331/download
Two versions: Android 4.0+ and lower
No Android device?
• Install an emulator, e.g., BlueStacks and Genymotion
Use this:
Login ID: UTEP login name
PIN: last 4 digits of student ID number
10 minutes for quiz and review
4
Today’s Reading Assignment
Read Chapter 1 (OO S/W Development).
Take Quiz 1 by Thursday 3:10 pm.
Class will start 10 minutes late at 3:10 pm.
5
Review: Course Staff
Instructor: Yoonsik Cheon
Email: [email protected]
Office: CCS 3.0606 (phone: 747-8028)
Office hours: TR 10:30 am - 11:50 am, by
appointment and when door is open
Teaching assistant: TBA
Email: [email protected]
Office: CCS G.0512B (CS TA room)
Office hours: TBA
6
Course Website
URL: http://www.cs.utep.edu/cheon/cs3331
Resources available
News and announcements
Lecture notes
Assignments and exams
Scores and grades
Course info (syllabus, contact info, etc.)
Programming tips, tools, etc.
7
Course Web Account
User ID: cs3331
Password: room206
8
Course Description
Taken from the Course Catalog:
“An in-depth exposure to the object-oriented
programming paradigm, which builds upon
programming experience gained in lowerlevel computer science classes. Emphasis
on programming in an object-oriented
language with which students are already
familiar, and on requirements, testing, code
reading, and comprehension.”
Prerequisite
CS 2402 with a grade of “C” or better
9
Course Objectives
To understand object-oriented design concepts
and principles,
To acquire skills needed for developing high
quality object-oriented programs,
To be able to use object-oriented design
notations like UML for modeling problem
solutions and software systems, and
To be proficient in object-oriented development
environments.
10
Textbook
Xiaoping Jia, Object-Oriented Software
Development Using Java, second edition,
Addison Wesley, 2003.
Recommended references
Scott W. Ambler, The Elements of UML 2.0 Style,
Cambridge University Press, 2005.
Allan Vermeulen, et al., The Elements of Java Style,
Cambridge University Press, 2000.
Richard Warburton, Java 8 Lambdas, O’Reilly, 2014
Available from University Bookstore
Have a copy for reading assignments.
11
Tentative Topics
UML
Applet
Java features (abstract class, interface, package,
exception, generics, Java 8)
Inheritance (overriding, subtyping, hiding)
Class design (canonical forms)
Documenting (Javadoc), DBC and unit testing (JUnit)
Design patterns
OO frameworks: GUI, collections, I/O
Concurrent programming
Network programming
12
Computing Resource
Recommended platform
Java SDK 1.8
Eclipse
JUnit (v. 4.0+)
Git (or other version control systems)
CS dept. machines
Bring portable computers (laptop, notebook,
netbook) to class
13
Course Policy
Assignments
Reading and homework assignments
Mostly programming in Java (more on this later)
Policy
Quiz on readings before class
No late submission for all assignments
Class attendance required; circulate a sign-in sheet!
14
Exams
Mid-term exam
October 15 (Thursday)
Final exam
December 10 (Thursday) at 4:00 pm - 6:45 pm
Or in last week (Dec. 1 or 3)?
15
Grading
Grading
Quizzes and in-class work:
Programming assignments:
Exams:
Bonus (class participation):
30%
40%
30%
5%
Percentage-score-to-letter-grade conversion
90% or higher:
80-89%:
70-79%:
60-69%:
below 60%:
A
B
C
D
F
16
Questions or Concerns?
17
Planned Homework
From Wikipedia
Battleship game
(idea thanks to
Dr. Ward)
18
Battleship Game
Incremental, evolutionary development
Several increments or evolutions
Game board
Modeling in UML
Applet: UI and playing
Application: UI, strategies and playing modes
Network: Socket, Web service and P2P
HW1: Game board (see handout and demo)
19