Stéphane Ducasse3.1 The Squeak Environment. Stéphane Ducasse3.2 Smalltalk Run-Time Architecture Virtual Machine + Image + Changes and Sources Image =

Slides:



Advertisements
Similar presentations
1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
Advertisements

In Review JAVA C++ GUIs - Windows Webopedia.com.
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Dynamic Object-Oriented Programming with Smalltalk 1. Introduction Prof. O. Nierstrasz Autumn Semester 2009.
Dynamic Object-Oriented Programming with Smalltalk 1. Introduction Prof. O. Nierstrasz Autumn Semester 2007.
Java: History and Introduction (Lecture # 1). History… Java – Based on C and C++ – Developed in 1991 for intelligent consumer electronic devices – Green.
Remote Method Invocation Chin-Chih Chang. Java Remote Object Invocation In Java, the object is serialized before being passed as a parameter to an RMI.
JDK, Jan Pettersen Nytun - HiA 1 The Java Programming Environment: The programmer write source code with a text editor. The programmer write source code.
Programming Our First Java Program Yingcai Xiao. What to Do Set up for Java Programming Write our first Java Program with IDE Write our first Java Program.
Dynamic Object-Oriented Programming with Smalltalk 1. Introduction Prof. O. Nierstrasz Summer Semester 2006.
Dynamic Object-Oriented Programming with Smalltalk 1. Introduction Prof. O. Nierstrasz Summer Semester 2006.
1 Programming Languages b Each type of CPU has its own specific machine language b But, writing programs in machine languages is cumbersome (too detailed)
Stéphane Ducasse6.1 Essential Concepts Why OO? What is OO? What are the benefits? What are the KEY concepts? Basis for all the lectures.
Principles of Object-oriented Programming Programming Language Paradigms August 26, 2002.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Lecture 2: Do you speak Java?. From Problem to Program Last Lecture we looked at modeling with objects! Steps to solving a business problem –Investigate.
Chapter 1 Introduction.
Introduction to Java.
Java How to Program, 9/e Instructor: José M. Reyes Álamo © by Pearson Education, Inc. All Rights Reserved.
COP4020 Programming Languages
Session-02. Objective In this session you will learn : What is Class Loader ? What is Byte Code Verifier? JIT & JAVA API Features of Java Java Environment.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
The Basic Java Tools A text editor to write Java program source code. A compiler to translate source code into bytecode. An interpreter to translate.
Java PAL.  Contains the development kit and the runtime environment ( aka the Java Virtual Machine )  Download Link:
Computer Programming-1 CSC 111 Chapter 1 : Introduction.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Python Mini-Course University of Oklahoma Department of Psychology Day 1 – Lesson 2 Fundamentals of Programming Languages 4/5/09 Python Mini-Course: Day.
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
1 Integrated Development Environment Building Your First Project (A Step-By-Step Approach)
University of Kansas Electrical Engineering Computer Science Jerry James and Douglas Niehaus Information and Telecommunication Technology Center Electrical.
1 Programming Languages Tevfik Koşar Lecture - II January 19 th, 2006.
Java Programming Introduction & Concepts. Introduction to Java Developed at Sun Microsystems by James Gosling in 1991 Object Oriented Free Compiled and.
UCSC All rights reserved. No part of this material may be reproduced and sold. 1 IT1202-Fundamentals Of Programming (Using JAVA) Interacting with.
1 Module Objective & Outline Module Objective: After completing this Module, you will be able to, appreciate java as a programming language, write java.
Java. Features of Java Architecture Neutral and Portable o Write once, run anywhere o Java Virtual Machine (JVM) Object Oriented o Classes encapsulate.
Dirk Verleysen 8.2 – News Update ESUG Brest.
2. Recording a Macro. Macro Recording Select Record Macro from the Macro file menu and the dialog box opposite will appear Your macro will require a name.
S.Ducasse Stéphane Ducasse 1 The VisualWorks Environment.
Chapter 2: A Brief History Object- Oriented Programming Presentation slides for Object-Oriented Programming by Yahya Garout KFUPM Information & Computer.
Virtual Machines, Interpretation Techniques, and Just-In-Time Compilers Kostis Sagonas
Programming language. Definition Programming language is a formal language designed to communicate instructions to a computer. Programming languages can.
CT1513 Introduction To java © A.AlOsaimi.
Component 4: Introduction to Information and Computer Science Unit 5: Overview of Programming Languages, Including Basic Programming Concepts Lecture 2.
A compiler is a computer program that translate written code (source code) into another computer language Associated with high level languages A well.
 Programming - the process of creating computer programs.
By: Cheryl Mok & Sarah Tan. Java is partially interpreted. 1. Programmer writes a program in textual form 2. Runs the compiler, which converts the textual.
Stéphane Ducasse 1 Run-Time...
Getting Started With Java September 22, Java Bytecode  Bytecode : is a highly optimized set of instructions designed to be executed by the Java.
Programming in the Context of a Typical Computer Computer Studies Created by Rex Woollard.
Java How to Program, 9/e Presented by: José M. Reyes Álamo © by Pearson Education, Inc. All Rights Reserved.
1 Introduction Read D&D Sec 1.8; Sec 1.13 THE Java tutorial -
Thesis Proposal Template Recognition of Bytecodes and Execution using Hardware Architecture. (Vectorization of Java) by Ian Reddy.
Starting Out With Java 5 Control Structures to Objects By Tony Gaddis Copyright © 2005 Pearson Addison- Wesley. All rights reserved. Chapter 1 Slide #1.
Fundamental of Java Programming (630002) Unit – 1 Introduction to Java.
Smalltalk Implementation Harry Porter, October 2009 Smalltalk Implementation: Optimization Techniques Prof. Harry Porter Portland State University 1.
CIS 234: Object-Oriented Programming with Java
Applications Active Web Documents Active Web Documents.
COMP 2100 From Python to Java
Before You Begin Nahla Abuel-ola /WIT.
Chapter 2: Operating-System Structures
Lecture 1: Introduction to JAVA
Topic: Difference b/w JDK, JRE, JIT, JVM
ENERGY 211 / CME 211 Lecture 25 November 17, 2008.
2.1. Compilers and Interpreters
Aaron Bloomfield CS 415 Fall 2005
Advanced Programming: C# Lecture 01: Introduction
Android Platform, Android App Basic Components
Computer Programming-1 CSC 111
Dasar-Dasar Pemrograman 2: Java Basics
Presentation transcript:

Stéphane Ducasse3.1 The Squeak Environment

Stéphane Ducasse3.2 Smalltalk Run-Time Architecture Virtual Machine + Image + Changes and Sources Image = bytecodes Sources and changes = code (text)

Stéphane Ducasse3.3 Runtime Architecture The byte-code is in fact translated into native code by a just-in-time compiler. The source and the changes are not necessary for interpreting the byte-code, this is just for the development. Normally they are removed for deployment. An application can be delivered as some byte- code files that will be executed with a VM. The development image is stripped to remove the unnecessary development components.

Stéphane Ducasse3.4 Mouse Semantics

Stéphane Ducasse3.5 World Menu and Open Menu

Stéphane Ducasse3.6 Browsing a class

Stéphane Ducasse3.7 Browsing methods

Stéphane Ducasse3.8 Inspector To look inside objects Violates encapsulation!!! Monster new inspect

Stéphane Ducasse3.9 Direct Manipulation Bring the halo Experiment

Stéphane Ducasse3.10 Behavioral Inspector Do not break encapsulation myObject behavioralInspect

Stéphane Ducasse3.11 Debugger?

Stéphane Ducasse3.12 Debugger !!!

Stéphane Ducasse3.13 FileList

Stéphane Ducasse3.14 ChangeSorter: to sort your changes

Stéphane Ducasse3.15 Message Names Finder

Stéphane Ducasse3.16

Stéphane Ducasse3.17 Methods in ChangeSets + Versions

Stéphane Ducasse3.18 Preferences

Stéphane Ducasse3.19 SUnit

Stéphane Ducasse3.20

Stéphane Ducasse3.21 Changes Menu…Recently logged files Everything you do is recorded

Stéphane Ducasse3.22 Change your Mind Everything you do is recorded !! So try and learn how to recover your code You are smart so –Experiment, –learn for you, browse, –be aggressive, ***all*** the code is there