|
Instructor: Anousha Mesbah (Office: 223A Boyd GSRC)
Email: anousha@uga.edu
Instructor Home Page: www.cs.uga.edu/~shoulami
Course Home Page: www.cs.uga.edu/~shoulami/sp2009/cs1301
Class Time: Tu/Th 12:30 - 1:45 (Conner Hall, Room 210)
Instructor Office hours: TBA
Teaching Assistants:
Shefali Shastri (shefali@uga.edu )
TA's Office hours: 3:30 -5:00 MW (301 Boyd Building )
Course Objective:
Algorithms, Programs and Computing Systems. Fundamental techniques of program development and supportive software tools. Programming projects and applications in a structured computer language.
Hands-on experience using microcomputers.
We will introduce some fundamental ideas in Computer Science, focusing on the object-oriented programming language Java. This will include the fundamentals of the object-oriented paradigm (classes, objects, encapsulation,
inheritance and polymorphism), basic data structures (arrays and linked lists), and basic algorithms (searching and sorting).
Topics to be covered
- Computer basics, Software/Hardware, the Java programming language
- Writing simple Java programs
- Strings, variables, data types, assignments, primitives, expressions, conversions
- The Scanner class, program input
- Conditionals, Logic, Boolean expressions, Nested ifs, switch statements
- Loops, Nested loops, Iterators, Complexity
- Formatting output
- Packages, Wrappers, Using other class packages
- Creating classes and objects
- Containers - Arrays, ArrayLists, Vectors
- Interfaces
- OOP Concepts - Abstract Classes, Class Hierarchies, Inheritance, Polymorphism
- Other Topics (Time Permitting) - GUI, structures, sorting complexity
Textbook:
Java: An Introduction to Problem Solving and Programming (Fifth Edition)
Walter Savitch
Frank M. Carrano
Recommended Book:
Java How to Program, 7th Edition
Harvey M. Deitel
Paul J. Deitel
Policies
Attendance Policy:
Class attendance to the lectures is highly recommended and should be considered a student obligation. If you are absent it is your responsibility
to find out what was covered in class and to catch up. You are expected to arrive on time and remain for the entire period.
If you need to leave the classroom before the period is over, contact your instructor in advance. Attendance to the lab sessions is mandatory and
will be recorded at the beginning of the labs.
Classroom Behavior:
You are expected to be respectful in your interaction with the instructor and other fellow students during the lectures and lab sessions.
If you are talking during instruction and interfere with the learning process of your peers, sleeping or engaging in any activity that disrupts the instruction,
you will receive an e-mail from me, which will be copied to your advisor.
If the behavior continues, I will make an appointment with you and your advisor to discuss this situation.
Labs:
There is a required lab that meets twice a week for the entire semester starting on Wednesday, January 14, 2008. Lab attendance is mandatory and will be recorded.
There will be one or two lab exercises assigned per week that are designed to be completed during the scheduled lab period.
You will receive full credit for a lab only when it is correct. Otherwise, you will receive no credit.
Lab assignments are to be completed the week they are assigned. After that week, it will not be accepted.
You can get help from any instructor or lab instructor on lab assignments during the week in which the lab was assigned.
Your lab instructors will explain lab policies further in detail during the first lab session.
Projects:
There will be a project every two weeks. Projects are designed to acquire and enhance your knowledge of the concepts discussed in the lectures. Projects must compile to receive credit. Project assignments that do not compile will receive no credit.
Projects assignments will be due typically on Fridays at 11:55 p.m., unless stated otherwise. Late assignments will be accepted up to 48 hours after the due date and will be subject to 20% penalty; however no late submissions will be accepted for the last course project assignment. In the event of a family emergency, serious illness/injury, or other significant event, please contact your instructor as soon as possible.
Course project assignments must be submitted electronically in WebCT. Instructions for electronic submission are available in WebCT and will be provided during the first lab session.
Grading Policy (subject to change):
- Exam 1: 15%
- Exam 2: 15%
- Labs: 20%
- Projects: 30%
- Final Exam: 20%
Grading Scale (subject to change):
The course final grade will use the following grading scale:
- 93-100 guarantees an A
- 90-93 guarantees an A-
- 88-89 guarantees a B+
- 84-87 guarantees a B
- 80-83 guarantees a B-
- 78-79 guarantees a C+
- 74-77 guarantees a C
- 70-73 guarantees a C-
- 60-69 guarantees a D
- Below 60 is F
Exam Dates:
- Exam #1: February 26, 2009, in class.
- Exam #2: April 9, 2009, in class.
Drop/Add/Withdrawal deadline, Makeup exams and Culture of Honesty:
- Students are expected to maintain regular class and lab attendance and miss no more than 3 classes during the semester. Absences in excess of this may result in administrative withdrawal.
- Drop deadline for fall 2008 is Thursday, August 21, 2008 at midnight.
- Add deadline for fall 2008 is Friday, August 22, 2008 at midnight.
- Withdrawal deadline for fall 2008 is Thursday, October 23, 2008.
- Cheating is not tolerated under any circumstances. You are allowed to discuss the programming assignments as long as the discussion is very general.
You may not show your code to any person till the end of the deadline for that assignment.
- You are encouraged to teach each other and learn from each other.
- Students are not allowed to copy code or portion of code from any source, including the internet. Codes must be commented.
- You should work individually on all projects.
- Projects submitted late will not be accepted.
- If a student misses any deadline or exam, due to unexpected circumstances such as illness or injury, he/she must bring a doctor's diagnostic note. In this circumstance extra time or makeup exam will be given to the student.
- Students are responsible for informing themselves about UGA Culture of Honesty.
Computer Science
Departmental Policy Statement
Academic Honesty
The Computer Science Department recognizes honesty and integrity as necessary to the academic function of the University.
Therefore all students are reminded that the CS faculty requires compliance with the conduct regulations found in the University of Georgia Student Handbook.
Academic honesty means that any work you submit is your own work.
Common forms of academic dishonesty which students should guard against are:
- copying from another student's test paper or laboratory report, or allowing another student to copy from you;
- fabricating data (computer, statistical) for an assignment;
- helping another student to write a laboratory report or computer software code that the student will present as his own work, or accepting such help and presenting the work as your own;
- turning in material from a public source such as a book or the Internet as your own work.
Three steps to help prevent academic dishonesty are:
- Familiarize yourself with the regulations.
- If you have any doubt about what constitutes academic dishonesty, ask your instructor or a staff member at the Office of Judicial Programs.
- Refuse to assist students who want to cheat.
All faculty, staff and students are encouraged to report all suspected cases of academic dishonesty.
All cases of suspected academic dishonesty (cheating) will be referred to the Office of Judicial Programs.
Penalties imposed by the Office of Judicial Programs may include a failing grade in the course and a notation on the student's transcript.
Repeated violations are punishable by expulsion from the University. For further information please refer to the UGA Code of Conduct, available at the URL below.
|