Catalogue description. Fast-paced coverage of object-oriented programming using Java and the Java API, including packages for creating graphics and applets; Java syntax and control structures; arrays; designing objects, classes, and methods; graphical user interfaces; input streams; exception handling.
with programming: variables, control structures (conditionals, loops,
functions), arrays. Commonly, this is obtained by successful completion
introductory programming course in a high level programming language
such as C,
C++, or Python.
[CSC 1010, CSC 1030, ECE 1620, or equivalent.]
Course format. one-credit course. Lecture/Hands-on exercises or mini-projects during class; five programming projects; final assessment. This course covers similar material to CSC 1051,with some added topics (see unit 5, below), and at a much faster pace, assuming that students already know basic computing concepts. The course is hands-on and interactive, both in and out of the classroom (we will be using Piazza for online collaboration and discussion). We will use Blackboard only for submitting projects/checking grades.
Course outline. The course will cover five major units as detailed below. Each unit will incorporate several small projects and a more major project.
Unit 1: Introduction to Java programming environment, basic syntax and control structures; arrays.
Unit 2: Exploring classes from the Java API, including String, Math, Random, Graphics; more about data representation
Unit 3: Designing objects/classes/ methods
Unit 4: GUIs; components, containers, and windows; events and listeners
Unit 5: Exception handling; Input Streams
hands-on sets of programming exercises to help you hone your computing
get crucial practice to support you in getting started on the
programming projects. You are encouraged to collaborate with your
classmates for the lab assignments. The lab grade includes a
participation component. This can take many forms, including
participation in online discussions on Piazza.
The lab grade will be based on:
There will be six programming projects assigned throughout the semester designed to exercise various problem solving techniques and the use of certain programming language constructs. Projects will be similar to lab exercises, but are intended to be done outside class. It is acceptable to collaborate with other students on projects, but such collaboration must be documented and you must be able to explain the workings of any program(s) handed in for a project. Projects must be handed in on the due date to receive full credit or up to a maximum of one week late, with penalty 5% per day that the project is late. The only exceptions to the late penalties are as follows: (1) Every student is allowed 4 late days for the whole semester (these should be saved to be used in case of an emergency, think of them as your sick days); (2) Extensions will be granted in cases of extreme hardship documented by a note from the Dean's office.
In one word - be present!
order to enjoy learning about computer science and to get a good grade
for the course,
you need to understand the material well enough to do well in the
written exams. So, use the labs and projects wisely: take your time,
talk about the exercises with your classmates, ask "what if" questions
and have some fun going deeper in investigating questions that interest
you more. Be sure to seek help from the instructor or TAs if you are
stuck or if you have an idea about something you'd like to do but don't
know how to go about it. It
is possible to get good grades in all the labs and projects, but to get
a poor grade in this course if you do not achieve good understanding.
This can happen if you are just
going through the motions and trying to complete assignments as quickly
as possible (just gettting it to work). So, here are some pointers:
Points will be mapped to letter grades as shown below. When you have a question about an assigned grade, please resolve the issue within one week of the return of the assignment or test.
|94 - 100 %||A|
|90 - 93 %||A-|
|85 - 89 %||B+|
|80 - 84 %||B|
|76 - 77 %||C+|
|70 - 75 %||C|
|68 - 69 %||C-|
|66 - 67 %||D+|
|60 - 65 %||D|
|55 - 59 %||D-|