29
INFO-H-302 Introduction Python Analyse et Conception par Objets

INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

  • Upload
    others

  • View
    26

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

INFO-H-302Introduction Python

Analyse et Conception par Objets

Page 2: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Pourquoi apprendre Python ?

Page 3: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Pourquoi apprendre un nouveau langage ?

• ... pourquoi pas ?

• "Controlling complexity is the essence of computer programming."(Brian Kernighan)

• Autre langage, autre approche de la complexité

Page 4: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

1986 1990 1990 1991 1991 1993 1994 1995 1996 1996 1997 1997 2000 2001 2001 2003 2003 2004

History of Programming Languages

©2004 O’Reilly Media, Inc. O’Reilly logo is a registered trademark of O’Reilly Media, Inc. All other trademarks are property of their respective owners. part#30417

19601954 1965 1970 1975 1980 1985 1990 1995 2000 20022001 2003 2004

For more than half of the fifty years computer programmers have beenwriting code, O’Reilly has provided developers with comprehensive,in-depth technical information. We’ve kept pace with rapidly changingtechnologies as new languages have emerged, developed, andmatured. Whether you want to learn something new or needanswers to tough technical questions, you’ll find what you need in O’Reilly books and on the O’Reilly Network.

This timeline includes fifty of the more than 2500 documented programming languages. It is based on an original diagram createdby Éric Lévénez (www.levenez.com), augmented with suggestionsfrom O’Reilly authors, friends, and conference attendees.

For information and discussion on this poster, go to www.oreilly.com/go/languageposter.

www.oreilly.com

Page 5: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé
Page 6: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

19

56

19

58

19

60

19

62

19

64

19

66

19

68

19

70

19

72

19

74

19

76

19

78

19

80

19

82

19

84

19

86

19

88

19

90

19

92

19

94

19

96

19

98

20

00

20

02

20

04

20

06

20

08

Sm

allt

alk

80

Ruby

C# 2

.0

SM

L

Cam

l

OC

am

l

Perl

Perl 5

Java 2

(v1.5

beta

)

Fort

ran I

PL/I

Alg

ol 60

Fort

ran 7

7

Schem

e

Com

mon L

isp

Schem

e R

5R

S

Pascal Fort

ran 9

0

Pro

log

Pyth

on

Pyth

on 2

.0

Sm

allt

alk

C (

K&

R)

Tcl

C+

+

CO

BO

L

C#

Lis

p

Java

JavaS

cript

C+

+ (

ISO

)H

askell

98

Ada 8

3

Eiffe

l

ML

Page 7: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

19

56

19

58

19

60

19

62

19

64

19

66

19

68

19

70

19

72

19

74

19

76

19

78

19

80

19

82

19

84

19

86

19

88

19

90

19

92

19

94

19

96

19

98

20

00

20

02

20

04

20

06

20

08

Sm

allt

alk

80

Ruby

C# 2

.0

SM

L

Cam

l

OC

am

l

Perl

Perl 5

Java 2

(v1.5

beta

)

Fort

ran I

PL/I

Alg

ol 60

Fort

ran 7

7

Schem

e

Com

mon L

isp

Schem

e R

5R

S

Pascal Fort

ran 9

0

Pro

log

Pyth

on

Pyth

on 2

.0

Sm

allt

alk

C (

K&

R)

Tcl

C+

+

CO

BO

L

C#

Lis

p

Java

JavaS

cript

C+

+ (

ISO

)H

askell

98

Ada 8

3

Eiffe

l

ML

Page 8: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

19

56

19

58

19

60

19

62

19

64

19

66

19

68

19

70

19

72

19

74

19

76

19

78

19

80

19

82

19

84

19

86

19

88

19

90

19

92

19

94

19

96

19

98

20

00

20

02

20

04

20

06

20

08

Sm

allt

alk

80

Ruby

C# 2

.0

SM

L

Cam

l

OC

am

l

Perl

Perl 5

Java 2

(v1.5

beta

)

Fort

ran I

PL/I

Alg

ol 60

Fort

ran 7

7

Schem

e

Com

mon L

isp

Schem

e R

5R

S

Pascal Fort

ran 9

0

Pro

log

Pyth

on

Pyth

on 2

.0

Sm

allt

alk

C (

K&

R)

Tcl

C+

+

CO

BO

L

C#

Lis

p

Java

JavaS

cript

C+

+ (

ISO

)H

askell

98

Ada 8

3

Eiffe

l

ML

Page 9: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Pourquoi apprendre Python ?

• Suffisamment proche de Java pour être facile

• Suffisamment différent pour être intéressant

• Très utilisé :

• Développement web

• Recherche en Mathématiques, Bioinformatique

• Administration système

Page 10: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé
Page 11: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Python

• Interprété

• Orienté-Objet

• Strong typing

• Dynamic typing

Page 12: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Interprété

Page 13: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Interprété

Page 14: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Interprété

Page 15: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Typage dynamique

Page 16: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Typage fort

Page 17: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

“Duck-Typing”

• “If it quacks like a duck and flies like a duck... it must be a duck”

Page 18: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

“Duck-Typing”

• “If it quacks like a duck and flies like a duck... it must be a duck”

Page 19: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Orienté-Objet

Page 20: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Types de données

Page 21: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Contrôle de flux

Page 22: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Contrôle de flux

Page 23: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Contrôle de flux

Page 24: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Fonctions

Page 25: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Iterator

Page 26: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Iterator

Page 27: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Fonctions, lambdas

Page 28: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Fonctions, lambdas

Page 29: INFO-H-302 Introduction Python...Pourquoi apprendre Python ? • Suffisamment proche de Java pour être facile • Suffisamment différent pour être intéressant • Très utilisé

Plus d’information

• http://www.python.org

• http://docs.python.org/tut/

• http://www.python.org/download/