Course detail

Dynamic Languages

FIT-DJAAcad. year: 2019/2020

Object oriented in programming languages, operating and database systems. Smalltalk Roots: LISP and Simula 67. Net Object Orientation. Smalltalk. Development environment and Smalltalk system architecture. Language and Self. Principles of Smalltalk and Self Implementation. Persistence in object-oriented systems. Reflectivity, principles of open implementations. Programming techniques using reflectivity.

Learning outcomes of the course unit

Ability to program in pure object oriented languages based on Smalltalk and use their dynamic features.
Understanding general principles of pure object orientation and its applications.

Prerequisites

Not applicable.

Co-requisites

Not applicable.

Recommended optional programme components

Not applicable.

Recommended or required reading

Goldberg, A., Robson, D.: Smalltalk-80: The Language, Addison Wesley, 1989, ISBN 0-201-13688-0
LaLonde, W., Pugh, J.: Inside Smalltalk, Vol. 1, Prentice Hall, 1990, ISBN: 0134684141
Guzdial, M.: Squeak, Prentice Hall, 2001, ISBN 0-13-028028-3
Brauer, J.: Programming Smalltalk - Object-Orientation from the Beginning, Springer, 2015, ISBN 978-3-658-06823-3.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

Project.

Language of instruction

Czech

Work placements

Not applicable.

Aims

To introduce to the essence of dynamic languages and their features. To introduce to roots and essence of pure object orientation manifested by dynamic language and system Smalltalk. To introduce to dynamic object oriented systems, their architecture and applications.

Classification of course in study plans

  • Programme IT-MGR-2 Master's

    branch MBI , any year of study, summer semester, 5 credits, optional
    branch MPV , any year of study, summer semester, 5 credits, optional
    branch MGM , any year of study, summer semester, 5 credits, optional
    branch MSK , any year of study, summer semester, 5 credits, optional
    branch MIS , any year of study, summer semester, 5 credits, compulsory-optional
    branch MBS , any year of study, summer semester, 5 credits, compulsory-optional
    branch MIN , any year of study, summer semester, 5 credits, optional
    branch MMM , any year of study, summer semester, 5 credits, compulsory-optional

  • Programme MITAI Master's

    specialization NADE , any year of study, summer semester, 5 credits, optional
    specialization NBIO , any year of study, summer semester, 5 credits, optional
    specialization NGRI , any year of study, summer semester, 5 credits, optional
    specialization NNET , any year of study, summer semester, 5 credits, optional
    specialization NVIZ , any year of study, summer semester, 5 credits, optional
    specialization NCPS , any year of study, summer semester, 5 credits, optional
    specialization NSEC , any year of study, summer semester, 5 credits, optional
    specialization NEMB , any year of study, summer semester, 5 credits, optional
    specialization NHPC , any year of study, summer semester, 5 credits, optional
    specialization NISD , any year of study, summer semester, 5 credits, optional
    specialization NIDE , any year of study, summer semester, 5 credits, optional
    specialization NISY , any year of study, summer semester, 5 credits, optional
    specialization NMAL , any year of study, summer semester, 5 credits, optional
    specialization NMAT , any year of study, summer semester, 5 credits, optional
    specialization NSEN , any year of study, summer semester, 5 credits, optional
    specialization NVER , any year of study, summer semester, 5 credits, optional
    specialization NSPE , any year of study, summer semester, 5 credits, optional

Type of course unit

 

Lecture

26 hours, optionally

Teacher / Lecturer

Syllabus

  1. Object oriented in programming languages, operating and database systems.
  2. Smalltalk Roots: LISP and Simula 67. 
  3. Smalltalk - class-based pure object orientation.
  4. Development environment of Smalltalk systems.
  5. Smalltalk system architecture.
  6. Language and System Self - Classless Pure Object Orientation.
  7. Principles of Smalltalk and Self Implementation.
  8. Persistence in object-oriented systems.
  9. Reflectivity, principles of open implementations.
  10. Programming techniques using reflectivity.
  11. Parallel and distributed programming in Smalltalk systems.
  12. Object oriented modeling and prototyping.
  13. Other dynamic languages. Interoperability.

Project

26 hours, compulsory

Teacher / Lecturer

Syllabus

  • Simple application, demonstrating dynamic properties and reflectivity in any dynamic language, comparing Smalltalk's properties to the other dynamic programming languages.

eLearning