Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

OOP with Smalltalk

72 vues

Publié le

by Nadina Martinez Carod, Silvia Amaro, Natalia Elizabet Baeza
For more than 15 years we have instructed students to learn OOP using Smalltalk, mainly in concepts such as encapsulation, abstraction, inheritance, and polymorphism. At the end of the course, students are able to identify advantages in terms of reusability, creating and implementing simple solutions for typical problems. This is possible because of the characteristics and nature of this pure OO language and we choose it because we consider it the best way to start learning thinking differently.
However, students usually present some difficulties when they start thinking in this new paradigm. After this first difficult step that they have to pass through, they finally get a whole idea about what OOP is, how and when they could use it. We use simple examples and typical problems by identifying implementation differences between different OO programming languages.
This document explains our experience from a lecturer's point of view and shows some examples about what they are able to do during the OOP course for the Computer Science degree careers in the UNComahue. It also explains briefly what is the OOP related knowledge the University guarantee the students acquired during the Bachelor.

  • Identifiez-vous pour voir les commentaires

  • Soyez le premier à aimer ceci

OOP with Smalltalk

  1. 1. OOP with Smalltalk
  2. 2. Nadina Martinez Silvia Amaro Natalia Baeza Facultad de Informática
  3. 3. About this talk... - Context - A little bit of history - The Paradigm - Environments - Final practice - Conclusions
  4. 4. Context - Careers LSI, LCC, PI - OOP: 1 common course - 6 hours - 1st semester - 2nd year - 3rd programming course of the careers. - Since 2014
  5. 5. A little bit of history... ● The very beginning: 1998 ● DELPHI … ¿Why? → PASCAL ● 4th programming course ● 10 hours Problem: ● Difficulty verifying the students applied OOP concepts properly
  6. 6. History, 2nd iteration ● 1999 (2nd year) ● Smalltalk appears… ¿Why? ○ Pure, simple, clean ○ Suggested by Gustavo Rossi (UNLP)
  7. 7. History, Patterns ● Singleton ● Composite ● Adapter ● Observer ● State ● Chain of Responsibility
  8. 8. Introducing to The Paradigm ● We start with: ○ Abstraction ○ Responsibility ○ Encapsulation ○ Modularity ○ Hierarchy
  9. 9. We emphasize... ● Inheritance ● Polimorfism ● Dynamic binding ● Visibility Not related to a specific language From diagrams to implementation
  10. 10. Comparisons with other languages ● Binding and Visibility ● Creation and initialization of objects ● Polymorphism
  11. 11. Environments ● VisualWorks (until 2008) ● Squeak ● Pharo (since 2016) ● Next year? ….
  12. 12. Final Practice ● Incremental ● Examples: ○ Board games ○ Sea life ○ Strategic games
  13. 13. Conclusions ● Academic focus vs. Enterprise uses ● Possible changes: ○ incorporate TDD? ○ Change environment? ● Bibliography → Community
  14. 14. Thanks!!! {silvia.amaro} {nadina.martinez} {natalia.baeza} @fi.uncoma.edu.ar