ap computer science a l.
Skip this Video
Loading SlideShow in 5 Seconds..
AP Computer Science - A PowerPoint Presentation
Download Presentation
AP Computer Science - A

Loading in 2 Seconds...

play fullscreen
1 / 20

AP Computer Science - A - PowerPoint PPT Presentation

  • Uploaded on

AP Computer Science - A. Ms. Knudtzon September 7, 2005. Some of my Background. BS in Computer Science, Harvey Mudd College Software Engineer, The Aerospace Corporation MS in Computer Science, University of Maryland Taught a Data Structures class at Cal-State Los Angeles

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'AP Computer Science - A' - valiant

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
ap computer science a

AP Computer Science - A

Ms. Knudtzon

September 7, 2005

some of my background
Some of my Background
  • BS in Computer Science, Harvey Mudd College
  • Software Engineer, The Aerospace Corporation
  • MS in Computer Science, University of Maryland
  • Taught a Data Structures class at Cal-State Los Angeles
  • Last year, student average of 4.5 on APCS-A
  • Syllabus for the course (Handout)
    • Note: Final Project and Exam
  • Survey - please fill out
  • Course Web Site (Will be ready sometime this weekend)
  • Books:
    • Java Software Solutions (Lewis & Crofton)
    • Other books (I will be using)
      • Learning to Program with Alice (Dann, Cooper & Pausch)
      • Head First Java
      • Objects First with Java: A Practical Introduction Using BlueJ
what i expect of you
What I expect of you
  • Keep your notes organized (take notes in class)
  • Do any assigned reading
  • Do all the assignments
    • Including journals and abstracts
  • Have fun; do hard work
  • Let me know if the assignments are taking more than one hour a night
  • Come to me with questions, concerns, and ideas
  • Follow the lab rules
  • No cheating
    • But what’s cheating in CS?
what you can expect of me
What you can expect of me
  • I will do my best to make class interesting
  • I will create interesting projects for the course
    • Please provide me feedback throughout the course
  • I will be a master learner
    • Teachers should be a model for learning in the classroom environment and facilitate the learning of others
  • I will be available for help
    • After school or by appointment
    • I will answer questions via email (Allow at least 8 hours for a response)
working on st albans computers
Working on St. Albans computers
  • Storing your files (in your student folders on the server)
  • Organizing assignments and labs
    • Keep a folder for each homework or project
  • Software you will be using
    • Alice
    • BlueJ
    • Eclipse (mostly 2nd quarter)
  • Policies for homework submission
    • Submit assignments via email
hw journal assignment
HW: Journal Assignment
  • Please write 1/2 -- 1 page journal about your goals for this semester in this class. Please include/consider:
    • Your background
    • Your interests
    • Your worries
    • What you are most excited about
  • This will be due Friday before class (by email)
    • You will meet with me to discuss these goals early next week
introduction to programming
Introduction to Programming

Say you want to instruct someone to mark the corners of a rectangle (5x10 foot) fence or field

    • How would you explain exactly what to do?
    • How else can we explain how to do that?
  • What if we wanted to:
    • Make pb&j sandwiches for the entire school?
    • Average all the grades in a class?
why is this important
Why is this important
  • For a person to accomplish any task, they have to carry out a set of explicit steps
    • Computers are no different. You have to tell them step-by-step how to do what you want them to do
  • Computer Science, particularly programming, builds off of this simple model of providing short programs (series of steps) to complete tasks
    • As the complexity of the task increases, so does the complexity of the program required to complete it
    • However, even the most complex programs can be broken into a series of simpler programs
programming as science
Programming as Science
  • Programming is not easy and requires creativity
    • Can be hard for people to grasp at first exposure
    • Takes repetition and perseverance
  • Requires a unique way of thinking
    • Requires strong capability to think abstractly
    • You must be able to think both about how to
      • Break problems into small pieces, AND
      • Build a large program from smaller pieces
  • But… being able to think like this will serve you well in almost any future career field
learning programming
Learning Programming
  • 1st quarter we will start with Alice, a 3d programming environment for novices. Then I will introduce the Java programming language and some basic (and not so basic) programming techniques
  • 2nd quarter we will revisit some topics and build on them to make more substantial programs
  • So, don’t worry if things aren’t completely clear at first – it will all make sense more as we go along. By second semester, you won’t remember why you thought this first stuff was difficult!
apcs a intro

APCS-A: Intro

Lecture 02

September 8, 2005

definition of computer science
Definition of Computer Science
  • CS involves the synthesis and analysis of:
    • Algorithms
    • Information representations
    • Information communication processes
    • Automated resource allocation methods
    • Languages for all of the above

Robert Keller

Harvey Mudd College

computer science in general
Computer Science in general
  • What is computer science?
    • Is it programming?
    • Is that it?
    • What’s the role of hardware? Software?
    • What’s computer science research?
  • What are the social implications of computing?
    • What about ethics?
interdisciplinary nature of cs
Interdisciplinary Nature of CS

“Ought computer science be a branch of mathematics? Of engineering? Of architecture? Of art? Of biology? Of sociology? Of philosophy? Alternatively, does it borrow techniques and approaches from all of these disciplines? I think so”

Bjarne Stroustrup, The Design and Evolution of C++, 1994

interdisciplinary nature of cs16
Interdisciplinary Nature of CS
  • Mathematics – discrete analysis, logic
  • Engineering – system design
  • Art – program construction
  • Psychology – interface construction
  • Philosophy – language design
  • Biology – genetic programming paradigms, bio-informatics
  • Architecture – large (and expensive) systems
  • Sociology – information sharing and security
alice concepts
Alice: Concepts
  • Virtual World - Objects are the 3 dimensional things in the world
    • They have height, width & depth
  • Six Directions in the world (relative to the object’s internal orientation)
    • Up & down
    • Left & right
    • Forward & backward
  • Center of an object
    • It is NOT calculated - the artist decides when he/she creates the object - for some objects it is the center of mass
    • For people, the center is between their feet
alice concepts18
Alice: Concepts
  • Distance is measured from the center of the object
  • Position in the world is based on center of object
    • This affects placement of some objects
alice tutorials
Alice: Tutorials
  • You will do Tutorials 1 & 4 to get acquainted with the Alice environment
  • Tutorial 1 involves a simple ice-skating routine and introduces you to the Alice interface
  • Tutorial 4 shows you how to create your own 3d scenes to work with
alice exploration
Alice Exploration
  • When you finish the tutorials, you will create your own animation to show the class
    • You will have the rest of today (after you finish the tutorials and half of the class tomorrow)
    • You are welcome to come to the lab after school today to add even more.
  • Don’t forget the journal assignment due tomorrow.