28
S.Ducasse 1 QuickTime™ TIFF (Uncompr are needed t Stéphane Ducasse [email protected] http://www.listic.univ-savoie.f r/~ducasse/ The Squeak Environment

The Squeak Environment

Embed Size (px)

DESCRIPTION

The Squeak Environment. Smalltalk Run-Time Architecture. Virtual Machine + Image + Changes and Sources Image = bytecodes Sources and changes = code (text). Runtime Architecture. The byte-code is in fact translated into native code by a just-in-time compiler. - PowerPoint PPT Presentation

Citation preview

Page 1: The Squeak Environment

S.Ducasse 1

QuickTime™ and aTIFF (Uncompressed) decompressorare needed to see this picture.

Stéphane [email protected]://www.listic.univ-savoie.fr/~ducasse/

The Squeak Environment

Page 2: The Squeak Environment

S.Ducasse 2

License: CC-Attribution-ShareAlike 2.0http://creativecommons.org/licenses/by-sa/2.0/

Page 3: The Squeak Environment

S.Ducasse 3

Smalltalk Run-Time Architecture• Virtual Machine + Image + Changes and Sources

• Image = bytecodes• Sources and changes = code (text)

A byte-code interpreter:the virtual machine interpretes the imageIMAGE2.IMIMAGE2.CHAStandard SOURCESShared by everybody

IMAGE1.IMIMAGE1.CHAAll the objects of the systemat a moment in time

One per user+

Page 4: The Squeak Environment

S.Ducasse 4

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.

Page 5: The Squeak Environment

S.Ducasse 5

Mouse Semantics

SelectOperateWindowRed BlueYellow

Page 6: The Squeak Environment

S.Ducasse 6

World Menu and Open Menu

Page 7: The Squeak Environment

S.Ducasse 7

Browsing a class

Page 8: The Squeak Environment

S.Ducasse 8

Browsing methods

Page 9: The Squeak Environment

S.Ducasse 9

Inspector• To look inside objects• Violates encapsulation!!!• Monster new inspect

Page 10: The Squeak Environment

S.Ducasse 10

Direct Manipulation• Bring the halo• Experiment

Page 11: The Squeak Environment

S.Ducasse 11

Debugger?

Page 12: The Squeak Environment

S.Ducasse 12

Debugger !!!

Page 13: The Squeak Environment

S.Ducasse 13

FileList

Page 14: The Squeak Environment

S.Ducasse 14

Message Names Finder

Page 15: The Squeak Environment

S.Ducasse 15

Page 16: The Squeak Environment

S.Ducasse 16

Methods in ChangeSets + Versions

Page 17: The Squeak Environment

S.Ducasse 17

Preferences

Page 18: The Squeak Environment

S.Ducasse 18

SUnit

Page 19: The Squeak Environment

S.Ducasse 19

Transcript is Sloooooooooooow

19

Page 20: The Squeak Environment

S.Ducasse 20

Squeak Map Package Loader

Page 21: The Squeak Environment

S.Ducasse 21

Monticello

Page 22: The Squeak Environment

S.Ducasse 22

Monticello Change Browser

Page 23: The Squeak Environment

S.Ducasse 23

Repository

Page 24: The Squeak Environment

S.Ducasse 24

SqueakSource

24

Page 25: The Squeak Environment

S.Ducasse 25

Changes Menu…Recently logged files• Everything you do is recorded

Page 26: The Squeak Environment

S.Ducasse 26

ChangeSorter: to sort your changes

Page 27: The Squeak Environment

S.Ducasse 27

Cool Packages to LoadShoutRefactoring BrowsereCompletion

Page 28: The Squeak Environment

S.Ducasse 28

Change your MindEverything you do is recorded !!So try and learn how to recover your code

You are smart so Experiment, Learn for you, browse, educate your taste (not all Squeak code is good)Be aggressive, ***all*** the code is there