Você está na página 1de 2

Linguagens multiparadigma 2: F#, JavaScript, Python

1. Em linguagens de programação, um objeto imutável é aquele cujo status não pode


ser modificado no decorrer do programa após sua definição, sendo que F# é uma
linguagem com
suporte a dados imutáveis e mutáveis.
Indique a opção que apresente uma declaração, respectivamente, de um dado mutável e
um dado não mutável em F#.

R: A. “let mutable x = 10” e “let x = x + 2”


A expressão "mutable"é utilizada para indicar que a declaração em questão é
mutável, uma vez, que por padrão, F# é uma linguagem de programação imutável. A
declaração "immutable"
não existe na linguagem de programação F#, bem como “int x = 10” e “const int x =
12” seria a resposta caso a linguagem de programação fosse C#, por exemplo. "let" é
de uso obrigatório
em qualquer declaração da linguagem F#.

2. A orientação a objetos é um paradigma de programação muito importante, uma vez


que é possível transferir as características de algo real para um objeto e, assim,
trabalhar com ele.
Indique qual das opções representa a declaração utilizada para declarar uma classe
em F#.

R: B. type.
F# tem suporte a tipos complexos, e por meio destes são desenvolvidos objetos
previstos no paradigma orientado a objeto. Dessa maneira, um objeto é declarado por
meio da declaração
"type". "let" é utilizado na declaração de expressões, funções, etc., já "abstract"
é utilizado na declaração de métodos abstratos de um tipo complexo, por exemplo,
bem como "inherit" é
empregado na criação de herança entre tipos. "class" não realiza nenhuma função
especial em um código F#.

3. A linguagem de programação JavaScript tem suporte a diversos paradigmas de


programação. Dessa forma, temos recursos importantes disponíveis que facilitam a
vida do desenvolver de
aplicativos, como a possibilidade de utilizar funções de alta ordem. Indique a
opção que representa a descrição de funções de alta ordem:

R: E. Capacidade das funções de receber e retornar valores ou funções.


Funções de alta ordem têm a capacidade de criar funções que recebem como parâmetros
funções e valores e podem retornar funções ou valores. A possibilidade de uso
opcional do ponto
e vírgula é uma questão de boas práticas de programação. Suporte a herança,
polimorfismo, encapsulamento e abstração pertencem ao paradigma de orientação a
objetos. As funções
“while”, “if” e “for” pertencem ao paradigma imperativo, e a diferenciação de
maiúsculo e minúsculo nas declarações significa que o JavaScript é case sensitive.

4. O JavaScript, na condição de linguagem de programação multiparadigma, é uma


linguagem que tem suporte ao paradigma de orientação a objetos, sendo capaz de
criar objetos com
atributos e métodos. Indique a opção que representa a criação de um método para uma
classe qualquer em JavaScript:

R: C. Banco.prototype.boasVindas = function() { alert(‘Olá Cliente!’); }


Banco.prototype.boasVindas = function() { alert(‘Olá Cliente!’); } é a opção
correta, uma vez que está criando um método chamado de “boasVindas“ por meio da
funcionalidade “prototype”
para o objeto “Banco”. function boasVindas() { alert(‘Olá Cliente!’); } e function
boasVindas() { console.log(‘Olá Cliente!’); } são funções simples declaradas em
JavaScript, porém não
pertencem a um objeto. def boasVindas: (quebra de linha) print(“Olá Cliente”) é uma
funções escrita em Python, e let boasVindas = printfn "Olá Cliente!" é uma função
desenvolvida com
F#.

5. Python é uma linguagem de programação amplamente utilizada no meio científico


por ser capaz de criar soluções robustas e ter suporte a paradigmas importantes,
como paradigma
imperativo, funcional e orientado a objetos. Indique qual opção representa a
funcionalidade da expressão “self” presente na linguagem Python:

R:A. Disponibiliza acesso aos atributos e aos métodos de um objeto.


Por meio da declaração "self", temos acesso aos atributos e aos métodos de um
objeto Python. Por meio da declaração "class", as classes Python são definidas, e
um construtor é criado por
meio da declaração "__init__". Funções de alta ordem, bem como recursividade, são
recursos da programação funcional presentes na linguagem Python.

Você também pode gostar