CMSC131 Lecture Set 1 Introduction Topics in this set 1 Course information 2 Tools needed for this course 3 Computer terminology basics CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 0 CMSC 131 Name Object Oriented Programming I Instructors Jan Plane Ben Bederson TAs see Contact web page Class meetings Lab and Lecture Office Hours Posted on Web Page All in AVW building Start Wednesday CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 1 1 What Is This Course A fast paced introduction to techniques for writing computer programs Skill Development in Programming Conceptual Understanding of Programming Beginning of computer science There will be quite a bit of work but assumes you are starting at level 0 Keys to success Attend all classes and lab sections Start assignments early and continue until you truly understand Get help early if you are having trouble instructor TAs Study every day it doesn t work to cram for these exams ask questions as soon as you realize you are confused Check announcements on course web page every day CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 2 Textbooks Course Web Page Textbook is only recommended not required http www cs umd edu class spring2010 cmsc131 Check daily Review Announcements Syllabus Contact Schedule Lecture slides outlines Study questions login study password daily CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 3 2 Course Software Eclipse An IDE integrated development environment You will use it for writing Java programs Access to Eclipse it s free You can install it on your own machine http www cs umd edu eclipse Also accessible in some Workstations at Maryland WAM labs around campus http www wam umd edu CVS Concurrent Versions System A version management system You will use it for submitting your projects We will talk more about this later CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 4 Tools for Writing Programs The old days Text editor used to create files of source code Compiler generate executables from source Debugger trace programs to locate errors Today IDE integrated development environment Text editor compiler debugger rolled in one Examples Eclipse Visual Studio NetBeans etc CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 5 3 Basics of Eclipse http www cs umd edu eclipse EclipseTutorial Eclipse is used to Create Edit Compile Run Debug programs for this class Java programs CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 6 Basics of Eclipse speak Project collection of related source files To create a program in Eclipse Create a new project Create files in the project Perspective framework for viewing and or manipulating programs Important perspectives in this class Java for creating running programs Debug for tracing removing errors in programs CVS repository for interacting with assignment submission system Workspace Where your files are stored locally Buffer Window where editing takes place Demo CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 7 4 Class Projects with CVS You will use Eclipse for Java programming in this course How will you obtain check out files that are supplied to you save commit the files for later work turn in submit when you are finished CVS Concurrent Versions System Tool for project file management Maintains versions etc Allows different sites to work on same project CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 8 CVS Worldview commit checkout Files local copies Files in repository checkout Client 1 Server Files local copies commit CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr Client 2 9 5 CVS in More Detail CVS server maintains current versions of files in project repository To access files from another machine client repository files must be checked out Changes to files on client may be committed to server with changed files becoming new version Once a repository is checked out by a client subsequent versions may be accessed via update CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 10 How CMSC Project Submission Works Repository created for each student linuxlab account You check out repository to start work on project When you save changes in Eclipse commit automatically invoked by plug ins You submit when finished using Eclipse UMD plug in handles relevant CVS commands CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 11 6 Adding a CVS Repository Common to everyone Your linuxlab username Your linuxlab password Don t forget to set this CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 13 Working on Project You do not have this project showing in the Java perspective You go to the CVS perspective and check it out When you switch back to Java perspective your project is now there Make sure you are in the Java perspective to edit When you save in Java perspective changes are automatically committed to CVS repository CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 14 7 Submitting the Project Edit the file Make sure it runs correctly Submit the project for grading Go to submit cs umd edu to see test results Public tests Private tests Release tests give limited feedback first two failed tests give more costs you tokens usually 3 to start with spent tokens regenerate in 24 hours CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 15 Computer Organization Hardware physical parts of computer Monitor mouse keyboard Chips boards Cables cards etc Software non physical logical parts of computer Programs instructions for computer to perform CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 16 8 Hardware Overview CPU central processing unit Main memory random access memory RAM Stores data that can be loaded into main memory SLOWER but permanent I O devices Stores data that CPU accesses including instructions FAST but temporary wiped out when computer is shut off Secondary memory Hard disks CDs DVDs flash memory etc Executes the instructions in programs How you communicate with your machine Keyboard monitor mouse speakers etc Networking equipment How others communicate with your machine Networking cards cables etc CMSC 131 Spring 2010 Jan Plane and Ben Bederson adapted from Bonnie Dorr 17 Main Memory Computer data consists
View Full Document