![]() |
![]() |
![]() |
![]() |
Computer Science 101 |
![]() |
![]() |
![]() |
![]() |
Click here for tutorials from a workshop at Duke University in Durham, North Carolina Region.
| Section | Topic | Resources | Assignments | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0.0 |
Bootstrap Learning AliceIt is the "learning of Alice" and not "the Alice program" that we are bootstrapping in this unit. Bootstrapping is explained here and here. Get acquainted with Alice. Play with Alice. Why is it called Alice? Alice is not an acronym: it isn't A.L.I.C.E. and it doesn't stand for anything. The team named the system "Alice" in honor of Charles Lutwidge Dodgson (1832-1898), an English mathmatician and logician who wrote under the pen name Lewis Carroll. Carrol wrote Alice's Adventures in Wonderland and Through the Looking Glass. In the same way that Alice was hesitant when she first stepped through the looking glass, you may have some doubts about learning to program. Please take that first step, and we promise that learning to program a computer will be easier than you might think. The above explanation comes from the textbook by Wanda Dann, Stephen Cooper and Randy Pausch, Learning to Program With Alice (Pearson Education, Inc., Toronto, 2005), page 6. A free and well illustrated copy of Carroll's Alice In Wonderland is available from Home Office Mall. For a great read, get The Annotated Alice, The Definitive Edition of Alice's Adventures in Wonderland and Through the Looking-Glass by Lewis Carroll, (W.W. Norton & Company, Inc., New York, 2000). This particular edition has the original illustrations by John Tenniel, and notes throughout by Martin Gardner who was the mathematical games editor for 25 years for the Scientific American Magazine. |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
1.1 |
Introduction To AliceReview class expectations. Using Alice
|
|
Movies are in Macromedia Flash format (go here: Flash player). Movies will open in a new window. If you have pop-up window prevention software you may not see the movie because of it. View the movie which shows what Alice can do. Note that this video includes audio that narates the action. View the movie to see how to bring an object into Alice from the gallery and move it around in the layout view. Read and practice the following lessons in the Appendix. |
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
1.2 |
Alice ConceptsObjects in Alice What is interactivity? |
|
Print the source code of the programs done for exercises 1-5 below. Click here to see how.
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
2.1 |
Animation Programs: |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
2.2 |
Creating Animation: |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
3.1 |
Built-in Functions and ExpressionsInstructions Control structures Questions Expressions |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
3.2 |
Simple Control StructuresRepetition Loop |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
4.1 |
World-level MethodsCreating your own methods |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
4.2 |
ParametersCreating your own methods |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
4.3 |
Class-level Methods and InheritanceClass-level methods
Creating your own, more powerful classes Inheritance |
|
The following project is part of the next lab. |
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
Tips |
Tips & Techniques 4 - Visible and Invisible ObjectsClass-level methods continued Using object parameters with class-level methods |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
5.1 |
Interactive ProgrammingEvents and event handlers |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
5.2 |
Parameters & Event Handler MethodsMore on interactivity Passing parameters to event-handlers |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
6.1 |
FunctionsBuilt-in questions Creating your own questions |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
6.2 |
Execution Control With If/Else & Boolean FunctionsDecisions Boolean expressions If statements |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
Tips |
Random Numbers and Random MotionStudent presentations for Assignment 2 |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
7.1 |
LoopsIntroduction to repetition The counted loop Nested loops |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
7.2 |
While - A Conditional LoopRandom Motion |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
8.1 |
Introduction to RecursionIntroducing Recursion Comparisons with While |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
8.2 |
Another Flavour of RecursionStructural recursion The Towers of Hanoi |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
9.1 |
ListsIntroduction to lists Iterating through lists in order Iterating through lists simultaneously |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
9.2 |
List SearchWhack-a-mole example |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
10.1 |
Variables & Revisiting InheritanceIntroduction to variables Revisiting Inheritance Student presentations for Assignment 3 |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
10.2 |
An Array Visualization Using an Index VariableIntroducfing arrays Creation and access |
|
|
||||||||||||||
| Section | Topic | Resources | Assignments | ||||||||||||||
Tips |
Debugging With Watch and Text OutputAllowing variables to be watched Work on last class's assignment |
|
Read Tips & Techniques 10: Debugging with Watch and Text Output | ||||||||||||||
|
|
![]() gerry@comscigate.com ICQ# 62833374 |
|