Comparison of Object-Oriented Programming Languages Timothy Clark - - PowerPoint PPT Presentation

comparison of object oriented programming languages
SMART_READER_LITE
LIVE PREVIEW

Comparison of Object-Oriented Programming Languages Timothy Clark - - PowerPoint PPT Presentation

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Comparison of Object-Oriented Programming Languages Timothy Clark (488232) April 28, 2008 Timothy Clark (488232) Comparison of


slide-1
SLIDE 1

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison of Object-Oriented Programming Languages

Timothy Clark (488232) April 28, 2008

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-2
SLIDE 2

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Introduction What is object orientation? Comparison Variables Language Comparison Visual Basic Java Python Conclusion

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-3
SLIDE 3

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Introduction

◮ Looking at programming languages

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-4
SLIDE 4

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Introduction

◮ Looking at programming languages ◮ Everyone has their favourite language

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-5
SLIDE 5

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Introduction

◮ Looking at programming languages ◮ Everyone has their favourite language ◮ Object oriented languages are quite popular

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-6
SLIDE 6

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Introduction

◮ Looking at programming languages ◮ Everyone has their favourite language ◮ Object oriented languages are quite popular ◮ Choose the right tool for the job

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-7
SLIDE 7

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-8
SLIDE 8

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-9
SLIDE 9

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-10
SLIDE 10

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-11
SLIDE 11

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-12
SLIDE 12

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes ◮ Encapsulation Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-13
SLIDE 13

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes ◮ Encapsulation ◮ Methods Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-14
SLIDE 14

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes ◮ Encapsulation ◮ Methods ◮ Message Passing Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-15
SLIDE 15

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes ◮ Encapsulation ◮ Methods ◮ Message Passing ◮ Polymorphism Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-16
SLIDE 16

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes ◮ Encapsulation ◮ Methods ◮ Message Passing ◮ Polymorphism ◮ Abstraction Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-17
SLIDE 17

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

What is object orientation?

◮ Type of programming language ◮ Characterised by:

◮ Inheritance ◮ Objects ◮ Classes ◮ Encapsulation ◮ Methods ◮ Message Passing ◮ Polymorphism ◮ Abstraction

◮ Designed to make code reuse and designing large systems

easier

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-18
SLIDE 18

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-19
SLIDE 19

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-20
SLIDE 20

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-21
SLIDE 21

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-22
SLIDE 22

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-23
SLIDE 23

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-24
SLIDE 24

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-25
SLIDE 25

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-26
SLIDE 26

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted or Half Complied Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-27
SLIDE 27

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted or Half Complied is more portable than ◮ Compiled Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-28
SLIDE 28

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted or Half Complied is more portable than ◮ Compiled ◮ Changes how easy it is to move platforms Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-29
SLIDE 29

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted or Half Complied is more portable than ◮ Compiled ◮ Changes how easy it is to move platforms ◮ Type Strength Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-30
SLIDE 30

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted or Half Complied is more portable than ◮ Compiled ◮ Changes how easy it is to move platforms ◮ Type Strength ◮ What the language solves Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-31
SLIDE 31

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Comparison Variables

◮ Hard to decide how to compare languages ◮ I’ve looked at:

◮ Running speed: ◮ Fully Compiled is faster than ◮ Half compiled(Compiled to byte code) is faster than ◮ Fully interpreted ◮ Portability: ◮ Interpreted or Half Complied is more portable than ◮ Compiled ◮ Changes how easy it is to move platforms ◮ Type Strength ◮ What the language solves ◮ How popular it is Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-32
SLIDE 32

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Visual Basic

◮ Microsoft

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-33
SLIDE 33

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Visual Basic

◮ Microsoft ◮ Half Compiled (average speed)

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-34
SLIDE 34

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Visual Basic

◮ Microsoft ◮ Half Compiled (average speed) ◮ Only compiles for Windows

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-35
SLIDE 35

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Visual Basic

◮ Microsoft ◮ Half Compiled (average speed) ◮ Only compiles for Windows ◮ Supports both strong and loose typing depending on compile

  • ptions.

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-36
SLIDE 36

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Visual Basic

◮ Microsoft ◮ Half Compiled (average speed) ◮ Only compiles for Windows ◮ Supports both strong and loose typing depending on compile

  • ptions.

◮ Makes making GUI programs and prototypes for Windows

very easy

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-37
SLIDE 37

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-38
SLIDE 38

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed)

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-39
SLIDE 39

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-40
SLIDE 40

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-41
SLIDE 41

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

◮ Explicit conversions required Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-42
SLIDE 42

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

◮ Explicit conversions required ◮ More compile errors Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-43
SLIDE 43

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

◮ Explicit conversions required ◮ More compile errors ◮ Less run-time errors Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-44
SLIDE 44

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

◮ Explicit conversions required ◮ More compile errors ◮ Less run-time errors

◮ Like C

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-45
SLIDE 45

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

◮ Explicit conversions required ◮ More compile errors ◮ Less run-time errors

◮ Like C ◮ Large class library

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-46
SLIDE 46

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Java

◮ Sun ◮ Half Compiled (average speed) ◮ Runs in a virtual machine that Sun provide for lots of

platforms

◮ Strongly Typed:

◮ Explicit conversions required ◮ More compile errors ◮ Less run-time errors

◮ Like C ◮ Large class library ◮ Good for teaching

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-47
SLIDE 47

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-48
SLIDE 48

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow)

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-49
SLIDE 49

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-50
SLIDE 50

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-51
SLIDE 51

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-52
SLIDE 52

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-53
SLIDE 53

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-54
SLIDE 54

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-55
SLIDE 55

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

◮ Types automatically Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-56
SLIDE 56

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

◮ Types automatically ◮ Type clashes cause run time errors Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-57
SLIDE 57

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

◮ Types automatically ◮ Type clashes cause run time errors

◮ Designed to:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-58
SLIDE 58

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

◮ Types automatically ◮ Type clashes cause run time errors

◮ Designed to:

◮ Make it easy to read and program Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-59
SLIDE 59

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

◮ Types automatically ◮ Type clashes cause run time errors

◮ Designed to:

◮ Make it easy to read and program ◮ Have a big default library Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-60
SLIDE 60

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion Visual Basic Java Python

Python

◮ Python Software Foundation ◮ Fully interpreted (slow) ◮ Syntax Checker ◮ Standard interpreter available for most common platforms ◮ Easy to port interpreter:

◮ Source code available for interpreter ◮ Fully comprehensive language specification

◮ Technically strongly typed:

◮ Types automatically ◮ Type clashes cause run time errors

◮ Designed to:

◮ Make it easy to read and program ◮ Have a big default library

◮ Commonly used as scripting language

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-61
SLIDE 61

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-62
SLIDE 62

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-63
SLIDE 63

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-64
SLIDE 64

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-65
SLIDE 65

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-66
SLIDE 66

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-67
SLIDE 67

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-68
SLIDE 68

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping ◮ Java is good for larger structured programs Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-69
SLIDE 69

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping ◮ Java is good for larger structured programs ◮ Python is a good platform independent prototyping, scripting

and as a ”glue” language

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-70
SLIDE 70

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping ◮ Java is good for larger structured programs ◮ Python is a good platform independent prototyping, scripting

and as a ”glue” language

◮ Downfalls:

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-71
SLIDE 71

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping ◮ Java is good for larger structured programs ◮ Python is a good platform independent prototyping, scripting

and as a ”glue” language

◮ Downfalls:

◮ Visual Basic encourages sloppy programming practice Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-72
SLIDE 72

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping ◮ Java is good for larger structured programs ◮ Python is a good platform independent prototyping, scripting

and as a ”glue” language

◮ Downfalls:

◮ Visual Basic encourages sloppy programming practice ◮ Java is harder to write programs in that the other two Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-73
SLIDE 73

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Conclusion

◮ Varying processing speed ◮ Platform independence varies:

◮ Visual Basic locked to just windows ◮ Python works (or can be made to work) on any platform

◮ Java is the only one that is strongly typed ◮ Good at different things:

◮ Visual Basic is good for windows prototyping ◮ Java is good for larger structured programs ◮ Python is a good platform independent prototyping, scripting

and as a ”glue” language

◮ Downfalls:

◮ Visual Basic encourages sloppy programming practice ◮ Java is harder to write programs in that the other two ◮ Python is slow compared to the other two and can have more

run-time typing errors

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-74
SLIDE 74

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

When would I use these?

◮ Visual Basic for fast Windows GUI prototyping

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-75
SLIDE 75

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

When would I use these?

◮ Visual Basic for fast Windows GUI prototyping ◮ Python for scripting, and prototyping on non windows

platforms

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-76
SLIDE 76

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

When would I use these?

◮ Visual Basic for fast Windows GUI prototyping ◮ Python for scripting, and prototyping on non windows

platforms

◮ Java for programming in larger more structured programs

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-77
SLIDE 77

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Finally

◮ These slides are available at http://sucs.org/˜eclipse

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages

slide-78
SLIDE 78

Outline Introduction What is object orientation? Comparison Variables Language Comparison Conclusion

Finally

◮ These slides are available at http://sucs.org/˜eclipse ◮ Any Questions?

Timothy Clark (488232) Comparison of Object-Oriented Programming Languages