Intro to CIT 594

Slides:



Advertisements
Similar presentations
Intro to CIT 594
Advertisements

CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Introduction to CS170. CS170 has multiple sections Each section has its own class websites URLs for different sections: Section 000:
Intro to CIT 594
1 Intro to CIT 594 ~matuszek/cit594.html.
Intro to CIT 594
General information CSE 230 : Introduction to Software Engineering
CMSC 132: Object-Oriented Programming II
Instructor David Bell EDB 8514 Office:
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
CSc 160 Overview of Fundamentals of Computer Programming II Spring (SO1) 2004.
CIS 251 – Lesson 1 Introduction Rod Rodrigues. Essentials Restrooms Student Lounge Student Study Walk-in Labs Food and Drink – a no-no in Labs Cell Phones.
OBJECT ORIENTED PROGRAMMING I LECTURE 1 GEORGE KOUTSOGIANNAKIS
COMP 110 Introduction to Programming Mr. Joshua Stough August 22, 2007 Monday/Wednesday/Friday 3:00-4:15 Gardner Hall 307.
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
Intro to CIT 594 ~matuszek/cit594.html.
Introduction to Programming Environments for Secondary Education CS 1140 Dr. Ben Schafer Department of Computer Science.
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
Welcome to CompSci 100! As You Arrive… Make sure you grab a syllabus packet. Read through it. I will be covering the most essential points in my talk,
What you need to know about this class A powerpoint syllabus.
Math 125 Statistics. About me  Nedjla Ougouag, PhD  Office: Room 702H  Ph: (312)   Homepage:
1 HCC Brandon Independent Study Orientation Power Point Instructor: Tiffany Cantrell.
Welcome to CS 3331, Advanced Object-Oriented Programming Fall 2009 Dept. of Computer Science University of Texas at El Paso.
COMP 111 Programming Languages 1 First Day. Course COMP111 Dr. Abdul-Hameed Assawadi Office: Room AS15 – No. 2 Tel: Ext. ??
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
CSE 501N Fall ‘09 00: Introduction 27 August 2009 Nick Leidenfrost.
Course Overview Sarah Diesburg  Bobby Roy COP 5641 / CIS 4930.
COMP Introduction to Programming Yi Hong May 13, 2015.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
Undergraduate Survey for Math Dialogue March 2010 Transition from High School to University Technology in High School Math Classes Resources for Undergraduates.
ECEN 301Discussion #1 – Syllabus1 All Sections MWF 1:00 – 1:50 PM 256 CB Lecture: MW Recitation: F Labs: M or Th Instructor: Prof. David Long Office: CB.
Welcome to Physics 1403!!. Class Web Page! There, you can find: 1. Posted (MS Word format): Syllabus,
CS1201: Programming Language 2 C++(Course Introduction) Level 2 Nouf Aljaffan 1 st Term Nouf Aljaffan (C) CSC 1201 Course at KSU.
Catie Welsh January 10, 2011 MWF 1-1:50 pm Sitterson 014.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
17-Dec-03 Intro to CIT 594 ~matuszek/cit594.html.
Overview Algorithms Baojian Hua
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
Introduction to Data Structures
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
ICS102: Introduction To Computing King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science.
Principles of Computer Science I Honors Section Note Set 1 CSE 1341 – H 1.
Syllabus Highlights CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
June 19, Liang-Jun Zhang MTWRF 9:45-11:15 am Sitterson Hall 011 Comp 110 Introduction to Programming.
SE-2030 Software Engineering Tools and Practices SE-2030 Dr. Mark L. Hornick 1.
Intro to CIT 594
Course Overview Mark Stanovich COP 5641 / CIS 4930.
Syllabus Highlights CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
James Tam Introduction To CPSC 233 James Tam Java Object-Orientation Graphical-user interfaces.
Data Structures and Algorithms in Java AlaaEddin 2012.
Course Information CSE 2031 Fall Instructor U. T. Nguyen /new-yen/ Office: CSEB Office hours:  Tuesday,
Introduction to CIT Mar-16.
Course Information CSE 2031 Fall Instructor U.T. Nguyen Office: CSE Home page:
Course Information EECS 2031 Fall Instructor Uyen Trang (U.T.) Nguyen Office: LAS Office hours: 
CS140 – Computer Programming 1 Course Overview First Semester – Fall /1438 – 2016/2017 CS140 - Computer Programming 11.
CSc 120 Introduction to Computer Programing II
Course Information EECS 2031 – Section A Fall 2017.
Computer Engineering Department Islamic University of Gaza
Course Introduction – Fall 2014
Intro to CIT 594
EE422C Software Design and Implementation II
CSE1311 Introductory Programming for Engineers & Scientists
PHYS 202 Intro Physics II Catalog description: A continuation of PHYS 201 covering the topics of electricity and magnetism, light, and modern physics.
Course Information EECS 2031 Fall 2016.
CSCE 221 Professor Lupoli TAMU CSCE 221 Intro.
Intro to CIT 594
Office hours: By Appt
Intro to CIT 594
Dr. David Matuszek Spring, 2003
Presentation transcript:

Intro to CIT 594

2 Prerequisites The formal prerequisite is CIT 591 CIT 591 was primarily a course in Java If you did not take CIT You must be a reasonably good Java programmer, including programming applications, applets, and Swing You must be familiar with, or prepared to learn quickly: JUnit testing The Eclipse IDE You are expected to have good Java programming style Other programming languages can not be used as a substitute for Java

3 What the course is about There are four main, interrelated topics in CIT594: Recursion Data structures Algorithms Analysis of algorithms In addition, we will continue to explore good programming practices Good programming style Good habits, such as creating test cases Use of tools, such as Eclipse and JUnit It will also be necessary to cover more Java

4 Required textbook #1 Data Structures & Algorithms in Java, Second Edition, by Robert Lafore This book has the clearest and most understandable explanations of algorithms that I have ever seen (and I’ve seen a lot of Data Structures textbooks!) It does not, however, cover some of the essential math we will need

Recommended book #1 If you don’t have a book that describes the new features in Java 5 (especially generics), you should get one Here’s my favorite:

6 Recommended book #2 The Elements of Java Style, by Alan Vermeulen (ed.) This book describes the style that will be expected of you

7 Java in this course This is a course in algorithms and data structures, not a second course in Java But... Java 5.0 will be the primary programming language We will study Java Collections in detail, as they are extremely relevant to the course You will be expected to use Eclipse 3.1M4 or newer (the current version is 3.2.1) Eclipse 3.0 does not support Java 5.0

8 Java Collections Java Collections implement many of the most important data structures for you A traditional data structures course would have you implement these yourself I don’t believe in re-inventing the wheel However, you need to know how these data structures are implemented, for the times when you need something more than Java gives you

9 Algorithms There are literally thousands of published algorithms We will cover: a few algorithms that are related to the data structures we are studying a few more algorithms that your instructor especially likes It’s usually better to find an existing algorithm than to re-invent it yourself The Data Structures & Algorithms in Java textbook is an excellent textbook for beginning data structures and algorithms, but it completely ignores Java’s collections

10 Analysis of algorithms Analysis of algorithms is a relatively small part of this course, but it’s an important part Analysis can tell you how fast an algorithm will run, and how much space it will require A good algorithm, even if badly coded, can run circles around a poor algorithm that is carefully tuned and highly optimized

Assignments Except as otherwise noted, all assignments: Should be done in Eclipse Should include complete JUnit tests for non-GUI, non-I/O classes, and Should include complete javadoc documentation for non-private entities Must be submitted via Blackboard; will not be accepted You will do some programming with a partner Partners are assigned by the instructor As in CIT591, you will get a different partner for each assignment Unfortunately, we do not have a laboratory section You will do some assignments by yourself You may discuss the assignments with other students You may help (and get help with) debugging You may not give your source code to anyone Late assignments will lose 5 points per day, and may or may not be accepted if more than a week late

12 Grading We will have: Approximately one assignment per week One midterm One final exam Grades will be curved We will use Blackboard to turn in assignments Grades will be weighted as follows: 50% assignments 20% midterm 30% final exam If you feel a grading error has been made, you have one week after grades have been posted to bring it to our attention

13 Office hours and (no) labs I will be more available than last semester I avoid making appointments I have an open door policy: If my door is open, I’m available Posted office hours are just the times that I try hard to be in my office, not the only times you can talk to me The TA will also have office hours We will not have extra help sessions or labs this semester

14 The End