Course detail

Dynamic Languages

FIT-DJAAcad. year: 2021/2022

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.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

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.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

Project.

Course curriculum

Not applicable.

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.

Specification of controlled education, way of implementation and compensation for absences

Not applicable.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Not applicable.

Recommended reading

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

Classification of course in study plans

  • Programme IT-MSC-2 Master's

    branch MBI , 0 year of study, summer semester, elective
    branch MBS , 0 year of study, summer semester, compulsory-optional
    branch MGM , 0 year of study, summer semester, elective
    branch MIN , 0 year of study, summer semester, elective
    branch MIS , 0 year of study, summer semester, compulsory-optional
    branch MMM , 0 year of study, summer semester, compulsory-optional
    branch MPV , 0 year of study, summer semester, elective
    branch MSK , 0 year of study, summer semester, elective

  • Programme MITAI Master's

    specialization NADE , 0 year of study, summer semester, elective
    specialization NBIO , 0 year of study, summer semester, elective
    specialization NCPS , 0 year of study, summer semester, elective
    specialization NEMB , 0 year of study, summer semester, elective
    specialization NGRI , 0 year of study, summer semester, elective
    specialization NHPC , 0 year of study, summer semester, elective
    specialization NIDE , 0 year of study, summer semester, elective
    specialization NISD , 0 year of study, summer semester, elective
    specialization NMAL , 0 year of study, summer semester, elective
    specialization NMAT , 0 year of study, summer semester, elective
    specialization NNET , 0 year of study, summer semester, elective
    specialization NSEC , 0 year of study, summer semester, elective
    specialization NSEN , 0 year of study, summer semester, elective
    specialization NSPE , 0 year of study, summer semester, elective
    specialization NVER , 0 year of study, summer semester, elective
    specialization NVIZ , 0 year of study, summer semester, elective
    specialization NISY up to 2020/21 , 0 year of study, summer semester, elective
    specialization NISY , 0 year of study, summer semester, elective

Type of course unit

 

Lecture

26 hod., 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 hod., 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.