Buscar

DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES EM PYTHON

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Um dos princípios do RAD é a entrega contínua de produtos dentro do prazo. Nesse sentido, selecione a opção
CORRETA:
Isso permite reduzir custos, desde que, pelo menos, uma parte do sistema esteja funcionando corretamente;
O desenvolvimento rápido sempre vai reduzir os custos do projeto.
Este princípio garante que o produto terá menos erros;
O prazo sempre deve ser respeitado, mesmo que não sejapossívelentregar o produto conforme
programado;
Isso permite que a equipe do projeto defina rapidamente a abordagem ideal para entregar o produto no
tempo disponível;
 
 DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES EM PYTHON
1 - Um dos princípios do RAD é a entrega contínua de produtos dentro do prazo. Nesse sentido, selecione a opção CORRETA:
A- Isso permite reduzir custos, desde que, pelo menos, uma parte do sistema esteja funcionando corretamente;
B- O desenvolvimento rápido sempre vai reduzir os custos do projeto.
C- Este princípio garante que o produto terá menos erros;
D- O prazo sempre deve ser respeitado, mesmo que não seja possível entregar o produto conforme programado;
E- Isso permite que a equipe do projeto defina rapidamente a abordagem ideal para entregar o produto no tempo disponível;
 
Resposta: E
2 – A metodologia RAD trabalha com iterações e incrementos ao longo do desenvolvimento do software para que seja entregue rapidamente e com a minimização de erros. Apesar das diversas vantagens, também possui desvantagens. Nesse sentido, selecione a opção CORRETA a respeito das vantagens da metodologia RAD:
A- Alta dependência da modelagem de dados;
B- O gerenciamento de um projeto RAD é complexo;
C- Podem ocorrer rápidas revisões iniciais;
D- A metodologia RAD trata apenas sistema que podem ser modularizados;
E- Os desenvolvedores devem ser muito qualificados;
 
Resposta: C
3 - Para ler o conteúdo de um arquivo nomeado file e retornar todas as linhas do arquivo como elementos de uma lista, devemos executar qual instrução? 
A- file.readlines()
B- readlines(file)
C- file.readline()
D- file.read()
E- file.readall()
 
Resposta: A
4 - Dentre os métodos apresentados abaixo, qual o método pertence ao objeto do tipo arquivo?
A- rename
B- join
C- replace
D- read
E- split
 Resposta: D
5 - Diferente de outros bancos de dados, que possuem muitos tipos de dados, o SQLite possui um limitado número de tipos, porém utiliza o conceito de afinidade. Assinale a alternativa correta quanto ao tipo do atributo criado e a classe de maior afinidade: TIPO → CLASSE
A- BOOLEAN→ INTEGER
B- CHARACTER → BLOB
C- BIGINT → NUMERIC
D- DATE → DATETIME
E- DOUBLE→ REAL
Resposta: E
6 - Para conectores que implementem a DB API 2.0, qual método de qual classe é utilizado para enviar comandos ao banco de dados?
A- Método cursor da classe Connection
B- Método execute da classe Cursor
C- Método commit da classe Connection
D- Método execute da classe Connection
E- Método commit da classe Cursor
Resposta: B
7 - Considere o fragmento de código Python abaixo:
Import tkinter as tk
raiz=tk.Tk()
raiz.title('Exemplo')
botao=lacuna_I
botao.pack()
raiz.mainloop()
Selecione a opção CORRETA que substitua a palavra lacuna_I de modo que o programa adicione um botão usando o módulo tkinter:
A- Button(janela,text='exemplo',height=1,width=35,command=raiz.destroy)
B- tkk.Button(raiz,text='exemplo',height=1,width=35,command=raiz.destroy) 
C- tk.CheckButton(raiz,text='exemplo',height=1,width=35,command=raiz.destroy)
D- tk.Button(janela,text='exemplo',height=1,width=35,command=raiz.destroy) 
E- tk.Button(raiz,text='exemplo',height=1,width=35,command=raiz.destroy)
Resposta: E
8 - A engenharia de requisitos trata formalmente das atividades relacionadas aos requisitos de um sistema. Nesse sentido, selecione a opção que relaciona CORRETAMENTE a atividade e o seu objetivo:
A- Documentação: documentar quais são os papéis dos usuários na operação do sistema. 
B- Validação: comparar a implementação com o que foi solicitado.
C- Gerenciamento de requisitos: gerenciar os recursos humanos do projeto. 
D- Análise de requisitos: analisar a validade dos requisitos do sistema. 
E- Elicitação de requisitos: levantar as necessidades para tratar os requisitos do sistema.
Resposta: B
9 - A JAD (Joint Application Development) é a principal técnica aplicada para levantamento de requisitos em projetos que utilizam RAD. A respeito da JAD, selecione a opção CORRETA: 
A- Trata-se de oficinas de trabalho onde desenvolvedores e usuários discutem sobre o projeto e suas necessidades. 
B- É baseada em entrevistas e dinâmicas sociais em que os usuários interagem entre si para fornecer informações relevantes para os desenvolvedores. 
C- Devem ser aplicadas ao final de cada entrega de protótipo de modo a garantir o direcionamento correto do projeto. 
D- Aumenta a colaboração entre os desenvolvedores e os usuários, uma vez que estabelece um cronograma de trabalho. 
E- É um conjunto eficiente de técnicas que aceleram a implementação de ideias.
Resposta: A
10 - O uso de componentes de interface gráfica em um sistema é importante, para facilitar a interação do usuário com as funcionalidades do sistema. No entanto também existem alguns aspectos que podem tornar as escolhas de um projeto desvantajosas. Nesse sentido, selecione a opção que apresenta uma das desvantagens relacionadas a uma escolha de uma biblioteca para interface gráfica: 
A- Ampliar o acesso dos usuários às funcionalidades do sistema. 
B- Fazer uso intenso de recursos computacionais. 
C- Proporcionar que o usuário possa alternar entre as funcionalidades do sistema. 
D- O sistema poder operar em múltiplas plataformas. 
E- Dar ao programador uma camada de abstração sobre detalhes da programação dos componentes
Resposta: B
11 - As bibliotecas para interface gráfica disponíveis para o Python têm características que as tornam mais adequadas para um determinado projeto. Nesse sentido, selecione a opção que apresenta a biblioteca de interface gráfica do Python voltada para aplicações integradas ao google chrome: 
A- Pyforms
B- CEF Python
C- Tkinter
D- Kivy
E- Flexx
Resposta: B
12 - Para escrever os itens de uma lista nomeada minha_lista, em um arquivo nomeado file, devemos executar qual instrução? 
A- file.writeall(minha_lista) 
B- writelines(minha_lista,file) 
C- minha_lista.writelines(file) 
D- minha_lista.write(file) 
E- file.writelines(minha_lista)
Resposta: E
13 - Um dos princípios do RAD é "É necessário que o desenvolvimento iterativo e incremental convirja para uma solução comercial". Nesse sentido, selecione a opção CORRETA: 
A- As iterações do projeto desenvolvido em RAD são uma garantia de que o sistema ficará de acordo com os requisitos funcionais;
B- Os sistemas que utilizam banco de dados não se adequam ao desenvolvimento incremental, pois muitos recursos já estão implementados; 
C- Desde o início do desenvolvimento, deve haver foco na implementação de recursos de segurança; 
D- Apesar de desenvolver versões do sistema no curto prazo, a ideia é que ao longo das iterações e incrementos, o protótipo se aproxime cada vez mais do sistema comercial; 
E- Ao longo dos incrementos, a ideia é acrescentar funcionalidades ainda que nas versões anteriores haja questões em aberto.
Resposta: D
14 - A metodologia de desenvolvimento RAD possui diversas fases, cada uma com objetivos específicos de modo a desenvolver o sistema rápido e em conformidade com os requisitos de negócio. Nesse sentido, selecione a opção CORRETA as fases do RAD: 
A- A modelagem de negócios é obtida através das análises do fluxo e da distribuição de informações. 
B- A documentação referente aos requisitos funcionais do sistema são a fonte principal para fazer a modelagem de negócios; 
C- A fase de testes pode iniciar logo depois da fase de modelagem de processos; 
D- A partir da modelagem de negócios é iniciada a fase de modelagem de processos; 
E- Os incrementos funcionais são feitos em cada uma das fases da metodologia RAD;
Resposta: B
15 - Em alguns cursores, como o sqlite3 e o mysql-connector-python, temos acesso ao valor gerado por colunasautoincrementadas após executar o comando INSERT. Dado que cursor é um objeto do tipo Cursor e conexão é um objeto do tipo Connection, assinale a alternativa que retorna esse valor corretamente: 
A- cursor.lastrowid 
B- conexao.commit 
C- conexao.lastrowid 
D- cursor.lastrowid 
E- cursor.execute
Resposta: A
16 - Considere o código a seguir, onde desejamos renomear o arquivo inicio.txt.
 Analise a exceção exibida na figura e indique qual instrução deve substituir a linha 3, de forma a garantir a correta execução do programa. 
A- os.change("inicio.txt", "final.txt") 
B- os.replace("inicio.txt", "final.txt") 
C- os.remove("inicio.txt", "final.txt") 
D- os.rename("inicio.txt", "final.txt", force=True) 
E- os.remark("inicio.txt", "final.txt)
Resposta: B
17 - Considere o fragmento de código Python abaixo que utiliza a biblioteca ¿psycopg2¿ para fazer operações no sistema gerenciador de banco de dados Postgre: 
1. import psycopg2
2. conn = psycopg2.connect(database = "postgres", user = "postgres", password =
" senha123", host = "127.0.0.1", port = "5432")
3. cur = conn.cursor()
4. cur.execute("""select * from public."AGENDA" where "telefone"
= '02188888888' """)
5. registro = cur. lacuna_I()
6. conn.commit()
7. conn.close()
Para que o código seja compilado e executado corretamente e, além disso, retorne todos os registros que satisfaçam a condição dada, é necessário substituir a palavra lacuna_I por: 
A- fetchone 
B- fecthqry 
C- fetchmany 
D- qryselect 
E- fetchall
Resposta: E
18 - Algumas das bibliotecas de interface gráfica disponíveis para o Python possuem portabilidade com outras bibliotecas, facilitando, assim, o trabalho do programador. Nesse sentido, selecione a opção que apresente a biblioteca de interface gráfica que é compatível com as bibliotecas Tkinter, PyQt, wxPython e Remi: 
A- PyAutoGUI 
B- Pyforms 
C- wxPython 
D- PySimpleGUI 
E- Kivy
Resposta: D
19 - A Modelagem de Dados é uma das fases da RAD que por objetivo identificar entidades, detalhá-las, relacioná-las entre si e evoluir até o detalhe de como será implementada. Nesse sentido, selecione a opção CORRETA a respeito da Modelagem de Dados: 
A- Não é esperado que ao final da fase seja produzida uma documentação. 
B- Ao final da fase, o modelo de dados é concluído e não deve passar por modificações. 
C- O sistema gerenciador de banco de dados sempre deve ser o mais eficiente na gerência dos dados. 
D- O modelo de dados deve ser baseado no diagrama de classes da UML. 
E- O diagrama de entidade-relacionamento pode ser utilizado nessa fase.
Resposta: E
20 - A engenharia de requisitos trata formalmente das atividades relacionadas aos requisitos de um sistema. Nesse sentido, selecione a opção que relaciona CORRETAMENTE a atividade e o seu objetivo: 
A- Gerenciamento de requisitos: gerenciar os recursos humanos do projeto. 
B- Elicitação de requisitos: levantar as necessidades para tratar os requisitos do sistema. 
C- Análise de requisitos: analisar a validade dos requisitos do sistema. 
D- Validação: comparar a implementação com o que foi solicitado. 
E- Documentação: documentar quais são os papéis dos usuários na operação do sistema
Resposta: D
21 - Um dos princípios do RAD é "Todas as mudanças durante o desenvolvimento são reversíveis". Nesse sentido, selecione a opção CORRETA: 
A- As novas versões devem ter o incremento de apenas uma nova funcionalidade, pois, caso não seja validada pelo usuário, é mais simples retornar a versão anterior que já foi validada. 
B- A flexibilidade da metodologia RAD facilita o desenvolvimento de protótipos, portanto o desenvolvedor sempre pode criar uma versão; 
C- A versão atual do protótipo pode não corresponder à expectativa do cliente, portanto é adequado retornar a versão anterior que já está aprovada pelo cliente; 
D- Nas iterações com os usuários, os desenvolvedores podem detectar que uma funcionalidade não atende a um requisito não-funcional, portanto é necessário retornar à versão anterior; 
E- Dada a flexibilidade da metodologia RAD, a utilização de ferramentas de controle de versões de software é desnecessária, pois os protótipos sempre podem ser recuperados.
Resposta: C
22 - O desenvolvimento de interfaces com o usuário é um grande desafio, apesar da existência de muitos frameworks e ferramentas que facilitam esse trabalho. Um desses desafios está na escolha das ferramentas, ou frameworks adequados. Nesse sentido, selecione a opção CORRETA sobre os itens que devem ser considerados nesta escolha: 
A- Facilidade de uso e conforto, pois o usuário final precisa de atalhos para navegar no sistema.
B- Compartilhamento, pois é essencial que todos os envolvidos no projeto tenham acesso ao código. 
C- Licença, pois trata dos direitos de uso de um software. 
D- Curva de aprendizagem, pois a ferramenta escolhida sempre deve será mais fácil de aprender. 
E- Integração, uma vez que é muito importante que o código esteja disponível no controlador de versões git.
Resposta: C
23 
Qual será o resultado impresso pelo script: 
A- 4
B- 3
C- 1
D- 2
E- 5
Resposta: B
24 - Qual dos métodos da DB API 2.0 é utilizado para confirmar todas as operações pendentes: 
A- Save
B- send 
C- execute 
D- commit 
E- connect 
Resposta: D
25 - A escolha da linguagem Python para um projeto RAD tem diversas justificativas, entre elas está a possibilidade de usar frameworks com diversas finalidades. Entre esses frameworks, está o Django. Nesse sentido, selecione a opção CORRETA sobre o framework Django:
A- Possui licença comercial e é aplicado para aplicações WEB;
B- Possui licença de software comercial e é aplicado para geração de gráficos;
C- Possui licença de software livre e é aplicado para aplicações de Ciências de Dados;
D- Possui licença de software livre e é aplicado para aplicações GUIs;
E- Possui licença de software livre e é aplicado para aplicações WEB
Resposta: E
26 - Um dos princípios do RAD é "É necessário que o desenvolvimento iterativo e incremental convirja para uma solução comercial". Nesse sentido, selecione a opção CORRETA: 
A- Os sistemas que utilizam banco de dados não se adequam ao desenvolvimento incremental, pois muitos recursos já estão implementados; 
B- As iterações do projeto desenvolvido em RAD são uma garantia de que o sistema ficará de acordo com os requisitos funcionais;
C- Apesar de desenvolver versões do sistema no curto prazo, a ideia é que ao longo das iterações e incrementos, o protótipo se aproxime cada vez mais do sistema comercial; 
D- Ao longo dos incrementos, a ideia é acrescentar funcionalidades ainda que nas versões anteriores haja questões em aberto;
E- Desde o início do desenvolvimento, deve haver foco na implementação de recursos de segurança;
Resposta: C
27 - Dentre os métodos apresentados abaixo, qual método pertence ao objeto do tipo arquivo:
A- replace 
B- read 
C- split 
D- join 
E- rename
Resposta: B
28 - A engenharia de requisitos trata formalmente das atividades relacionadas aos requisitos de um sistema. Nesse sentido, selecione a opção que relaciona CORRETAMENTE a atividade e o seu objetivo: 
A- Análise de requisitos: analisar a validade dos requisitos do sistema. 
B- Elicitação de requisitos: levantar as necessidades para tratar os requisitos do sistema. 
C- Validação: comparar a implementação com o que foi solicitado. 
D- Gerenciamento de requisitos: gerenciar os recursos humanos do projeto. 
E- Documentação: documentar quais são os papéis dos usuários na operação do sistema.
Resposta: C
29 - Considere o script a seguir, onde estamos utilizando o conector psycopg2, que implementa a DB API 2.0, e assinale a alternativa correta.
A- Nenhuma tabela será criada e será impresso "Erro de Integridade" 
B- Será criada a tabela Produto e será impresso "Erro deIntegridade" 
C- Será criada a tabela Produto e será impresso "Erro de Programação" 
D- Todas as tabelas serão criadas e não será exibido nenhum erro. 
E- Nenhuma tabela será criada e será impresso "Erro de Programação.
Resposta: D
30 - A linguagem de programação Python possui muitos pacotes disponíveis e tem uma grande comunidade de colaboradores engajados na solução de problemas e disseminação de conhecimento. Selecione a opção CORRETA sobre a linguagem de programação Python: 
A- Aplica-se perfeitamente bem para a RAD, dado que é considerada a melhor linguagem de programação. 
B- É ideal para projetos RAD, dado que é orientada a objetos. 
C- É usada para construir a lógica do sistema, mas não a interface gráfica com o usuário. 
D- Por ter uma sintaxe muito simples, não é necessário que o desenvolvedor precise programar linhas de código. 
E- Questões relacionada a disponibilidade de conteúdo, licença e simplicidade de sintaxe, fazem da linguagem Python um forte candidato para desenvolvimento de projetos RAD
Resposta: B
31 - O pacote "tkinter" da linguagem de programação Python possui diversos componentes gráficos que facilitam a implementação da interface com o usuário. Em relação ao pacote "tkinter", selecione a opção CORRETA: 
A- Por fazer parte da instalação padrão do Python, o pacote tkinter pode ser usado diretamente no código sem a necessidade de fazer importação. 
B- Por ser um pacote recente, é recomendado usar outros pacotes de UI mais estáveis. 
C- É disponível para a maioria das distribuições do Linux, mas não para o Windows. 
D- Seus componentes só podem ser usados para as primeiras versões do protótipo, uma vez que a interação com seus componentes é limitada. 
E- É disponível tanto para plataforma Windows, como para Linux
Resposta: E
32 - Em relação ao tratamento de exceções na linguagem Python, estão corretas as seguintes afirmativas, EXCETO: 
A- Se houver múltiplos blocos except correspondentes quando uma exceção ocorrer, somente o primeiro é executado. 
B- O bloco finally é a forma adequada de liberar recursos para impedir vazamentos de recursos. 
C- O tratamento de exceções processa erros síncronos, que ocorrem quando uma instrução é executada. 
D- Todas as classes de exceção do Python herdam direta ou indiretamente da classe error.
E- Pelo menos um bloco except, ou um bloco finally deve seguir imediatamente o
bloco try.
Resposta: D
33 - Considere que executamos o script exercício_9a.py da imagem a seguir e obtivemos o erro apresentado no console abaixo da figura.
Para evitar que o programa parasse, tratamos as exceções conforme script exercício_9b.py, também na imagem. Qual a saída do script exercício_9b.py ao ser executado? 
A- Erro de sistema 
B- Diretório não encontrado 
C- Erro geral 
D- O programa não irá gerar nenhuma saída 
E- O mesmo erro apresentado na execução do script exercício_9a.py
Resposta: C
34 - Considere que temos as tabelas Arremate e Produto, definidas com os comandos SQLs a seguir: 
CREATE TABLE Produto ( 
 codigo INTEGER NOT NULL, 
 nome TEXT NOT NULL, 
 descricao TEXT, 
 PRIMARY KEY (codigo)) 
CREATE TABLE Arremate ( 
 id INTEGER NOT NULL, 
 data DATE NOT NULL
cod_prod INTEGER NOT NULL, 
 lance REAL, 
 FOREIGN KEY(cod_prod) REFERENCES Produto(codigo)) 
Quando tentamos inserir um registro na tabela Arremate cujo cod_prod não existe na tabela Produto, qual exceção é lançada pelo conector, dado que ele implementa a DB API 2.0:
A- OperationalError 
B- ForeignKeyError
C- IntegrityError
D- NotSupportedError
E- ProgrammingError
Resposta: C
35 - A metodologia do RAD possui diversas vantagens e desvantagens em relação às metodologias de desenvolvimento tradicionais. Nesse sentido, selecione a opção CORRETA sobre as características da metodologia RAD: 
A- Uma das vantagens mais importantes da metodologia RAD é sua adequação para projetos complexos de grande escala; 
B- Apesar das diferenças dos métodos tradicionais, se assemelham no sentido de que os sistemas-alvo devem ser modularizados; 
C- Os requisitos funcionais são determinados no início do projeto e não podem ser alterados ao longo do projeto de modo a atingir a rapidez do desenvolvimento; 
D- No sentido de atingir a meta da rapidez do desenvolvimento, a metodologia RAD possui poucas reuniões; 
E- Diferente de métodos tradicionais de desenvolvimento, a RAD demanda por intensa colaboração entre desenvolvedores e usuários;
Resposta: E
36 - Assinale a alternativa correta que complementa a frase: "Durante o tratamento de exceções, devemos optar por exceções ____________ sempre que possível." 
A- Comuns 
B- Específicas 
C- Genéricas 
D- Abrangentes 
E- Incomuns
Resposta: B
37 - 
	Assinale o código Python que cria um novo arquivo, contendo uma linha. 
		
	
	
	
	
	
	
	 
	
	
	
Resposta: D. f= open(“teste.txt”, “w”)
38 - Considere que temos a tabela Produto definida da seguinte forma no nosso banco de dados: 
CREATE TABLE Produto ( 
codigo INTEGER NOT NULL,
 nome TEXT NOT NULL, 
descricao TEXT) 
Dada as variáveis e o comando execute a seguir: 
>>> produto = {"cod": 123, "nome_prod": "Colher"} 
>>> comando = "INSERT INTO PESSOA X VALUES Y;" 
>>> cursor.execute(comando, pessoa) 
Quais os valores de X e Y para que o comando execute seja realizado com sucesso? 
A- X = (cod, nome_prod); Y = (:cod, :nome_prod) 
B- X = vazio; Y = vazio 
C- X = (codigo, nome); Y = (:codigo, :nome) 
D- X = vazio; Y = (:cod, :nome_prod) 
E- X = (codigo, nome); Y = (:cod, :nome_prod)
Resposta: E.
39 - Considere o trecho de código a seguir, onde estamos utilizando o conector sqlite3. 
>>> comando = "SELECT nome FROM Pessoa;" 
>>> cursor.execute(comando) >>> 
cursor.fetchall()
Dado que a consulta SQL retorna diversos registros, qual a classe dos objetos da lista retornada pelo método fetchall? 
A- list 
B- dict 
C- None 
D- tuple 
E- string
Resposta: D.
40 - A biblioteca tkinter possui diversos componentes que devem ser usados em determinadas situações que auxiliem o usuário na realização de uma tarefa. Selecione a opção CORRETA que apresenta o componente do tkinter mais adequado para tratar a situação em que uma mensagem deve ser exibida para o usuário logo depois que ele realizou uma tarefa e que ele precisa fazer algum tipo de confirmação: 
A- Dialog 
B- Button 
C- Label 
D- Checkbox 
E- Message
Resposta: A.
41 - O Python adquiriu destaque na área de desenvolvimento, em parte, pela sua simplicidade, mas também por possuir diversos pacotes e frameworks que facilitam, por exemplo, a construção de aplicações de bancos de dados, ciência de dados e construção de interfaces. A quantidade de recursos associada ao Python auxilia o desenvolvedor a construir aplicações padronizadas, adaptadas às funções de negócio e preparadas para mudanças, de forma mais rápida e com menor custo. Tais características fazem do Python uma linguagem apropriada ao desenvolvimento rápido de projetos de software. Com base no texto apresentado, conclui-se que:
A- a linguagem Python possui uma grande quantidade de recursos, o que torna a adaptação às funções de negócio mais demorada. 
B- a linguagem Python se destaca pela quantidade de pacotes e frameworks, no entanto, a aplicação do RAD fica prejudicada devido a falta de padronização. 
C- a linguagem Python possui mecanismos embutidos para construção de interfaces ricas, padronizando assim os projetos de software. 
D- a linguagem Python permite criar rapidamente aplicações flexíveis que permitem o desenvolvedor re-projetar conforme a necessidade. 
E- a linguagem Python estabelece padrões de simplicidade que exigem dos pacotes e frameworks de terceiros adaptação estrutural
Resposta: D.
42 - Na metodologia RAD, o desenvolvimento de protótipo de interface é muito importante para que as partes interessadas possam aumentar a sua compreensão sobre o sistema e, se necessário, fazer ajustes sobre o direcionamento do projeto. Existem algumas técnicas para o desenvolvimento de protótiposde interface. Nesse sentido, selecione a opção CORRETA que relaciona corretamente a técnica de desenvolvimento de protótipo de interface e o seu significado: 
A- Sketches: são aplicados para exibir componentes interativos que serão aplicados na versão final do sistema. 
B- Mockup: são usadas para apresentar aspectos visuais de navegação do produto. 
C- Wireframes: são usadas para implementar componentes interativos funcionais. 
D- Esboços: são modelos funcionais de sistema. 
E- Maquetes: tratam tanto das funcionalidades do sistema, como também da aparência.
Resposta: B.
43 - Um dos princípios do RAD é "a adequação para fins comerciais é o critério essencial para aceitação de resultados". Nesse sentido, selecione a opção CORRETA: 
A- O foco é fazer o desenvolvimento para atender aos requisitos funcionais; 
B- Este princípio garante que o produto terá menos erros e, consequentemente, terá menos vulnerabilidades; 
C- Significa que as melhores práticas para desenvolver um software seguro devem ser aplicadas; 
D- Permite que os desenvolvedores tomem a decisão sobre a aplicação das melhores soluções para o projeto;
E- O foco deve ser voltado para cumprir os prazos pré-estabelecidos;
Resposta: A.
44 - Para remover caracteres em branco e quebras de linha (\n) do início e do final de uma string, devemos utilizar o método: 
A- break() 
B- split() 
C- join() 
D- strip()
E- clean()
Resposta: D.
45 - Considere o fragmento de código Python abaixo. 
1. import tkinter as tk 
2. janela = tk.Tk() 
3. T = tk.Text(janela, height=2, width=30) 
4. T.pack() 
5. T. lacuna_I (tk.END, lacuna_II) 
6. tk.mainloop() 
Para que o código seja compilado e executado corretamente e, além disso, seja exibida a mensagem:
 "Este é um texto.
 Esta é a segunda linha. 
Esta é a terceira linha." 
as palavras lacuna_I, e lacuna_II devem ser substituídas, respectivamente, por: 
A- Nenhuma das outras alternativas. 
B- text e "Este é um texto. Esta é a segunda linha. Esta é a terceira linha.\n") 
C- text e "Este é um texto. Esta é a segunda linha. \nEsta é a terceira linha.\n") 
D- insert e "Este é um texto. Esta é a segunda linha. \nEsta é a terceira linha.\n") 
E- insert e "Este é um texto.\nEsta é a segunda linha. \nEsta é a terceira linha.\n")
Resposta: E.
46 - Para fazer a escolha de um framework e bibliotecas para desenvolver projetos RAD, é necessário observar diversos critérios. Nesse sentido, selecione a opção CORRETA que justifique a escolha de um determinado framework: 
A- Deve levar em consideração a qualidade dos componentes visuais, de modo a manter a motivação das partes interessadas no projeto; 
B- Deve estar alinhada com os princípios da RAD, ou seja, suportar o desenvolvimento rápido;
C- Deve considerar se o framework suporta a linguagem Python por ser enxuta e possuir mais pacotes do que as demais linguagens de programação; 
D- Deve ser feita para frameworks que deem suporte ao desenvolvimento de aplicações WEB e geração de gráficos; 
E- A principal característica a ser considerada refere-se ao tipo de licença do framework;
Resposta: B.
47 - Um dos princípios do RAD é "a adequação para fins comerciais é o critério essencial para aceitação de resultados". Nesse sentido, selecione a opção CORRETA: 
A- O foco é fazer o desenvolvimento para atender aos requisitos funcionais; 
B- Este princípio garante que o produto terá menos erros e, consequentemente, terá menos vulnerabilidades;
C- O foco deve ser voltado para cumprir os prazos pré-estabelecidos; 
D- Significa que as melhores práticas para desenvolver um software seguro devem ser aplicadas; 
E- Permite que os desenvolvedores tomem a decisão sobre a aplicação das melhores soluções para o projeto.
Resposta: A.
48 - No Python 3.7, a instrução que realiza a impressão de uma lista de cadeias de caracteres nomeada "y", separando cada elemento com uma vírgula, é:
A- print(´,´.join(y)) 
B- print(y, ´,´) 
C- print(y.join(´,´)) 
D- print(y % (´,´)) 
E- print(join(y, ´,´)
Resposta: A.
49 - A RAD é uma metodologia de desenvolvimento que se adequa bem a processos dinâmicos. Portanto é natural que a aplicação de metodologias tradicionais de engenharia de requisitos tenha restrições de aplicação para ela. Nesse sentido, selecione a opção CORRETA a respeito dessas restrições: 
A- Na RAD, o projeto vai incorporando sugestões dos usuários ao longo das iterações. 
B- O gerenciamento dos requisitos é um processo rígido. 
C- As priorizações dos requisitos da RAD são fixas e todos tem alta prioridade; 
D- Na RAD, as mudanças dos requisitos só podem ser aplicadas no final do processo de teste e validação. 
E- O levantamento dos requisitos deve ser feito logo no início do desenvolvimento.
Resposta: A.
50 - O levantamento de requisitos é uma etapa fundamental do ciclo de vida de um sistema, pois é nessa etapa que são identificadas as necessidades do sistema. Uma das técnicas que auxiliam no levantamento de requisitos é a de entrevistas. A respeito das técnicas utilizadas para otimizar os resultados obtidos pelas entrevistas, selecione a opção CORRETA: 
A- Os grupos focais participam de debates para analisar possíveis vulnerabilidades do sistema. 
B- A observação e análise social auxilia a mapear o comportamento do usuário. 
C- Os casos de uso são usados para descrever como os usuários devem usar o sistema. 
D- O brainstorming estimula que as partes interessadas apresentem suas ideias sobre o sistema e como devem ser priorizadas. 
E- Os cenários são usados para simular situações de desastre e como os usuários devem proceder.
Resposta: B.
51 - Considere a tabela Produto a seguir: 
Qual o resultado impresso pelo trecho do script a seguir, considerando que a conexão e cursor foram criados. 
>>> cursor.execute("SELECT nome FROM Produto;") 
>>> print(cursor.fetchall()) 
A- [["Faca"], ["Garfo"], ["Prato"]] 
B- [("Faca"), ("Garfo"), ("Prato")]
C- [("Faca", ), ("Garfo", ), ("Prato", )]
D- ["Faca", "Garfo", "Prato"] 
E- [("Faca", "Garfo", "Prato")]
Resposta: C.
52 - O SQLite permite a criação de banco de dados em memória. Selecione a opção que cria um banco e uma conexão com essa característica, utilizando o conector sqlite3: 
A- conexao = sqlite3.connect(':db:') 
B- conexao = sqlite3.connect(':db.memory') 
C- conexao = sqlite3.connect(':memory:') 
D- conexao = sqlite3.connect(':mem.db:') 
E- conexao = sqlite3.connect(None)
Resposta: C.
53 - Considere o fragmento de código Python abaixo: 
from kivy.app import App 
from kivy.uix.button import Button 
class EApp(App): 
def lacuna(self): 
return Button(text='Pressione para passar de fase!') 
EApp().run() 
Para que o código seja compilado e executado corretamente, a palavra lacuna deve ser substituída por: 
A- EApp 
B- buildApp 
C- EbuildApp 
D- ClassApp 
E- Build
Resposta: E.
54 - A biblioteca "psycopg2" é uma interface disponível para o Python para o sistema gerenciador de banco de dados Postgre. Ela é útil para realizar operações de inserção, consulta, modificação e exclusão de dados. Os programas que a utilizam, normalmente, apresentam muitas características em comuns. Em relação a essas semelhanças, selecione a opção que apresenta quais são os itens que um código em "psycopg2" deve ter: 
A- import psycopg2, conectar ao banco, abrir a conexão, executar uma instrução sql, confirmar a instrução e fechar o banco de dados. 
B- import psycopg2, conectar ao banco, executar uma instrução sql, recuperar o estado da execução da instrução, confirmar a instrução e fechar a conexão com o banco de dados. 
C- import psycopg2, conectar ao banco, imprimir o status da conexão, executar uma instrução sql, confirmar a instrução e fechar a conexão com o banco de dados. 
D- import psycopg2, conectar ao banco, abrir o cursor, executar uma instrução sql, confirmar a instrução e fechar a conexão com o banco de dados. 
E- import psycopg2, conectar ao banco, executar uma instrução sql, confirmar a instrução, imprimir o estado da execução, fechar a conexão com o banco de dados.
Resposta: D.
55 - A linguagem de programação Python possui muitos pacotes disponíveis.Tem uma grande comunidade de colaboradores engajados na solução de problemas e disseminação de conteúdo. Sobre a linguagem de programação Python: 
A- Não é ideal para projetos RAD, dado que é orientada a objetos. 
B- Aplica-se perfeitamente bem para a RAD, dado que é considerada a melhor linguagem de programação. 
C- Licença e simplicidade de sintaxe fazem da linguagem Python uma forte candidata para desenvolvimentos de projetos RAD. 
D- Por ter uma sintaxe muito simples, não é necessário que o desenvolvedor precise programar linhas de código. 
E- É usada para construir a lógica do sistema, mas não a interface gráfica com o usuário.
Resposta: C.
56 - A Modelagem de Negócios é uma das fases da RAD. Nela, aspectos como necessidades do negócio e propósito do sistema são tratadas. Nesse sentido, selecione a opção CORRETA a respeito da Modelagem de Negócios: 
A- É uma fase voltada para os desenvolvedores do sistema com interações técnicas. 
B- É caracterizada por um processo rígido que vai determinar como será a versão final;
C- Identifica as entidades de dados e como se relacionam com o negócio. 
D- Nela, os testes do sistema são tratados de modo a validar os requisitos do sistema. 
E- Identifica as informações relevantes sobre o negócio.
Resposta: E.

Mais conteúdos dessa disciplina