1 / 46

Introduction

Introduction CS 101 Instructors Jim Cohoon Office Olsson 221 Hours: Monday 3:30 – 5:00, Tuesday 10:00 – 11:00 Email id: Aaron Bloomfield Office Olsson 228D Hours: Monday 1:00 – 2:00, Wednesday 10:00 = 11:00, Friday 10:00 – 11:00 Email: Both instructors also accept appointment

paul2
Download Presentation

Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction

  2. CS 101 • Instructors • Jim Cohoon • Office • Olsson 221 • Hours: Monday 3:30 – 5:00, Tuesday 10:00 – 11:00 • Email id: • Aaron Bloomfield • Office • Olsson 228D • Hours: Monday 1:00 – 2:00, Wednesday 10:00 = 11:00, Friday 10:00 – 11:00 • Email: • Both instructors also accept appointment

  3. Objectives • Provide opportunities for the demonstration of student comprehension through lab demonstrations, tests, and homework projects • Provide a variety of learning experiences to instill familiarity with the fundamentals of computing systems and software development

  4. Objectives • Provide opportunities for the demonstration of student comprehension through lab demonstrations, tests, and homework projects • Provide a variety of learning experiences to instill familiarity with the fundamentals of computing systems and software development • Understand common fundamentals of programming • Understand fundamentals of object-oriented programming in Java • Appreciate importance of software engineering and Computer Science • Develop programs to solve specified problems. • Use the Java SDK environment to create, debug and run simple Java programs

  5. Prerequsites • Genuine interest in learning the material • Agree to abide by the course honor policy

  6. Honor policy • When there is doubt regarding what is allowable or honorable, you will ask before doing it • When possible with honor, you will help your classmates learn and improve • You will seek honorable help before succumbing to frustration • You will pledge your work that you have neither given nor received unauthorized help • You will not describe or show problems to anyone who has not yet completed a quiz or exam • You will not receive information on problems before completing a quiz or exam • By default, collaboration is limited to the discussion of ideas • Code is not distributed either electronically or on paper • Any exceptions will be specifically noted on an assignment

  7. Honor policy • Academic irregularities may result in failure of the course and be brought to the honor committee • Beware of MOSS

  8. Text • Java Program Design, McGraw-Hill, 2005, ISBN 0072948655. • Cohoon and Davidson

  9. Grading criteria • 5% – Laboratory participation • If you miss more than 2 labs, you are subject to course failure for the course • If for a valid reason you are unable to do your lab, there will be a make-up lab on Sunday night, provided that you get permission prior to your scheduled lab • 10% – Laboratory programming quizzes • 35% – Homework assignments • 25% – Midterms • September 29, October 27, November 22 • Your worst midterm will be weighted ½ of your other midterms • 25% – Final exam • Scheduled time is Monday December 13 at 7:00 PM • See other instructors for make-ups; i.e., APMA 310 and ECON 201 • Average grade will be at least a B-

  10. Grading criteria • Average grade will be at least a B-

  11. Home directory service • All assignments and lab files must be kept on your home directory • www.virginia.edu/homedir

  12. Sections • CS 101 • Students have little or no programming experience • Mandatory scheduled closed labs • CS 101E • Students with programming experience • Open labs that are to be completed by a scheduled time • All students take same quizzes and tests, and do the same assignments • Course curve is based on the section with the lower average

  13. Let’s begin • Goal • Teach you how to program effectively • Skills and information to be acquired • Mental model of computer and network behavior • Problem solving • Object-oriented design • Java

  14. Let’s begin • Goal • Teach you how to program effectively • Skills and information to be acquired • Mental model of computer and network behavior • Problem solving • Object-oriented design • Java

  15. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card

  16. Computer Organization

  17. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card 3.06 billion operationsper second

  18. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card 512 million bytes of memory that can betransferred at doublethe normal rate A byte is 8 bits A bit is a 0 or a 1

  19. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Stores 200 billionbytes of data. You want high RPM andlow seek time.0.009 seconds isaverage

  20. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card 17” on the diagonal.Resolution up to1,280 by 1,024pixels

  21. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Microprocessor fordisplaying images with64 million bytes ofmemory. More memorysupports more colorsand higher resolution

  22. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Reads DVDs 16 timesfaster than a basic DVDdrive. Can hold up to8 billion bytes of data

  23. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Can read and writeCDs. Can hold 650million bytes of dataReads at 48 timesfaster and writes24 times faster thana basic drive

  24. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Can send or receiveup to 56 thousandbits per second

  25. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Computer operatingsystem using agraphical interface

  26. Computer Organization • Computer advertisement specification • Intel® Pentium 4 Processorat 3.06GHz with 512K cache • 512MB DDR SDRAM • 200GB ATA-100 Hard Drive(7200 RPM, 9.0 ms seek time) • 17” LCD Monitor • 64MB NVIDIA GeForce4MX Graphics Card® • 16x Max DVD-ROM Drive • 48x/24x/48x CD-RW Drive • 56K PCI Telephony Modem • Windows XP Home Edition SP2 ® • 10/100 Fast Ethernet Network Card Can send or receivedata at two rates – 10 or 100 million bytesper second

  27. Problem Solving • Remember • The goal is not a clever solution but a correct solution

  28. Problem Solving • Accept • The process is iterative • In solving the problem increased understanding might require restarting

  29. Problem Solving • Solutions • Often require both concrete and abstract thinking • Teamwork

  30. Problem Solving Process • What is it? • Analysis • Design • Implementation • Testing

  31. Problem Solving Process • What is it? • Analysis • Design • Implementation • Testing • Determine the inputs, outputs, and other components of the problem • Description should be sufficiently specific to allow you to solve the problem

  32. Problem Solving Process • What is it? • Analysis • Design • Implementation • Testing • Describe the components and associated processes for solving the problem • Straightforward and flexible • Method – process • Object – component and associated methods

  33. Problem Solving Process • What is it? • Analysis • Design • Implementation • Testing • Develop solutions for the components and use those components to produce an overall solution • Straightforward and flexible

  34. Problem Solving Process • What is it? • Analysis • Design • Implementation • Testing Test the components individually and collectively

  35. Problem Solving Process

  36. Tips • Find out as much as you can • Reuse what has been done before • Expect future reuse • Break complex problems into subproblems

  37. Engineering software • Complexity of software grows as attempts are made to make it easier to use • Rise of wizards

  38. Software engineering • Goal • Production of software that is effective and reliable, understandable, cost effective, adaptable, and reusable

  39. Software engineering • Goal • Production of software that is effective and reliable, understandable, cost effective, adaptable, and reusable • Work correctly and not fail

  40. Software engineering • Goal • Production of software that is effective and reliable, understandable, cost effective, adaptable, and reusable • Because of the long lifetime many people will be involved • Creation • Debugging • Maintenance • Enhancement • Two-thirds of the cost is typically beyond creation

  41. Software engineering • Goal • Production of software that is effective and reliable, understandable, cost effective, adaptable, and reusable • Cost to develop and maintain should not exceed expected benefit

  42. Software engineering • Goal • Production of software that is effective and reliable, understandable, cost effective, adaptable, and reusable • Design software so that new features and capabilities can be added

  43. Software engineering • Goal • Production of software that is effective and reliable, understandable, cost effective, adaptable, and reusable • Makes sense due to the great costs involved to have flexible components that can be used in other software

  44. Object-oriented design • Purpose • Promote thinking about software in a way that models the way we think and interact with the physical word • Object • Properties or attributes • Behaviors

  45. Object-oriented design • Class • Term for a type of software object • Object • An instance of a class with • specific properties andattributes

  46. Java and the Internet

More Related