Lecture_Slides - CS 134 Slide 1 CS 134 Slide 2 What is...

Info icon This preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
CS 134 Slide 1 What is computer science? “The discipline of computing is the systematic study of the algorithmic processes that de- scribe and transform information: thei r theory, analysis, design, efficiency, implementation, and application. The fundamental question underlying all of computing is, ‘What can be (efficiently) automated?’ ” Denning et al., “Computing as a Discipline,” Communications of the ACM 32 , 1 (Jan 1989) pp. 9–23. a young discipline that arose from several more established fields (mathematics, sci- ence, engineering) term coined by George Forsythe, a numeri- cal analyst and founding head (1965-1972) of Stanford University ! s CS Department CS at Waterloo: 1967: Department of Applied Analysis and Computer Science 1975: Department of Computer Science 2002: School of Computer Science CS 134 Slide 2 Aspects of computer science Design (from engineering) ! establish requirements and specifications; create arti- facts based on sound design principles ! application: create hardware and software that is flexi- ble, efficient, and usable Theory (from mathematics) ! develop model; prove theorems ! application: analyze the efficiency of algorithms before implementation; discover limits to computation Experimentation (from science) ! form hypothesis, design experiments, and test predic- tions ! application: simulate real-world situations; test effective- ness of programs whose behaviour cannot be modelled well These aspects appear throughout CS, often concurrently.
Image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
CS 134 Slide 3 Abstraction “Fundamentally, computer science is a sci- ence of abstraction—creating the right model for a problem and devising the appropriate mechanizable techniques to solve it. Con- fronted with a problem, we must create an abstraction of that problem that can be repre- sented and manipulated inside a computer. Through these manipulations, we try to find a solution to the original problem.” A. V. Aho & J. D. Ullman, Foundations of Computer Science CS 134 Slide 4 Object-oriented design Concentrates on data abstraction: 1. identify entities occurring in problem do- main 2. partition similar entities into sets 3. identify properties and operations com- mon to all entities in each set 4. define interfaces to support operations on objects that belong to each entity set 5. define code modules to implement the en- tity sets ! choose representations for objects ! implement methods for constructing and manipulating objects conforming to the interfaces
Image of page 2
CS 134 Slide 5 Problem Description UW’s Registrar’s Office has a list of students and a list of the courses offered by the University. Staff in the office need to be able to add courses to the list of courses and cancel courses. They also need to add a new student to the list of students and register the courses the student is taking.
Image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern