Planeamento
Aulas
Introduction to multiparadigm programming
- Presentation of the Curricular Unit
- Introduction to multiparadigm programming
- Introduction to the functional programming paradigm
- Basic programming concepts in Scala
.
- Presentation of the Curricular Unit
- Introduction to multiparadigm programming
- Introduction to the functional programming paradigm
- Basic programming concepts in Scala
Lists, Recursion and Pattern Matching
Lists, Recursion and Pattern Matching
.
Lists, Recursion and Pattern Matching
Efficiency in Functional Programming, Higher Order Functions, Recurring Patterns on Lists
- Tail recursion
- Lazy evaluation
- Data sharing
- Higher Order Functions
- Recurring Patterns on Lists (map and filter)
.
- Tail recursion
- Lazy evaluation
- Data sharing
- Higher Order Functions
- Recurring Patterns on Lists (map and filter)
Recurring Patterns on Lists, Implicit Parameters, Partially Applied Functions and Currying
Recurring Patterns on Lists (foldLeft and foldRight)
Implicit Parameters
Partially Applied Functions
Currying
.
Recurring Patterns on Lists (foldLeft and foldRight)
Implicit Parameters
Partially Applied Functions
Currying
Functional Object-Oriented Programming and Algebraic Data Types
Classes, Abstract Classes, Case Classes, Case Objects, Parametric Fields, Companion Class/Object, Overriding, Traits, Functional Objects, Singleton Objects
Functional Object-Oriented Programming
Algebraic Data Types
Option and Try
.
Classes, Abstract Classes, Case Classes, Case Objects, Parametric Fields, Companion Class/Object, Overriding, Traits, Functional Objects, Singleton Objects
Functional Object-Oriented Programming
Algebraic Data Types
Option and Try
Purely functional State and IO in Functional Programming. Technology to Support Team Programming
- Purely functional State
- Pure functions
- Input and Output in Scala
- Technology to Support Team Programming (centralized/distributed version control system)
- commit, push, pull request and merge
.
- Purely functional State
- Pure functions
- Input and Output in Scala
- Technology to Support Team Programming (centralized/distributed version control system)
- commit, push, pull request and merge
Event-oriented programming and JavaFX
Introduction to event-oriented programming
Introduction to JavaFX
JavaFX Architecture, Controls and Containers
JavaFX Scene Builder
Skinning with CSS
.
Introduction to event-oriented programming
Introduction to JavaFX
JavaFX Architecture, Controls and Containers
JavaFX Scene Builder
Skinning with CSS
Project discussion - part I
Project discussion.
.
Project discussion.
JavaFX and User Interface Patterns
Additional widgets with JavaFX (TableView)
3D applications with JavaFX
Introduction to patterns for effective interaction design.
.
Additional widgets with JavaFX (TableView)
3D applications with JavaFX
Introduction to patterns for effective interaction design.
Introduction to the Development of Interactive Systems
Introduction to the interactive systems development process.
Modelling with Concur Task Trees
Information Architecture
- Card Sorting
- Tree Testing
.
Introduction to the interactive systems development process.
Modelling with Concur Task Trees
Information Architecture
- Card Sorting
- Tree Testing
Project support
Project support.
.
Project support.
Project discussion - part II
Project discussion.
.
Project discussion.
Aulas
Introduction and basic concepts
Exercises with values, expressions, types, functions and recursion.
.
Exercises with values, expressions, types, functions and recursion.
.
Exercises with values, expressions, types, functions and recursion.
.
Exercises with values, expressions, types, functions and recursion.
.
Exercises with values, expressions, types, functions and recursion.
.
Exercises with values, expressions, types, functions and recursion.
Lists, Recursion and Pattern Matching
Exercices with Lists, Recursion and Pattern Matching
.
Exercices with Lists, Recursion and Pattern Matching
.
Exercices with Lists, Recursion and Pattern Matching
.
Exercices with Lists, Recursion and Pattern Matching
.
Exercices with Lists, Recursion and Pattern Matching
.
Exercices with Lists, Recursion and Pattern Matching
Efficiency in Functional Programming, Higher Order Functions, Recurring Patterns on Lists
Exercises with tail recursion, lazy evaluation, higher order functions and recurring patterns on lists (map, filter)
.
Exercises with tail recursion, lazy evaluation, higher order functions and recurring patterns on lists (map, filter)
.
Exercises with tail recursion, lazy evaluation, higher order functions and recurring patterns on lists (map, filter)
.
Exercises with tail recursion, lazy evaluation, higher order functions and recurring patterns on lists (map, filter)
.
Exercises with tail recursion, lazy evaluation, higher order functions and recurring patterns on lists (map, filter)
.
Exercises with tail recursion, lazy evaluation, higher order functions and recurring patterns on lists (map, filter)
Recurring Patterns on Lists, Implicit Parameters, Partially Applied Functions and Currying
Exercises with foldLeft, foldRight, implicit parameters, partially applied functions and currying.
.
Exercises with foldLeft, foldRight, implicit parameters, partially applied functions and currying.
.
Exercises with foldLeft, foldRight, implicit parameters, partially applied functions and currying.
.
Exercises with foldLeft, foldRight, implicit parameters, partially applied functions and currying.
.
Exercises with foldLeft, foldRight, implicit parameters, partially applied functions and currying.
.
Exercises with foldLeft, foldRight, implicit parameters, partially applied functions and currying.
Functional Object-Oriented Programming and Algebraic Data Types
Exercises with Functional Object-Oriented Programming, Algebraic Data Types (Tree) and Option.
.
Exercises with Functional Object-Oriented Programming, Algebraic Data Types (Tree) and Option.
.
Exercises with Functional Object-Oriented Programming, Algebraic Data Types (Tree) and Option.
.
Exercises with Functional Object-Oriented Programming, Algebraic Data Types (Tree) and Option.
.
Exercises with Functional Object-Oriented Programming, Algebraic Data Types (Tree) and Option.
.
Exercises with Functional Object-Oriented Programming, Algebraic Data Types (Tree) and Option.
Purely functional State and IO in Functional Programming
Exercises with purely functional state and IO and putting all Functional Programming concepts together.
.
Exercises with purely functional state and IO and putting all Functional Programming concepts together.
.
Exercises with purely functional state and IO and putting all Functional Programming concepts together.
.
Exercises with purely functional state and IO and putting all Functional Programming concepts together.
.
Exercises with purely functional state and IO and putting all Functional Programming concepts together.
.
Exercises with purely functional state and IO and putting all Functional Programming concepts together.
Event-oriented programming
Exercises with event-oriented programming using JavaFX and Scala.
.
Exercises with event-oriented programming using JavaFX and Scala.
.
Exercises with event-oriented programming using JavaFX and Scala.
.
Exercises with event-oriented programming using JavaFX and Scala.
.
Exercises with event-oriented programming using JavaFX and Scala.
Project discussion - part I
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.
JavaFX and User Interface patterns
Exercises with JavaFX (tableView, 3D widgets, several Stages and Scenes)
Exercises with user interface patterns using Scala and JavaFX.
.
Exercises with JavaFX (tableView, 3D widgets, several Stages and Scenes)
Exercises with user interface patterns using Scala and JavaFX.
.
Exercises with JavaFX (tableView, 3D widgets, several Stages and Scenes)
Exercises with user interface patterns using Scala and JavaFX.
.
Exercises with JavaFX (tableView, 3D widgets, several Stages and Scenes)
Exercises with user interface patterns using Scala and JavaFX.
.
Exercises with JavaFX (tableView, 3D widgets, several Stages and Scenes)
Exercises with user interface patterns using Scala and JavaFX.
Development of Interactive Systems
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
.
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
.
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
.
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
.
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
.
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
.
Development of Interactive Systems using task models.
Exercises creating Information Architectures using the Card Sorting and Tree Testing techniques.
Project support
Project support.
.
Project support.
.
Project support.
.
Project support.
.
Project support.
.
Project support.
Project discussion - part II
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.
.
Project discussion.