csc7322: object oriented development j paul gibson, a207 [email protected]
DESCRIPTION
CSC7322: Object Oriented Development J Paul Gibson, A207 [email protected] http:// www-public. telecom-sudparis.eu /~ gibson/Teaching/CSC7322/. Introduction /~ gibson / Teaching /CSC7322/L1-Introduction.pdf. Objects : from real world to code?. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/1.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.1
CSC7322: Object Oriented Development
J Paul Gibson, A207
http://www-public.telecom-sudparis.eu/~gibson/Teaching/CSC7322/
Introduction/~gibson/Teaching/CSC7322/L1-Introduction.pdf
![Page 2: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/2.jpg)
2010: J Paul Gibson TSP: Mathematical Foundations MAT7003/Introduction.2
Objects: from real world to code?
![Page 3: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/3.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.3
OOP – A world of abstractions
![Page 4: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/4.jpg)
2010: J Paul Gibson TSP: Mathematical Foundations MAT7003/Introduction.4
From module description
![Page 5: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/5.jpg)
2010: J Paul Gibson TSP: Mathematical Foundations MAT7003/Introduction.5
From module description
![Page 6: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/6.jpg)
2010: J Paul Gibson TSP: Mathematical Foundations MAT7003/Introduction.6
Web Site: continually updated
![Page 7: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/7.jpg)
2010: J Paul Gibson TSP: Mathematical Foundations MAT7003/Introduction.7
Languages Evolve
NEXT?
![Page 8: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/8.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.8
Fotis Georgatos
![Page 9: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/9.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.9
History: OOP and its relation to other languages
http://bluebones.net/evolution/evo-prog-lang.png
![Page 10: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/10.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.10
Languages that we will discuss in this module
![Page 11: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/11.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.11
Note: each language has also evolved over time.
For example, JAVA has gone through 20+ updates since I started using it:
![Page 12: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/12.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.12
HISTORY OOD (figure from http://uml-tutorials.trireme.com/uml_tutorial_1.htm)
![Page 13: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/13.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.13
What is the OO paradigm?
A Brief History of the Object-Oriented Approach Luiz Fernando Capretz
![Page 14: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/14.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.14
What is the OO paradigm?
Object-based?
Class-based?
Object-oriented?
Pure object-oriented?
Wegner, Peter. Dimensions of object-based language design.
![Page 15: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/15.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.15
Some recommended reading … with more to come in later lectures
![Page 16: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/16.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.16
What do the functional programmers think of OO?
![Page 17: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/17.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.17
Pseudo Object-Oriented ProgrammingConsidered Harmful
Conrad WeisertInformation Disciplines, Inc., Chicago
If your only tool is a hammer, everything looks like a nail.
http://www.idinews.com/westfall.pdf
Abraham Kaplan
![Page 18: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/18.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.18
Pseudo Object-Oriented ProgrammingConsidered Harmful
QUESTION:Write a « hello world » program (or programs) that illustrate your understanding of 1 or more key object oriented concepts.
Present the program and the concept(s) to the class
![Page 19: CSC7322: Object Oriented Development J Paul Gibson, A207 paul.gibson@telecom-sudparis.eu](https://reader036.vdocument.in/reader036/viewer/2022062315/5681629c550346895dd310c4/html5/thumbnails/19.jpg)
2013: J Paul Gibson TSP: Object Oriented Development CSC7322/Introduction.19
Some PBL
You are to write some Java code that can represent a finite sequence of natural numbers eg:
• 2,3,4,5• 1,2,3• 6,7,8,9,10,11
You are to be able to: create a new sequence as the overlap of 2 other sequences overlap 2,3,4,5 and 1,2,3 = 2,3 create a new sequence as the interior of 2 other sequences interior 1,2,3 and 6,7,8,9,10,11 = 4,5,6 test if 2 sequences are equal output a sequence to the terminal/screen