1CMSC131 Lecture Set 1: IntroductionIntroductionTopics in this set:1. Course information2Tools needed for this courseCMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)2.Tools needed for this course3. Computer terminology basicsCMSC 131 Name: “Object-Oriented Programming I” Instructors: Jan Plane & Fawzi Emad TAs:Christopher, Arijit, Ke, Tak, Shiv, Chan, Praveen, Qiang, Yuening, Eylul, Nir, and Ben Class meetings Lab and Lecture1CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr) Office Hours Posted on Web Page Mine start today and TAs start Wednesday All in AVW building (1112, 1113 and 1127)2What Is This Course? A fast-paced introduction to techniques for writing computer programs! Skill Development in ProgrammingSkill Development in Programming Conceptual Understanding of Programming Not really “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 understandGthl l if h i t blit t&TA2CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)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 dayTextbooks & Course Web-Pagehttp://www cs umd edu/class/fall2009/cmsc131/http://www.cs.umd.edu/class/fall2009/cmsc131/ Check daily! Review: Announcements Syllabus Contact3CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr) Schedule Lecture slides – outlines Study questions – login: study password: daily3Course Software EclipseAn IDE (integrated development environment)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/4CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr) CVS (Concurrent Versions System) A version-management system You will use it for submitting your projects We will talk more about this laterTools 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 errorsToday: IDE =“integrated development environment”5CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)Today: IDE = integrated development environment Text editor / compiler / debugger rolled in one Examples: Eclipse, Visual Studio, NetBeans, etc.4Basics of Eclipse http://www.cs.umd.edu/eclipse/EclipseTutorial/ Eclipse is used to: Create Edit CompileRun6CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)Run Debugprograms (for this class, Java programs).Basics of Eclipse-speak Project: collection of related source files To create a program in Eclipse: Create a new projectCreate files in the projectCreate 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 programsCVS repository: for interacting with assignment-submission system7CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)CVS repository: for interacting with assignment-submission system Workspace: Where your files are stored locally Buffer: Window where editing takes place Demo5Class Projects with CVS You will use Eclipse for Java programming in this coursecourse 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)Tlf jtfil t8CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)Tool for project-file management Maintains versions, etc. Allows different sites to work on same projectCVS WorldviewFiles(l l i )“checkout”“commit”Files in“repository”Server(local copies)Client 1Filcheckout“checkout”9CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)ServerFiles(local copies)Client 2“commit”6CVS in More Detail CVS server maintains current versions of files in jt(“ it ”)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 version10CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr) (Once a repository is checked out by a client, subsequent versions may be accessed via “update”)How CMSC Project Submission Works Repository created for each student linuxlab taccount You check out repository to start work on project When you “save” changes in Eclipse, “commit” automatically invoked by plug-insYou“submit”when finished using Eclipse (UMD11CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)You submit when finished using Eclipse (UMD plug-in handles relevant CVS commands)7Demo1) Making a new Repository Location2) Checking Out a project3) Making changes to that project4) Committing the project5) Program execution6) Submitting the project7) Looking at the runtime results12CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)Adding a CVS RepositoryCommon to everyoneCommon to everyoneYour linuxlab usernameYour linuxlab password13CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)Don’t forget to set this!8Working on Project You do not have this project showing in the Java iperspective. 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 14CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)yedit When you save in “Java” perspective, changes are automatically committed to CVS repository.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 testsRl t t15CMSC 131 Fall 2009Jan Plane (adapted from Bonnie Dorr)Release tests give limited feedback (first two failed tests give more) costs
View Full Document