Sie sind auf Seite 1von 4

Introduction to Computer Science II - ITCS 1213- Spring 2015

Instructor:
Lorrie Lehmann
E-mail: ljlehman@uncc.edu
Telephone: (704) 687-8439 (office)
Office: Woodward Hall 423C
Office Hours: Monday and Wed 12:30-1:30pm, 3:30-5pm (not after lecture)
Email Format: If you want me to respond to your email this MUST be in the subject
line. Only send email from your UNCC account, since our system may block mail
from outside systems.
Your name
Course and section you are in ITCS 1213-section number

Course Description:
Prerequisite: ITCS 1212 with a grade of C or higher. Look at the list of topics from
ITCS 1212 you are required to already be familiar with. We are not re-learning any of
these topics over again in this course. This is a second course in programming. You are
expected to know the topics covered in ITCS 1212.
This is a first course in object-oriented concepts and design. We are using the Java
programming language to illustrate the concepts.
Required Text:

Title:
Starting out With Java, Early Objects
Author:
GADDIS
Edition:
not important
Publisher:
PEARSON
ISBN:
9780132164764

Clicker: Turning Technology Clicker-need by Wednesday, January 15.


Software:
We will use Oracles JDK for compiling and running the programs. The text comes with
an IDE, (jGrasp) but you are free to use another IDE if you are comfortable with it. An
easy to use IDE I recommend for use in this class is BlueJ ( www.bluej.org )
I will be using the BlueJ IDE for all examples in class lectures.
Check this link for locations and schedule of operating hours for campus labs:
http://www.labs.uncc.edu/connecting/labs.html

Disability Services:
If you believe you need special accommodations for any aspect of this course, it is your
responsibility to contact Disability Services well before the date you anticipate needing
those accommodations. Their office is located in Fretwell, Room 230.
Attendance, Make-up Policy
You are expected to attend all classes. You are always responsible for any
announcements made in class, assignments, new material, lecture notes, or other work
missed due to absences. Absence does not relieve you of the responsibility for meeting
programming assignment deadlines. Make a friend in this class. I will NOT post notes or
assignment requirements on Moodle. You must be in lecture to get this material. I will
not give private lectures if you miss a class meeting. You are responsible for all material
discussed in the lecture periods.
Academic Integrity
Unless otherwise specified, the UNC Charlotte guidelines on Academic Integrity fully
apply to all work in this course. This includes programming assignments and exams or
quizzes. In particular, submission of someone elses work as your own is considered
plagiarism, whether it is a computer program or an exam solution, and will be dealt with
under the Academic Integrity guidelines. All programming assignments must be your
own work. Providing or accepting code to/from another student is considered a violation
of the Academic Integrity Code. Penalties for violations of academic integrity range from
a course grade of F (the minimum penalty) to expulsion from the University.
If you take a clicker quiz for a friend, both of you will be charged with an Academic
Integrity Violation, receive an F in the course and be reported to the Dean of Students.

**** IMPORTANT MPORTANT IMPORTANT IMPORTANT ****


The possession of program material developed by someone other than you
is considered to fall under the above restriction, and similar penalties
apply. This means that copying/emailing/looking at/etc. another student's
files related to any programming assignment is prohibited.
If you give your code to some other student or receive code from another
student, that is considered a breach of the Academic Integrity Police and
the consequences range from a F in the course to suspension from the
university. I may call you in at any time to ask you questions about the
code you submitted.
Course Grading Scale:

90 80 70 60 Below

100
89.9
79.9
69.9
60

A
B
C
D
F

Semester Tests
Topics in the syllabus form the basis for this course. Programming is a critical part of
this course. You should expect tests to include questions related to programming

work. Each test is cumulative, since programming concepts build on past concepts
learned.. Students are expected to be on time for all tests. No one may begin a test or
exam more than 10 minutes late.
There will be NO makeup tests.
Final Exam
The final exam is a comprehensive exam covering the entire semester's work, and may
include questions related to any of your programming assignments.
Programming Assignment Grades
Each programming test- assignment is due at 11:55 p.m. on the due date specified. If
your files are not found in the assignment box in Moodle when a program is due,
then a zero will be given for the assignment. It is your responsibility to be aware of
the deadlines and to submit the programs in Moodle. Do NOT submit assignments by
email. You must submit them directly to Moodle. Assignments will NOT be accepted
through email.
Moodle sends you an email when you submit. Save those emails until the end of the
semester. The email is proof of submission.
All programming assignments MUST be submitted through Moodle, no exceptions. We
accept NO late assignments. So plan on submitting all programming tests early. If your
Internet access goes down or your computer crashes, it makes no difference. We will not
accept any late assignments or email submissions under any circumstances.
A program that does not both compile and run will earn a grade of 0. All programs
must be fully documented as explained in lecture and lab. Significant points on
the programming assignment are assigned for documentation.
You may NOT seek help from the CCI_tutors for the programming tests. If you do,
that will result in a grade of 0 on the programming test. You can have them help
you with any of the lab programs and the practice programs.
Course Grade
2 Tests:
40 % (20% each)
Programming assignments: 20% (this means the highest you can get is a C without programming)
Final exam:
25%
In class quizzes
15%
ITCS 1213L Lab attendance is mandatory. For each lab session you miss, 4 points
are deducted from your final average.

Note: We will have a clicker quiz in almost every lecture. Bring your clicker to
every lecture. Take note if the battery is running low. We do not accept make-up
clicker quizzes or paper submissions. In order to get any points for a clicker quiz,
you must be present and take the quiz with your clicker. If you have someone else
take your clicker quiz, both of y will be charged with a violation of UNCC
Academic Integrity and earn an F in the course.

Working from home


You may work on programming assignments at home, but you are always responsible
for making sure that the program you submit compiles and runs on the UNCC system
and that it is submitted into the grading directory. Being unable to submit a program into
the grading directory from home is NOT a valid excuse for late submission. You may
also use the computers in the Woodward 120 lab.

ITCS 1213
Topics in order of discussion:
Introduction to object-oriented approach to programming
Mechanics of using the BlueJ IDE
the JDK, javac and java vm
Using the Java API documentation
Creating a class definition file, encapsulation
Private and public class members
Fields vs variables
constructor method
overloaded methods
using new
Java data types difference between primitive and reference types
Creating instances in the main( ) method
setter(mutator) and getter(accessor) methods
String class, String class methods using API documentation
Scanner class for reading input
Using a debugger
Lecture Test 1
equals( ), compareTo( ) and toString( ) method for object references
Generating a random number
Reading from and writing to a data file
StringBuilder class to manipulate data in a String
static methods
StringTokenizer class
writing and use of a copy constructor
returning an object reference from a method
aggregation
arrays of primitives, arrays of references, an array as an object
command line arguments
Lecture Test 2
two-dimensional (and more) arrays
Inheritance
Polymorphism
Protected and package specifiers
Java interfaces
Exception handling
Pre-written Exception classes
Creating Exceptions
Throwing exceptions
Final Exam