Introduction to Alice Basics : What is Alice? Object Oriented Definitions What Does it Look Like? Where Can I Use it?

Slides:



Advertisements
Similar presentations
Learning to Program With Alice
Advertisements

Alice: A Fresh Approach to Teaching Computer Science
What Was I Thinking??. Key Terms 1. Control 1. Control 2. Design Mode 2. Design Mode 3. Event 3. Event 4. Form 4. Form 5. Interface 5. Interface 6. Properties.
By Waqas Over the many years the people have studied software-development approaches to figure out which approaches are quickest, cheapest, most.
Introduction to Visual Basic.NET Uploaded By: M.Sheraz anjum.
Programming Paradigms and languages
CS0004: Introduction to Programming Visual Studio 2010 and Controls.
Alice and The Introductory Programming Course: An Invitation to Dialogue Dan GouletDon Slater Univ of Wis-Stevens PointCarnegie Mellon University
Events Chapter 7. Interactive Real world is interactive User determines order of actions instead of programmer.
AA high level programming language. IIt is created by Microsoft. UUses a graphical environment called the Integrated Development Environment (IDE).
Computer Science Dept. Fall 2003 Object models Object models describe the system in terms of object classes An object class is an abstraction over a set.
Introduction to Alice Alice is named in honor of
1 Programming for Engineers in Python Autumn Lecture 5: Object Oriented Programming.
What is an object? Your dog, your desk, your television set, your bicycle. Real-world objects share two characteristics: They all have state and behavior;
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
The Alice Software System Randy Pausch Carnegie Mellon University
Object-oriented Programming Concepts
Other Interaction Styles: Direct Manipulation, Haptic, Multimedia, Multimodal, Virtual Reality, Video Games Dr.s Barnes and Leventhal.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
OBJECT ORIENTED PROGRAMMING IN C++ LECTURE
CS102 Introduction to Computer Programming
CHAPTER 4: INTRODUCTION TO COMPUTER ORGANIZATION AND PROGRAMMING DESIGN Lec. Ghader Kurdi.
 3D graphics environment  Focuses on Object Oriented Programming  Provides immediate feedback through program visualizations  Contains a drag-and-drop.
Lecture 1 Introduction to Java MIT- AITI 2004 What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word.
Object Oriented Software Development
A First Program Using C#
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Introduction to Visual Basic (VB)
Microsoft Visual Basic 2005: Reloaded Second Edition
O BJECT O RIENTATION F UNDAMENTALS Prepared by: Gunjan Chhabra.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
An Introduction to Visual Basic
Programming with Alice Computing Institute for K-12 Teachers Summer 2011 Workshop.
Introduction to Visual Basic. Quick Links Windows Application Programming Event-Driven Application Becoming familiar with VB Control Objects Saving and.
Event Driven Programming
Lecture 1 Introduction to Java MIT-AITI Ethiopia 2004.
Java Applets. 2 Introduction to Java Applet Programs  Applications are stand alone programs executed with Java interpreter executed with Java interpreter.
Visual C++ Programming: Concepts and Projects
Computer Programs and Programming Languages What are low-level languages and high-level languages? High-level language Low-level language Machine-dependent.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
1 CSC 221: Computer Programming I Spring 2008 Objects and classes: a broad view  software objects, classes, object-oriented design  BlueJ IDE, compilation.
I Power Higher Computing Software Development Development Languages and Environments.
Programming Paradigms Lecturer Hamza Azeem. What is PP ? Revision of Programming concepts learned in CPLB Learning how to perform “Object-Oriented Programming”
1.
Java Fundamentals Usman Ependi UBD
Chapter 4 Software. Chapter 4: Software Generations of Languages Each computer is wired to perform certain operations in response to an instruction. An.
Program Visualization Using Virtual Worlds CCLI NSF
What is Alice? Alice is an innovative 3D programming environment that makes it easy to create an animation for telling story, playing an interactive game,
Objective You will be able to define the basic concepts of object-oriented programming with emphasis on objects and classes by taking notes, seeing examples,
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 14 Event-Driven Programming with Graphical User Interfaces.
Programming in Alice IT-IDT-9 Design, develop, test and implement programs using visual programming. 9.1 Utilize drag and drop software to develop programs.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter Chapter 1 Introduction to Object-Oriented Programming and.
Chapter 1: Introduction to Computers and Programming.
Introduction to Java. Java  An Object-Oriented, platform-neutral, secure language.  Object Oriented – software development method – a program is thought.
Systems Analysis & Programming 10.1 Systems Development 10.2 Programming: A Five-Step Procedure Generations of Programming Languages 10.4 Programming.
Programming Logic and Design Seventh Edition Chapter 12 Event-Driven GUI Programming, Multithreading, and Animation.
Unit 2 Technology Systems
Object-Orientated Programming
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING
JAVA By Waqas.
Introduction to Programming and Visual Basic
University of Central Florida COP 3330 Object Oriented Programming
Objects as a programming concept
University of Central Florida COP 3330 Object Oriented Programming
PRINCIPALES OF OBJECT ORIENTED PROGRAMMING
CIS16 Application Development Programming with Visual Basic
Presentation transcript:

Introduction to Alice Basics : What is Alice? Object Oriented Definitions What Does it Look Like? Where Can I Use it?

What is Alice ?  Alice ( is a 3-D Interactive Graphics Programming Environmenthttp://  Developed at Carnegie Mellon  Alice is built on top of the programming language Python  The goal of the Alice project is to make it easy for novices to develop interesting 3-D environments and to explore the new medium of interactive 3-D graphics  A tool for teaching concepts of fundamental programming:  Objects  Classes  Methods  Events

What is Alice ?  Alice is primarily a scripting and prototyping environment for 3-D object behavior  3-D models of objects (e.g., animals and vehicles) populate a virtual world in Alice. By writing simple scripts, Alice users can control object appearance and behavior  Presents Object-Oriented Design  A software design method that models the characteristics of abstract or real objects using classes and objects

What is Alice ?  Uses 3D graphics to engage students  Has a “smart” drag-and-drop editor that prevents syntax errors The Alice Approach

What is Alice ?  Makes objects something students can see and relate to  Has a java syntax mode to ease the transition to C++/Java/VB.net Key Alice Features

What is Alice ? Schools using Alice : Bucknell University Carnegie Mellon University Clemson University Colorado School of Mines Community College of Philadelphia Cornell University Duke University Ithaca College Plymouth State University Saint Joseph's University Saint Lawrence College San Diego State University University of Colorado University of Illinois University of Mississippi Virginia Tech

Object Oriented Definitions Object  Definition: An object is a software bundle of variables and related methods  Object is defined by its properties and its methods/functions  Real-world objects share two characteristics:  State and Behavior For example, dogs have state (name, color, breed, hungry) and behavior (barking, fetching, and wagging tail)

Object Oriented Definitions Object  Software objects are modeled after real-world objects in that they too have state and behavior  A software object maintains its state in one or more variables  A variable is an item of data named by an identifier  A software object implements its behavior with methods  A method is a function (subroutine) associated with an object

Object Oriented Definitions Class  Definition: A class is a blueprint that defines the variables and the methods common to all objects of a certain kind  In the real world, you often have many objects of the same kind  For example, your car is just one of many vehicles in the world  This means that car is one of the choices within the vehicle class

Object Oriented Definitions Class  Using object-oriented terminology, we say that your car object is an instance of the class of objects known as vehicles  Vehicles have some state (four wheels) and behavior (accelerate, brake) in common.  However, each vehicle's state is independent of and can be different from that of other vehicles

Object Oriented Definitions Method  Definition: A method is a piece of code that is exclusively associated either with a class (called class methods) or with an object (called instance methods)  Like a procedure in procedural programming languages, a method usually consists of a sequence of statements to perform an action, a set of input parameters, and possibly an output value of some kind  The purpose of methods is to provide a mechanism for accessing (for both reading and writing) the private data stored in an object or a class

Object Oriented Definitions Method  Methods are essentially instruction sets for objects  Consequently, rather than thinking a method is just a sequence of commands, an OO programmer will consider a method to be "an object's way of providing a service" (its "method of doing the job", hence the name)  A method call is thus considered to be a request to an object to perform some task  Method calls are often modeled as a means of passing a message to an object

Object Oriented Definitions Method  For Example:  The Drive method for a car would consist of turning left ¼ and moving away for a distance of 10 meters car Methods car.Drive ( ) No variables Do in order car turn left 0.25 revolutions car move forward 10 meters

Object Oriented Definitions Event  Definition: An event is an action or occurrence detected by a program  Events can be user actions, such as clicking a mouse button or pressing a key, or system occurrences, such as running out of memory  Most modern applications are said to be event-driven, because they are designed to respond to events

What Does it Look Like ?

Where Can I Use it ?  Computer Lab  Alice is loaded on the computers in the CCRI Academic Computer Lab  Look for the Alice icon on the desktop or under Programs from the Windows Start Menu  Download ALICE Programming software - can be downloaded at (download the most recent version) The download is 115 Megabytes so may be difficult if you do not have access to a broadband network.