Buscar

Tópicos avançados em programação

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 50 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 50 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 50 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

Questão 1/10 - Tópicos Avançados em Programação
Com base na imagem acima, avalie coloque V ou F sobre Funções em Kotlin:
(  ) A função imprimir(String) recebe uma String como parâmetro e a salva na memória.
(  ) A função imprimir(String) não tem retorno, portanto, é identificada como Unit, semelhante ao void do Java.
(  ) A função soma(Int, Int) recebe dois inteiros e retorna dois inteiro sem realizar a soma.
(  ) Quando a função não tem retorno, a palavra Unit pode ser omitida.
(  ) A sintaxe resumida ao declarar funções, chamada de Single-Expression functions. Sempre que uma função tiver apenas uma linha, não será preciso abrir e fechar chaves { }: basta usar o operador de igual '=' e escrever tudo em uma única linha.
(  ) O tipo do retorno da função pode ser omitido, pois o Kotlin pode descobrir isso sozinho.
Baseado nas suas respostas, a sequência correta é:
Nota: 10.0
	
	A
	V F V V F F
	
	B
	F V F V V V
Você acertou!
A reposta correta é a letra B, conforme explicado na introdução do TEMA 3 da AULA 2.
	
	C
	V V V F F F
	
	D
	F V F F F V
	
	E
	V F F V F V
Questão 2/10 - Tópicos Avançados em Programação
Os números utilizados para identificar a versão do SDK do Android é chamado de API Level. Iniciou com Android 1.0 e API Level 1.
Sobre API Level é incorreto afirmar:
Nota: 0.0
	
	A
	Para testar o aplicativo para verificar com se comporta no Android 5, basta baixar o Android 5.0 (API 21).
	
	B
	Desenvolvedores trabalham com o número da API, sendo comum falar que o aplicativo é compatível com API 16, 21, 26, etc.
	
	C
	A partir do Android 6.0 é necessário que o desenvolvedor configure para solicitar ao usuário que aceite as permissões antes de chamar alguma API segura.
	
	D
	Sempre que for ser utilizado uma biblioteca ou algum código do próprio Android SDK, não é necessário ser validado se esse código é compatível com a versão do Android que está instalada no celular do usuário.
A letra D é a incorreta, conforme o explicado da introdução do Tema 5, da AULA 1.
	
	E
	Cada API Level corresponde ao número de determinada versão do Android.
Questão 3/10 - Tópicos Avançados em Programação
1 – android:id
2 – findViewById(id)
3 – setOnClickListener(),
4 – android:parentActivityName=".MainActivity"
Relacione cada item acima com sua respectiva definição:
(  ) Para adicionar o botão de voltar na AppBar (barra de navegação), no canto superior esquerdo.
(  ) para cada elemento da tela ao qual queremos adicionar um evento, precisamos adicionar um identificador, que é chamado apenas de id.
(  ) utilizado para adicionar um evento a um botão.
(  ) Método utilizado para encontrar uma view utilizando o id.
A sequência correta é:
Nota: 0.0
	
	A
	3, 1, 4, 2
	
	B
	1, 3, 4, 2
	
	C
	3, 2, 4, 1
	
	D
	4, 1, 3, 2
A reposta correta é a letra D, conforme explicado no item 5.4 do TEMA 5 da AULA 3.
	
	E
	2, 1, 3, 4
Questão 4/10 - Tópicos Avançados em Programação
Com base nas imagens acima e atividades de criação de views, avalie coloque V ou F sobre a criação de Views no Android Studio:
(  ) Ao digitar HomeActivity no nome da activity, o próprio wizard vai preencher automaticamente "activity_home" como sugestão do nome do arquivo de layout XML.
(  ) Quando criado com wizard do Android Studio um Empty activity dois arquivos são criado a Classe Kotlin e o XML de layout.
(  ) Criando a Activity pelo Wizard do Android Studio automaticamente é incluída a View nas configurações do arquivo AndroidManifest.xml.
(  ) Os arquivos xml ficam localizados na pasta /res/values/layout.
Baseado nas suas respostas, a sequência correta é:
Nota: 0.0
	
	A
	V V F V
	
	B
	F F V V
	
	C
	V V V F
A reposta correta é a letra C, conforme explicado na introdução do TEMA 5 da AULA 3.
	
	D
	F V V F
	
	E
	V F F F
Questão 5/10 - Tópicos Avançados em Programação
Sobre classe e orientação a objeto em Kotlin avalie as acertivas abaixo:
I. O construtor primário em Kotlin não pode ter nenhum código, portanto o código foi inicializado com a palavra init (bloco de inicialização). Para criar uma instância de um objeto, não é preciso utilizar o famoso operador new como no Java.
II. Para herdar de uma classe, basta utilizar a sintaxe dos dois-pontos, seguida do nome da classe-mãe. Para que a herança possa ser realizada, a classe mãe foi anotada como open, pois, no Kotlin, todas as classes são final por padrão, ou seja, não é possível utilizar herança. O mesmo vale para métodos.
III. Data Classes têm uma sintaxe resumida e não implementa automaticamente as funções: equals() e hashcode(), toString() e copy().
IV. Métodos estáticos – ou métodos de classe, como são chamados – não permitem criar métodos que podem ser chamados diretamente com a sintaxe "Classe.metodo()".
V. Um singleton é um padrão que permite que uma classe tenha apenas uma instância (objeto) em memória. Para criar um singleton em Java, são necessárias várias linhas de código, mas, em Kotlin, basta utilizar a palavra reservada object em lugar de class.
VI. Se quisermos que o Kotlin crie essa lista para nós, é possível utilizar a função mutableListOf(), que retorna uma lista mutável, ou seja, que pode ser alterada. Mas podemos utilizar as funções mutableListOf() (mutável) ou listOf() (imutável), conforme a necessidade.
São corretas:
Nota: 10.0
	
	A
	I, II, III e VI
	
	B
	I, II, V e VI
Você acertou!
A letra B é a correta, conforme o explicado no Tema 4, da AULA 2.
	
	C
	II, IV, V e VI
	
	D
	III, IV e V
	
	E
	Todas estão corretas.
Questão 6/10 - Tópicos Avançados em Programação
A organização das views na tela pode ser considerado um assunto avançado do Linear Layout.
Sobre as propriedades avançadas do Linear Layout é correto afirmar:
Nota: 0.0
	
	A
	Para incluir dos TextView um ao lado do outro e que cada uma ocupe 50% do espaço disponível é utilizado o atributo “layout_weight=0.5” em cada TextView.
	
	B
	É necessário alterar a largura para ficar com tamanho layout_width="0" (zero), assim ela pode respeitar o peso adicionado layout_weight="1":
	
	C
	Adicionando o gravity="central" no TextView o conteúdo ficará centralizado.
	
	D
	A opção perfeita para descolar as duas views seria adicionar uma margem à esquerda da segunda TextView utilizando o android:layout_marginLeft="24dp".
	
	E
	Quando ambos os TextView têm a mesma largura, deve-se utilizar o valor peso=1 no atribuito layout_weight.
A resposta correta é a letra E, conforme Tema 3 da AULA 3.
Questão 7/10 - Tópicos Avançados em Programação
Relacione cada elementos da imagem com sua função, respectivamente:
(   ) representa o id do aplicativo do GooglePlay.
(   ) configurações das bibliotecas utilizadas no aplicativo.
(   ) Representa a API Level no qual o projeto será compilado.
(   ) Corresponde a versão do SDK BluidTools instalado no Android SDK.
(   ) mostrar o número de versão amigável para o usuário.
(   ) Configuração dos plugins para habilitar os módulos de compilação Android e Kotlin no gradle.
(   ) representa a API Level minima suportada pelo aplicativo.
(   ) número inteiro que representa o número da versão de um build do aplicativo.
(   ) configuração das opções de build: debug e release.
(   ) precisa ser igual ao compileSdkVersion.
A sequência correta é:
Nota: 10.0
	
	A
	1, 2, 3, 6, 4, 7, 5, 10, 8, 9
	
	B
	2, 3, 6, 1, 4, 7, 5, 10, 8, 9
	
	C
	4, 10, 2, 8, 3, 1, 7, 5, 9, 6
	
	D
	4, 10, 2, 3, 8, 1, 5, 7, 9, 6
Você acertou!
A reposta correta é a letra D, conforme explicado no item 3.8 do TEMA 3 da AULA 1.
	
	E
	1, 2, 5, 10, 8, 9, 3, 6, 4, 7
Questão 8/10 - Tópicos Avançados em Programação
	
	
	
Analisando o código Kotlin acima, avalie as afirmações a seguir:
I. Declaração do pacote: caminho da pasta no computador onde esta a classe, isso ajudando a separar e organizar os arquivos.
II. Importações: classe que serão utilizadas no código. Importante destacar que sem essas importações o código funcionará normalmente.
III. Na quarta linha é a declaração de criação da classe, onde a expressão “ : AppCompactActivity()” significa que a classe MainActivity terá como classe filha a AppcompactActivity.
IV.A linha que contem a chamada “setcontectView(R. Layout. activity_main) realizará a apresentação do layout na tela.
V. A expressão override na linha cinco quer dizer que está criando um novo médoto onCreate sem sobrescrever o método da classe-mãe.
São corretas:
Nota: 10.0
	
	A
	II, IV e V.
	
	B
	I, II, IV e V.
	
	C
	I e II.
	
	D
	I e IV.
Você acertou!
A resposta correta é a letra D, conforme a introdução do Tema 3 da AULA 1.
	
	E
	I, II, III e V.
Questão 9/10 - Tópicos Avançados em Programação
As strings do aplicativo devem ser colocados no arquivo “res/value/strings.xml” para que seja possível realizar a internacionalização do aplicativo.
Em um projeto que deve ser alterado para utilizar o arquivo strings.xml para as strings do aplicativo, deve ser alterado o texto “android:text="Hello World!" do arquivo activity_main.xml para:
Nota: 0.0
	
	A
	android:text="@string/hello" e criado a string hello no arquivo strings.xml.
A letra A é a correta, conforme o explicado da introdução do Tema 4, da AULA 1.
	
	B
	android:text="@string=Hello World!, sem necessidade de criação da string no arquivo xml.
	
	C
	android:text="/res/value/strings.xml@hello”, e criado a string hello no arquivo strings.xml.
	
	D
	android:text="strings.xml/@hello”, sem necessidade de criação da string no arquivo xml.
	
	E
	android:text="@hello/strings”, com necessidade de criação da string no arquivo xml.
Questão 10/10 - Tópicos Avançados em Programação
Para adicionar o id em uma view, utilizamos o atributo android:id, a sintaxe que deve ser utilizada é :
Nota: 0.0
	
	A
	android:id=“@+id/codigoIdAqui”
A letra A é a correta, conforme o explicado no item 5.4 do Tema 5, da AULA 3.
	
	B
	android:id=“codigoIdAqui”
	
	C
	android:id=“+id/codigoIdAqui”
	
	D
	android:id=“@id/codigoIdAqui”
	
	E
	android:id=“/codigoIdAqui”
Questão 1/10 - Tópicos Avançados em Programação
No arquivo activity_main.xml podemos realizar as alterações de posição, tamanho e cores da tela e seus componentes.
Sobre as configurações dos Gerenciadores de Layout e View é INCORRETO afirmar:
Nota: 0.0
	
	A
	Para definir uma cor de fundo deve ser atribuido um valor em Hexadecimal no atributo “android:background”.
	
	B
	Os atributos layout_width e layout_height são responsáveis por definir a largura e a altura de uma view.
	
	C
	O valor wrap_content deixa o tamanho da view (largura ou altura) somente com o espaço necessário.
	
	D
	O valor match_parent deixa o tamanho da view ocupando todo o espaço disponível na tela ou no seu layout-pai, o que leva a view a dar ficar proporcional.
A letra D é a incorreta, conforme explicado nos itens 1.1 e 1.2 do Tema 1, da AULA 3.
	
	E
	Se configurar o atributo android:orientation="vertical" do LinearLayout , as views ficarão uma abaixo da outra na tela.
Questão 2/10 - Tópicos Avançados em Programação
Para adicionar o id em uma view, utilizamos o atributo android:id, a sintaxe que deve ser utilizada é :
Nota: 10.0
	
	A
	android:id=“@+id/codigoIdAqui”
Você acertou!
A letra A é a correta, conforme o explicado no item 5.4 do Tema 5, da AULA 3.
	
	B
	android:id=“codigoIdAqui”
	
	C
	android:id=“+id/codigoIdAqui”
	
	D
	android:id=“@id/codigoIdAqui”
	
	E
	android:id=“/codigoIdAqui”
Questão 3/10 - Tópicos Avançados em Programação
	
	
	
Analisando o código Kotlin acima, avalie as afirmações a seguir:
I. Declaração do pacote: caminho da pasta no computador onde esta a classe, isso ajudando a separar e organizar os arquivos.
II. Importações: classe que serão utilizadas no código. Importante destacar que sem essas importações o código funcionará normalmente.
III. Na quarta linha é a declaração de criação da classe, onde a expressão “ : AppCompactActivity()” significa que a classe MainActivity terá como classe filha a AppcompactActivity.
IV. A linha que contem a chamada “setcontectView(R. Layout. activity_main) realizará a apresentação do layout na tela.
V. A expressão override na linha cinco quer dizer que está criando um novo médoto onCreate sem sobrescrever o método da classe-mãe.
São corretas:
Nota: 10.0
	
	A
	II, IV e V.
	
	B
	I, II, IV e V.
	
	C
	I e II.
	
	D
	I e IV.
Você acertou!
A resposta correta é a letra D, conforme a introdução do Tema 3 da AULA 1.
	
	E
	I, II, III e V.
Questão 4/10 - Tópicos Avançados em Programação
1 – default arguments
2 – named arguments
3 – varargs
4 – Tipos genéricos
Relacione cada recurso de funções com sua respectiva definição:
(  ) parâmetro (normalmente o último) que pode receber um ou mais parâmetros separados por vírgula.
(  ) os parâmetros das funções podem ter valores-padrão, o que evita ter de criar vários métodos com a mesma assinatura (method overloading).
(  ) na declaração da função ou variável, define-se o tipo genérico <T>, que será substituído por <String>, <Int> etc, podendo ser omitido o tipo na declaração.
(  ) nome dos parâmetros pode ser utilizado no momento de chamar uma função, possibilitando inclusive que a passagem de parâmetros seja feita fora de ordem.
A sequência correta é
Nota: 10.0
	
	A
	3, 1, 4, 2
Você acertou!
A reposta correta é a letra A, conforme explicado nos itens  3.1, 3.2, 3.3, 3.4 do TEMA 3 da AULA 2.
	
	B
	1, 3, 4, 2
	
	C
	3, 2, 4, 1
	
	D
	1, 4, 2, 3
	
	E
	2, 1, 3, 4
Questão 5/10 - Tópicos Avançados em Programação
As strings do aplicativo devem ser colocados no arquivo “res/value/strings.xml” para que seja possível realizar a internacionalização do aplicativo.
Em um projeto que deve ser alterado para utilizar o arquivo strings.xml para as strings do aplicativo, deve ser alterado o texto “android:text="Hello World!" do arquivo activity_main.xml para:
Nota: 0.0
	
	A
	android:text="@string/hello" e criado a string hello no arquivo strings.xml.
A letra A é a correta, conforme o explicado da introdução do Tema 4, da AULA 1.
	
	B
	android:text="@string=Hello World!, sem necessidade de criação da string no arquivo xml.
	
	C
	android:text="/res/value/strings.xml@hello”, e criado a string hello no arquivo strings.xml.
	
	D
	android:text="strings.xml/@hello”, sem necessidade de criação da string no arquivo xml.
	
	E
	android:text="@hello/strings”, com necessidade de criação da string no arquivo xml.
Questão 6/10 - Tópicos Avançados em Programação
É muito comum na programação precisarmos converter um Int para um String, esse processo de conversão é chamado de Cast.
Sobre a conversão de tipos em Kotlin é correto afirmar:
Nota: 10.0
	
	A
	É necessário realizar a validação de tipo antes de utilizar a chamada de Cast, da mesma forma que é feita em Java.
	
	B
	Utilizando o operador “is” é realizada a verificação do tipo e o Cast é realizado ao mesmo tempo.
Você acertou!
A resposta correta é a letra B, conforme item 2.4 o do Tema 2 da AULA 2.
	
	C
	Utilizando o operador “as” será lançada uma exceção do tipo TypeCastException.
	
	D
	Utilizando o operador “as?” lança uma exceção ClassCastException e retorna null.
	
	E
	O Kotlin não realiza o cast automaticamente o chamado Smart Cast, como em outras linguagens de programação.
Questão 7/10 - Tópicos Avançados em Programação
O Gerenciador FrameLayout permite organizar as views uma sobre a outra, como se fossem uma pilha. Literalmente falando, você pode imaginar uma pilha de tijolos, na qual cada tijolo é uma view ou gerenciador de layout.
Sobre a utilização do FrameLayout é INCORRETO afirmar:
Nota: 0.0
	
	A
	A cor e tamanho dos textos podem ser definidos com as propriedades textSize e textColor.
	
	B
	As imagens que são incluídas no aplicativo devem estar localizada na pasta /res/drawable-xhdpi ou /res/drawable, onde a pasta xhdpi contem imagens de alta definição.
	
	C
	A tag-raiz do layout sempre precisa ter a declaração do atributo xmlns:android, pois esse é o XML Schema desse arquivo e define o template de toda as tags.
	
	D
	O atributo scaleType="fitXY" da ImageView faz com que a imagem estique para ocupar o tamanho todo da tela.
A resposta incorreta é a letra D, conforme Tema 4 da AULA 3.
	
	E
	O ProgressBar geralmente é adicionado no topo da pilha e fica fazendo a animaçãosobre um componente.
Questão 8/10 - Tópicos Avançados em Programação
Um dos principais arquivos de configuração do projeto é o AndroidManifest.xml, também conhecido como “arquivo de manifesto”.
A imagem acima é um arquivo Manifesto do projeto criado a partir do Wizard do Androi Studio, com base nestas informações é incorreto afirmar que:
Nota: 0.0
	
	A
	A declaração da tag <application> onde são incluídas as configurações globais do aplicativo.
	
	B
	Quando criada uma nova activities deve ser incluída a tag <activity> correspondente.
	
	C
	Quando criamos uma activity é criada uma dupla de arquivos: Classe Activity + Arquivo Xml de Layout.
	
	D
	As declarações de permissões do sistema não são realizadas no arquivo de Manifesto, por isso não existe a tag <uses-permission>.
A resposta incorreta é a letra D, conforme item 3.1 do Tema 3 da AULA 1.
	
	E
	A tag <intent-filter> possui algumas configurações, entre elas a classe de ponto de entrada do aplicativo e indicação do que ícone que ficará visível na Home do Android para o usuário abrir o aplicativo.
Questão 9/10 - Tópicos Avançados em Programação
No Kotlin é possível omitir o tipo da variável na sua declaração quando se atribui um valor.
Sobre a criação uma lista de Strings é correto afirmar:
Nota: 0.0
	
	A
	Para criar deve ser utilizada obrigatoriamente a sintaxe abaixo:
val nomes:ArrayList<String> = ArrayList<String>()
	
	B
	A única forma de incluir itens na lista é utilizado a sintaxe abaixo:
nomes.add("Fulano")
	
	C
	É possível criar uma lista e na declaração atribuir os todos os valores, utilizando a sintaxe abaixo:
val nomes:List<String> = listOf("Fulano", "Beltrano", "Sicrano")
A resposta correta é a letra C, conforme item2.3 do Tema 2 da AULA 2.
	
	D
	Após utilizado o listOf na declaração da lista do tipo val é possível incluir mais itens utilizando a sintaxe nomes.add("Fulano2").
	
	E
	Mesmo alterando a sintaxe de val para var na linha abaixo não seria possível incluir novos itens na Lista, pois o ListOf é imutável
val nomes:List<String> = listOf("Fulano", "Beltrano", "Sicrano")
Questão 10/10 - Tópicos Avançados em Programação
Java Platform, Micro Edition (Java ME) oferece um ambiente robusto e flexível para aplicativos executados em dispositivos móveis e integrados: celulares, set-top boxes, reprodutores de discos Blu-ray, dispositivos de mídia digital, módulos M2M, impressoras etc.
A tecnologia Java ME foi originalmente criada para lidar com as restrições associadas à criação de aplicativos para pequenos dispositivos. Para essa finalidade, a Oracle definiu o básico para a tecnologia Java ME para acomodar esse ambiente limitado e possibilitar a criação de aplicativos Java executados em dispositivos pequenos com memória, vídeo e capacidade de processamento limitados.
Fonte:https://www.java.com/pt-BR/download/help/whatis_j2me_pt-br.html
Marque a alternativa INCORRETA sobre celulares que utilizavam J2ME:
Nota: 0.0
	
	A
	A ideia do J2ME era usufruir do grande lema da linguagem Java (Write Once Run Everywhere – escreva uma vez, execute em qualquer lugar) e criar uma plataforma única de desenvolvimento que executasse em diversos dispositivos, independentemente do fabricante.
	
	B
	Os celulares Java eram embarcados com uma JVM (Java Virtual Machine) capaz de executar esses aplicativos.
	
	C
	O J2ME tinha um problema: era uma especificação, e não uma implementação.
	
	D
	Na especificação (criada pela Sun Microsystems – criadora do Java e hoje comprada pela Oracle), apenas citava-se que, para criar a interface do aplicativo, era preciso existir um componente de Botão, outro para um Campo de Texto, Checkbox, Imagem etc., porém cada fabricante podia implementar esses componentes visuais como quisesse.
	
	E
	A interface de um botão e checkbox de um celular do fabricante X ficava diferente do celular que foi feito pelo fabricante Y, e isso era aceitável por grandes empresas e as empresas queria que existissem essas diferenças.
A reposta incorreta é a letra e, conforme explicado no TEMA 1 da AULA 1. As diferenças eram inaceitáveis pelas empresas, pois elas queriam que a interface respeite todas as cores e todo o guia de interface da empresa.
Questão 1/10 - Tópicos Avançados em Programação
Relacione cada elementos da imagem com sua função, respectivamente:
(   ) representa o id do aplicativo do GooglePlay.
(   ) configurações das bibliotecas utilizadas no aplicativo.
(   ) Representa a API Level no qual o projeto será compilado.
(   ) Corresponde a versão do SDK BluidTools instalado no Android SDK.
(   ) mostrar o número de versão amigável para o usuário.
(   ) Configuração dos plugins para habilitar os módulos de compilação Android e Kotlin no gradle.
(   ) representa a API Level minima suportada pelo aplicativo.
(   ) número inteiro que representa o número da versão de um build do aplicativo.
(   ) configuração das opções de build: debug e release.
(   ) precisa ser igual ao compileSdkVersion.
A sequência correta é:
Nota: 0.0
	
	A
	1, 2, 3, 6, 4, 7, 5, 10, 8, 9
	
	B
	2, 3, 6, 1, 4, 7, 5, 10, 8, 9
	
	C
	4, 10, 2, 8, 3, 1, 7, 5, 9, 6
	
	D
	4, 10, 2, 3, 8, 1, 5, 7, 9, 6
A reposta correta é a letra D, conforme explicado no item 3.8 do TEMA 3 da AULA 1.
	
	E
	1, 2, 5, 10, 8, 9, 3, 6, 4, 7
Questão 2/10 - Tópicos Avançados em Programação
A plataforma Android tem toda uma pilha bem definida e com base no Linux. Sobre as camadas dessa pilha podemos afirmar:
I. Na Camada Native Libraries temos os componentes de hardware, como áudio, bluetooth, câmera e sensores, e que fornecem uma interface padrão de comunicação com as APIs do sistema.
II. A camada HAL consiste em módulos de biblioteca, que implementam uma interface para um tipo específico de componente de hardware, como o módulo de câmera ou Bluetooth.
III. Android Runtime, que é a máquina virtual capaz de executar os aplicativos Android, distribuídos por um arquivo com a extensão APK.
IV. Android Framework consiste em um conjunto de APIs que os desenvolvedores utilizam para acessar todos os recursos disponíveis no Android.
Na Camada Linux Kernel temos os aplicativos de sistema e nossos próprios aplicativos todos eles são construídos da mesma forma, com as linguagens Java ou Kotlin e utilizando o Android SDK.
São corretas:
Nota: 0.0
	
	A
	Apenas II.
	
	B
	Apenas I e II.
	
	C
	Apenas II, III e IV.
A Resposta correta é a letra C. As afirmações II, III e IV, conforme o item 1.2 do Tema 1 da AULA 1.
	
	D
	Apenas II e III.
	
	E
	Todas estão corretas.
Questão 3/10 - Tópicos Avançados em Programação
1 – android:id
2 – findViewById(id)
3 – setOnClickListener(),
4 – android:parentActivityName=".MainActivity"
Relacione cada item acima com sua respectiva definição:
(  ) Para adicionar o botão de voltar na AppBar (barra de navegação), no canto superior esquerdo.
(  ) para cada elemento da tela ao qual queremos adicionar um evento, precisamos adicionar um identificador, que é chamado apenas de id.
(  ) utilizado para adicionar um evento a um botão.
(  ) Método utilizado para encontrar uma view utilizando o id.
A sequência correta é:
Nota: 0.0
	
	A
	3, 1, 4, 2
	
	B
	1, 3, 4, 2
	
	C
	3, 2, 4, 1
	
	D
	4, 1, 3, 2
A reposta correta é a letra D, conforme explicado no item 5.4 do TEMA 5 da AULA 3.
	
	E
	2, 1, 3, 4
Questão 4/10 - Tópicos Avançados em Programação
Um dos principais arquivos de configuração do projeto é o AndroidManifest.xml, também conhecido como “arquivo de manifesto”.
A imagem acima é um arquivo Manifesto do projeto criado a partir do Wizard do Androi Studio, com base nestas informações é incorreto afirmar que:
Nota: 0.0
	
	A
	A declaração da tag <application> onde são incluídas as configurações globais do aplicativo.
	
	B
	Quando criada uma nova activities deve ser incluída a tag <activity> correspondente.
	
	C
	Quando criamos uma activity é criada uma dupla de arquivos: Classe Activity + Arquivo Xml de Layout.
	
	D
	As declarações de permissões do sistema não são realizadas no arquivo de Manifesto, por isso não existe a tag <uses-permission>.
A respostaincorreta é a letra D, conforme item 3.1 do Tema 3 da AULA 1.
	
	E
	A tag <intent-filter> possui algumas configurações, entre elas a classe de ponto de entrada do aplicativo e indicação do que ícone que ficará visível na Home do Android para o usuário abrir o aplicativo.
Questão 5/10 - Tópicos Avançados em Programação
No Kotlin é possível omitir o tipo da variável na sua declaração quando se atribui um valor.
Sobre a criação uma lista de Strings é correto afirmar:
Nota: 0.0
	
	A
	Para criar deve ser utilizada obrigatoriamente a sintaxe abaixo:
val nomes:ArrayList<String> = ArrayList<String>()
	
	B
	A única forma de incluir itens na lista é utilizado a sintaxe abaixo:
nomes.add("Fulano")
	
	C
	É possível criar uma lista e na declaração atribuir os todos os valores, utilizando a sintaxe abaixo:
val nomes:List<String> = listOf("Fulano", "Beltrano", "Sicrano")
A resposta correta é a letra C, conforme item2.3 do Tema 2 da AULA 2.
	
	D
	Após utilizado o listOf na declaração da lista do tipo val é possível incluir mais itens utilizando a sintaxe nomes.add("Fulano2").
	
	E
	Mesmo alterando a sintaxe de val para var na linha abaixo não seria possível incluir novos itens na Lista, pois o ListOf é imutável
val nomes:List<String> = listOf("Fulano", "Beltrano", "Sicrano")
Questão 6/10 - Tópicos Avançados em Programação
Com base no código acima é correto afirmar:
Nota: 10.0
	
	A
	A linha 4 está incorreta pois para imprimir o valor do nome deveria ser utilizada a sintaxe ${nome}.
	
	B
	A linha 5 está incorreta pois deveria utiliza “+” para concatenar o caractere “>” com o valor da constante “nomeCompleto”.
	
	C
	São declaradas 2 variáveis (nome e sobremone) e 1 constante (nomeCompleto).
	
	D
	A declaração das 3 constantes estão incompletas pois obrigatoriamente deve ser informado qual o tipo da constante com “:” após o nome da constante.
	
	E
	Se utilizada a palavra “val” na declaração da variável ela será tratada como uma constante e não poderá ser alterada.
Você acertou!
A Resposta correta é a letra E, conforme o item 2.1 e 2.2 do Tema 2 da AULA 2.
Questão 7/10 - Tópicos Avançados em Programação
A organização das views na tela pode ser considerado um assunto avançado do Linear Layout.
Sobre as propriedades avançadas do Linear Layout é correto afirmar:
Nota: 0.0
	
	A
	Para incluir dos TextView um ao lado do outro e que cada uma ocupe 50% do espaço disponível é utilizado o atributo “layout_weight=0.5” em cada TextView.
	
	B
	É necessário alterar a largura para ficar com tamanho layout_width="0" (zero), assim ela pode respeitar o peso adicionado layout_weight="1":
	
	C
	Adicionando o gravity="central" no TextView o conteúdo ficará centralizado.
	
	D
	A opção perfeita para descolar as duas views seria adicionar uma margem à esquerda da segunda TextView utilizando o android:layout_marginLeft="24dp".
	
	E
	Quando ambos os TextView têm a mesma largura, deve-se utilizar o valor peso=1 no atribuito layout_weight.
A resposta correta é a letra E, conforme Tema 3 da AULA 3.
Questão 8/10 - Tópicos Avançados em Programação
1 – default arguments
2 – named arguments
3 – varargs
4 – Tipos genéricos
Relacione cada recurso de funções com sua respectiva definição:
(  ) parâmetro (normalmente o último) que pode receber um ou mais parâmetros separados por vírgula.
(  ) os parâmetros das funções podem ter valores-padrão, o que evita ter de criar vários métodos com a mesma assinatura (method overloading).
(  ) na declaração da função ou variável, define-se o tipo genérico <T>, que será substituído por <String>, <Int> etc, podendo ser omitido o tipo na declaração.
(  ) nome dos parâmetros pode ser utilizado no momento de chamar uma função, possibilitando inclusive que a passagem de parâmetros seja feita fora de ordem.
A sequência correta é
Nota: 10.0
	
	A
	3, 1, 4, 2
Você acertou!
A reposta correta é a letra A, conforme explicado nos itens  3.1, 3.2, 3.3, 3.4 do TEMA 3 da AULA 2.
	
	B
	1, 3, 4, 2
	
	C
	3, 2, 4, 1
	
	D
	1, 4, 2, 3
	
	E
	2, 1, 3, 4
Questão 9/10 - Tópicos Avançados em Programação
Sobre classe e orientação a objeto em Kotlin avalie as acertivas abaixo:
I. O construtor primário em Kotlin não pode ter nenhum código, portanto o código foi inicializado com a palavra init (bloco de inicialização). Para criar uma instância de um objeto, não é preciso utilizar o famoso operador new como no Java.
II. Para herdar de uma classe, basta utilizar a sintaxe dos dois-pontos, seguida do nome da classe-mãe. Para que a herança possa ser realizada, a classe mãe foi anotada como open, pois, no Kotlin, todas as classes são final por padrão, ou seja, não é possível utilizar herança. O mesmo vale para métodos.
III. Data Classes têm uma sintaxe resumida e não implementa automaticamente as funções: equals() e hashcode(), toString() e copy().
IV. Métodos estáticos – ou métodos de classe, como são chamados – não permitem criar métodos que podem ser chamados diretamente com a sintaxe "Classe.metodo()".
V. Um singleton é um padrão que permite que uma classe tenha apenas uma instância (objeto) em memória. Para criar um singleton em Java, são necessárias várias linhas de código, mas, em Kotlin, basta utilizar a palavra reservada object em lugar de class.
VI. Se quisermos que o Kotlin crie essa lista para nós, é possível utilizar a função mutableListOf(), que retorna uma lista mutável, ou seja, que pode ser alterada. Mas podemos utilizar as funções mutableListOf() (mutável) ou listOf() (imutável), conforme a necessidade.
São corretas:
Nota: 0.0
	
	A
	I, II, III e VI
	
	B
	I, II, V e VI
A letra B é a correta, conforme o explicado no Tema 4, da AULA 2.
	
	C
	II, IV, V e VI
	
	D
	III, IV e V
	
	E
	Todas estão corretas.
Questão 10/10 - Tópicos Avançados em Programação
Kotlin Playground, criada pelos fundadores da linguagem, justamente para você digitar alguns códigos e se acostumar com a sintaxe.
Com base na imagem acima podemos é correto afirmar:
Nota: 0.0
	
	A
	É necessário realizar a instalação no PC.
	
	B
	Quando inicia a ferramenta já abre com uma classe main().
	
	C
	Quando é pressionado o Botão “Run” (item 1 da imagem) é mostrado o resultado “Hello, word!!!” (item 2 da imagem)
A letra C é a correta, conforme explicado item 1.1 do Tema 1, da AULA 2.
	
	D
	Para que seja possível executar a linha 2 (item 3 da imagem) é necessário desenvolver a função println.
	
	E
	O Item 2 da imagem pode ser alterado apenas clicando em cima.
Cada membro da OHA está fortemente comprometido com uma maior abertura no ecossistema móvel. A maior abertura permitirá que todos em nosso setor inovem mais rapidamente e respondam melhor às demandas dos consumidores. Nosso primeiro projeto conjunto como uma nova aliança é o Android ™. O Android foi desenvolvido do zero com o objetivo explícito de ser a primeira plataforma aberta, completa e gratuita criada especificamente para dispositivos móveis.
Fonte: http://www.openhandsetalliance.com/oha_overview.html
Sobre a OHA é correto afirmar:
Nota: 10.0
	
	A
	Em meados de 2007, o Google não quis se juntar a outras empresas gigantes da tecnologia, que futuramente chamada de OHA (Open Handset Alliance).
	
	B
	O objetivo da aliança era criar desenvolve um sistema operacional móvel único para monopolizar o mercado de celular.
	
	C
	Na época existiam apenas 88 empresas integrantes do grupo, entre elas: Samsung, Intel, LG, Motorola, ASUS, Acer, Dell, dentre outras. Ficaram de fora a Aliança Google e Sony Ericsson.
	
	D
	Com a união se a Samsung fizesse melhorias no software da câmera, isso ficaria disponível no código-fonte aberto do Android, e todos os fabricantes participantes da aliança poderiam se beneficiar disso.
Você acertou!
A letra D é a correta, conforme explicado no Tema 1, da AULA 1.
	
	E
	Como a Sony ficou fora da União, caso ela fizesse melhorias nos wiadgets que ficam na Home do Android, ela não passaria isso para as outras empresas.
Questão 2/10 - Tópicos Avançados em Programação
No Kotlin é possível omitir o tipo da variável na sua declaração quando se atribui um valor.Sobre a criação uma lista de Strings é correto afirmar:
Nota: 0.0
	
	A
	Para criar deve ser utilizada obrigatoriamente a sintaxe abaixo:
val nomes:ArrayList<String> = ArrayList<String>()
	
	B
	A única forma de incluir itens na lista é utilizado a sintaxe abaixo:
nomes.add("Fulano")
	
	C
	É possível criar uma lista e na declaração atribuir os todos os valores, utilizando a sintaxe abaixo:
val nomes:List<String> = listOf("Fulano", "Beltrano", "Sicrano")
A resposta correta é a letra C, conforme item2.3 do Tema 2 da AULA 2.
	
	D
	Após utilizado o listOf na declaração da lista do tipo val é possível incluir mais itens utilizando a sintaxe nomes.add("Fulano2").
	
	E
	Mesmo alterando a sintaxe de val para var na linha abaixo não seria possível incluir novos itens na Lista, pois o ListOf é imutável
val nomes:List<String> = listOf("Fulano", "Beltrano", "Sicrano")
Questão 3/10 - Tópicos Avançados em Programação
1 – default arguments
2 – named arguments
3 – varargs
4 – Tipos genéricos
Relacione cada recurso de funções com sua respectiva definição:
(  ) parâmetro (normalmente o último) que pode receber um ou mais parâmetros separados por vírgula.
(  ) os parâmetros das funções podem ter valores-padrão, o que evita ter de criar vários métodos com a mesma assinatura (method overloading).
(  ) na declaração da função ou variável, define-se o tipo genérico <T>, que será substituído por <String>, <Int> etc, podendo ser omitido o tipo na declaração.
(  ) nome dos parâmetros pode ser utilizado no momento de chamar uma função, possibilitando inclusive que a passagem de parâmetros seja feita fora de ordem.
A sequência correta é
Nota: 10.0
	
	A
	3, 1, 4, 2
Você acertou!
A reposta correta é a letra A, conforme explicado nos itens  3.1, 3.2, 3.3, 3.4 do TEMA 3 da AULA 2.
	
	B
	1, 3, 4, 2
	
	C
	3, 2, 4, 1
	
	D
	1, 4, 2, 3
	
	E
	2, 1, 3, 4
Questão 4/10 - Tópicos Avançados em Programação
Quando criamos um Projeto no Android Studio é criada uma estrutura de pastas e arquivos de configurações. Sobre a criação de um projeto é correto afirmar
(   ) Na pasta “/res/mipmap” contém o ícone do aplicativo.
(   ) Na pasta “res/drawable” pode ser adicionado as figuras para mostrar no aplicativo.
(   ) O ícone e nome do aplicativo é configurado no arquivo manifesto e para indicar o ícone que será utilizado utiliza a notação “@mipmap/ic_launcher”
(   ) O arquivo “res/value/strings.xml” possui vários textos separados por chave e valor, onde a ideia do arquivo é deixar apenas os textos mais utilizados no aplicativo.
(   ) O arquivo “res/value/colors.xml” são as cores como variáveis em notação binária, incluidas para serem utilizadas de forma pontual no aplicativo.
(   ) O arquivo “res/value/styles.xml” é o arquivo que define o tema do aplicativo.
Baseado nas suas respostas, a sequência correta é:
Nota: 0.0
	
	A
	V F V V F F
	
	B
	F F V F V V
	
	C
	V V V F F F
	
	D
	V V V F F V
A reposta correta é a letra D, conforme explicado nos itens 3.2, 3.3, 3.4, 3.5, 3.6 e 3.7 TEMA 3 da AULA 1.
	
	E
	V F F V F V
Questão 5/10 - Tópicos Avançados em Programação
Para adicionar o id em uma view, utilizamos o atributo android:id, a sintaxe que deve ser utilizada é :
Nota: 0.0
	
	A
	android:id=“@+id/codigoIdAqui”
A letra A é a correta, conforme o explicado no item 5.4 do Tema 5, da AULA 3.
	
	B
	android:id=“codigoIdAqui”
	
	C
	android:id=“+id/codigoIdAqui”
	
	D
	android:id=“@id/codigoIdAqui”
	
	E
	android:id=“/codigoIdAqui”
Questão 6/10 - Tópicos Avançados em Programação
Com base na imagem acima, avalie coloque V ou F sobre Funções em Kotlin:
(  ) A função imprimir(String) recebe uma String como parâmetro e a salva na memória.
(  ) A função imprimir(String) não tem retorno, portanto, é identificada como Unit, semelhante ao void do Java.
(  ) A função soma(Int, Int) recebe dois inteiros e retorna dois inteiro sem realizar a soma.
(  ) Quando a função não tem retorno, a palavra Unit pode ser omitida.
(  ) A sintaxe resumida ao declarar funções, chamada de Single-Expression functions. Sempre que uma função tiver apenas uma linha, não será preciso abrir e fechar chaves { }: basta usar o operador de igual '=' e escrever tudo em uma única linha.
(  ) O tipo do retorno da função pode ser omitido, pois o Kotlin pode descobrir isso sozinho.
Baseado nas suas respostas, a sequência correta é:
Nota: 0.0
	
	A
	V F V V F F
	
	B
	F V F V V V
A reposta correta é a letra B, conforme explicado na introdução do TEMA 3 da AULA 2.
	
	C
	V V V F F F
	
	D
	F V F F F V
	
	E
	V F F V F V
Questão 7/10 - Tópicos Avançados em Programação
Java Platform, Micro Edition (Java ME) oferece um ambiente robusto e flexível para aplicativos executados em dispositivos móveis e integrados: celulares, set-top boxes, reprodutores de discos Blu-ray, dispositivos de mídia digital, módulos M2M, impressoras etc.
A tecnologia Java ME foi originalmente criada para lidar com as restrições associadas à criação de aplicativos para pequenos dispositivos. Para essa finalidade, a Oracle definiu o básico para a tecnologia Java ME para acomodar esse ambiente limitado e possibilitar a criação de aplicativos Java executados em dispositivos pequenos com memória, vídeo e capacidade de processamento limitados.
Fonte:https://www.java.com/pt-BR/download/help/whatis_j2me_pt-br.html
Marque a alternativa INCORRETA sobre celulares que utilizavam J2ME:
Nota: 0.0
	
	A
	A ideia do J2ME era usufruir do grande lema da linguagem Java (Write Once Run Everywhere – escreva uma vez, execute em qualquer lugar) e criar uma plataforma única de desenvolvimento que executasse em diversos dispositivos, independentemente do fabricante.
	
	B
	Os celulares Java eram embarcados com uma JVM (Java Virtual Machine) capaz de executar esses aplicativos.
	
	C
	O J2ME tinha um problema: era uma especificação, e não uma implementação.
	
	D
	Na especificação (criada pela Sun Microsystems – criadora do Java e hoje comprada pela Oracle), apenas citava-se que, para criar a interface do aplicativo, era preciso existir um componente de Botão, outro para um Campo de Texto, Checkbox, Imagem etc., porém cada fabricante podia implementar esses componentes visuais como quisesse.
	
	E
	A interface de um botão e checkbox de um celular do fabricante X ficava diferente do celular que foi feito pelo fabricante Y, e isso era aceitável por grandes empresas e as empresas queria que existissem essas diferenças.
A reposta incorreta é a letra e, conforme explicado no TEMA 1 da AULA 1. As diferenças eram inaceitáveis pelas empresas, pois elas queriam que a interface respeite todas as cores e todo o guia de interface da empresa.
Questão 8/10 - Tópicos Avançados em Programação
O Android Studio facilita a criação de apps Android em vários formatos, como celulares, tablets, TVs e dispositivos Wear.
Sobre a criação de projetos no Android Studio é correto afirmar:
Nota: 0.0
	
	A
	Para criar um projeto no Android Studio, é necessário realizar a  importação dos arquivos de configuração clique no botão Start a new Android Studio Project.
	
	B
	O template "Empty Activity" indica que será criada uma tela vazia apenas com o template básico de uma tela.
A resposta correta é a letra B, conforme introdução do Tema 2 da AULA 1.
	
	C
	Uma Activity é um único arquivo que contém: classe que contem o código e uma lógica de uma tela.
	
	D
	Package name não é utilizado como base dos imports para as classes Java ou Kotlin.
	
	E
	Uma instituição financeira ou qualquer empresa que tenha altos padrões de segurança, deve deixar a API 23 (Android 6.0) como a máxima suportada, pois foram feitas significantes melhorias de segurança do sistema operacional nessa versão.
Questão 9/10 - Tópicos Avançados em Programação
Um dos principais arquivos de configuração do projeto é o AndroidManifest.xml, também conhecido como “arquivo de manifesto”.
A imagem acima é um arquivo Manifesto do projeto criado a partir do Wizard do Androi Studio, com base nestas informações é incorreto afirmar que:
Nota: 0.0
	
	A
	A declaração da tag <application> onde são incluídasas configurações globais do aplicativo.
	
	B
	Quando criada uma nova activities deve ser incluída a tag <activity> correspondente.
	
	C
	Quando criamos uma activity é criada uma dupla de arquivos: Classe Activity + Arquivo Xml de Layout.
	
	D
	As declarações de permissões do sistema não são realizadas no arquivo de Manifesto, por isso não existe a tag <uses-permission>.
A resposta incorreta é a letra D, conforme item 3.1 do Tema 3 da AULA 1.
	
	E
	A tag <intent-filter> possui algumas configurações, entre elas a classe de ponto de entrada do aplicativo e indicação do que ícone que ficará visível na Home do Android para o usuário abrir o aplicativo.
Questão 10/10 - Tópicos Avançados em Programação
As strings do aplicativo devem ser colocados no arquivo “res/value/strings.xml” para que seja possível realizar a internacionalização do aplicativo.
Em um projeto que deve ser alterado para utilizar o arquivo strings.xml para as strings do aplicativo, deve ser alterado o texto “android:text="Hello World!" do arquivo activity_main.xml para:
Nota: 0.0
	
	A
	android:text="@string/hello" e criado a string hello no arquivo strings.xml.
A letra A é a correta, conforme o explicado da introdução do Tema 4, da AULA 1.
	
	B
	android:text="@string=Hello World!, sem necessidade de criação da string no arquivo xml.
	
	C
	android:text="/res/value/strings.xml@hello”, e criado a string hello no arquivo strings.xml.
	
	D
	android:text="strings.xml/@hello”, sem necessidade de criação da string no arquivo xml.
	
	E
	android:text="@hello/strings”, com necessidade de criação da string no arquivo xml.
Questão 1/10 - Tópicos Avançados em Programação
Um dos principais arquivos de configuração do projeto é o AndroidManifest.xml, também conhecido como “arquivo de manifesto”.
A imagem acima é um arquivo Manifesto do projeto criado a partir do Wizard do Androi Studio, com base nestas informações é incorreto afirmar que:
Nota: 10.0
	
	A
	A declaração da tag <application> onde são incluídas as configurações globais do aplicativo.
	
	B
	Quando criada uma nova activities deve ser incluída a tag <activity> correspondente.
	
	C
	Quando criamos uma activity é criada uma dupla de arquivos: Classe Activity + Arquivo Xml de Layout.
	
	D
	As declarações de permissões do sistema não são realizadas no arquivo de Manifesto, por isso não existe a tag <uses-permission>.
Você acertou!
A resposta incorreta é a letra D, conforme item 3.1 do Tema 3 da AULA 1.
	
	E
	A tag <intent-filter> possui algumas configurações, entre elas a classe de ponto de entrada do aplicativo e indicação do que ícone que ficará visível na Home do Android para o usuário abrir o aplicativo.
Questão 2/10 - Tópicos Avançados em Programação
O Android Studio facilita a criação de apps Android em vários formatos, como celulares, tablets, TVs e dispositivos Wear.
Sobre a criação de projetos no Android Studio é correto afirmar:
Nota: 10.0
	
	A
	Para criar um projeto no Android Studio, é necessário realizar a  importação dos arquivos de configuração clique no botão Start a new Android Studio Project.
	
	B
	O template "Empty Activity" indica que será criada uma tela vazia apenas com o template básico de uma tela.
Você acertou!
A resposta correta é a letra B, conforme introdução do Tema 2 da AULA 1.
	
	C
	Uma Activity é um único arquivo que contém: classe que contem o código e uma lógica de uma tela.
	
	D
	Package name não é utilizado como base dos imports para as classes Java ou Kotlin.
	
	E
	Uma instituição financeira ou qualquer empresa que tenha altos padrões de segurança, deve deixar a API 23 (Android 6.0) como a máxima suportada, pois foram feitas significantes melhorias de segurança do sistema operacional nessa versão.
Questão 3/10 - Tópicos Avançados em Programação
A plataforma Android tem toda uma pilha bem definida e com base no Linux. Sobre as camadas dessa pilha podemos afirmar:
I. Na Camada Native Libraries temos os componentes de hardware, como áudio, bluetooth, câmera e sensores, e que fornecem uma interface padrão de comunicação com as APIs do sistema.
II. A camada HAL consiste em módulos de biblioteca, que implementam uma interface para um tipo específico de componente de hardware, como o módulo de câmera ou Bluetooth.
III. Android Runtime, que é a máquina virtual capaz de executar os aplicativos Android, distribuídos por um arquivo com a extensão APK.
IV. Android Framework consiste em um conjunto de APIs que os desenvolvedores utilizam para acessar todos os recursos disponíveis no Android.
Na Camada Linux Kernel temos os aplicativos de sistema e nossos próprios aplicativos todos eles são construídos da mesma forma, com as linguagens Java ou Kotlin e utilizando o Android SDK.
São corretas:
Nota: 10.0
	
	A
	Apenas II.
	
	B
	Apenas I e II.
	
	C
	Apenas II, III e IV.
Você acertou!
A Resposta correta é a letra C. As afirmações II, III e IV, conforme o item 1.2 do Tema 1 da AULA 1.
	
	D
	Apenas II e III.
	
	E
	Todas estão corretas.
Questão 4/10 - Tópicos Avançados em Programação
	
	
	
Analisando o código Kotlin acima, avalie as afirmações a seguir:
I. Declaração do pacote: caminho da pasta no computador onde esta a classe, isso ajudando a separar e organizar os arquivos.
II. Importações: classe que serão utilizadas no código. Importante destacar que sem essas importações o código funcionará normalmente.
III. Na quarta linha é a declaração de criação da classe, onde a expressão “ : AppCompactActivity()” significa que a classe MainActivity terá como classe filha a AppcompactActivity.
IV. A linha que contem a chamada “setcontectView(R. Layout. activity_main) realizará a apresentação do layout na tela.
V. A expressão override na linha cinco quer dizer que está criando um novo médoto onCreate sem sobrescrever o método da classe-mãe.
São corretas:
Nota: 10.0
	
	A
	II, IV e V.
	
	B
	I, II, IV e V.
	
	C
	I e II.
	
	D
	I e IV.
Você acertou!
A resposta correta é a letra D, conforme a introdução do Tema 3 da AULA 1.
	
	E
	I, II, III e V.
Questão 5/10 - Tópicos Avançados em Programação
1 – default arguments
2 – named arguments
3 – varargs
4 – Tipos genéricos
Relacione cada recurso de funções com sua respectiva definição:
(  ) parâmetro (normalmente o último) que pode receber um ou mais parâmetros separados por vírgula.
(  ) os parâmetros das funções podem ter valores-padrão, o que evita ter de criar vários métodos com a mesma assinatura (method overloading).
(  ) na declaração da função ou variável, define-se o tipo genérico <T>, que será substituído por <String>, <Int> etc, podendo ser omitido o tipo na declaração.
(  ) nome dos parâmetros pode ser utilizado no momento de chamar uma função, possibilitando inclusive que a passagem de parâmetros seja feita fora de ordem.
A sequência correta é
Nota: 10.0
	
	A
	3, 1, 4, 2
Você acertou!
A reposta correta é a letra A, conforme explicado nos itens  3.1, 3.2, 3.3, 3.4 do TEMA 3 da AULA 2.
	
	B
	1, 3, 4, 2
	
	C
	3, 2, 4, 1
	
	D
	1, 4, 2, 3
	
	E
	2, 1, 3, 4
Questão 6/10 - Tópicos Avançados em Programação
Sobre utilização das View RadioButton e CheckBox, avalie as assertivas abaixo:
I. Para criação do RadioButton não é necessário que esteja aninhado dentro de uma tag RadioGroup.
II. É necessário criar um RadioButton para cada opção que desejamos e cada opção deve possuir um id único.
III. Para que os RadioButtons fiquem um ao lado do outro utiliza o atributo android:orientation="horizontal" no RadioGroup.
IV. O RadioGroup também precisa de um id único.
V. O Texto que aparecerá ao lado do Checkbox utiliza o atributo android:text.
Baseado nas suas respostas são corretas:
Nota: 10.0
	
	A
	Apenas I, IV e V
	
	B
	Apenas II e III
	
	C
	Apenas II, III e V
Você acertou!
A reposta correta é a letra C, conforme explicado no item 5.3 do TEMA 5 da AULA 3.
	
	D
	Todas estão corretas
	
	E
	Apenas a I
Questão 7/10 - Tópicos Avançados em Programação
Kotlin Playground, criada pelos fundadores da linguagem, justamente para você digitar alguns códigos e se acostumar com a sintaxe.
Com base na imagemacima podemos é correto afirmar:
Nota: 0.0
	
	A
	É necessário realizar a instalação no PC.
	
	B
	Quando inicia a ferramenta já abre com uma classe main().
	
	C
	Quando é pressionado o Botão “Run” (item 1 da imagem) é mostrado o resultado “Hello, word!!!” (item 2 da imagem)
A letra C é a correta, conforme explicado item 1.1 do Tema 1, da AULA 2.
	
	D
	Para que seja possível executar a linha 2 (item 3 da imagem) é necessário desenvolver a função println.
	
	E
	O Item 2 da imagem pode ser alterado apenas clicando em cima.
Questão 8/10 - Tópicos Avançados em Programação
Os gerenciadores de Layout são os responsáveis por organizar os componentes do Layout e as Views são os componentes visuais.
Marque a alternativa correta sobre Gerenciadores de Layout e Views:
Nota: 0.0
	
	A
	LinearLayout é um Gerenciador de Layout e permite apenas organizar os componentes na vertical.
	
	B
	FrameLayout é um Gerenciador de Layout e permite organizar os componentes um sobre o outro, como se fossem uma pilha.
A reposta correta é a letra B, conforme explicado na introdução do TEMA 1 da AULA 3.
	
	C
	ConstraintLayout é uma View e permite organizar os componentes utilizando o editor visual.
	
	D
	RecyclerView é um gerenciador de Layout e permite criar listas e grids.
	
	E
	CardView é um gerenciador de Layout e permite mostra a interface de um card (cartão).
Questão 9/10 - Tópicos Avançados em Programação
Na criação de um Formulário de Login é utilizado um layout simples com poucos campos.
Sobre a criação de Layout  do Formulário é correto afirmar:
Nota: 0.0
	
	A
	O TextView é um campo de texto e o EditText é o label.
	
	B
	No campo senha utiliza-se o atribuito “android:inputType="textPassword” para apresentar o caracter “@” quando digitar a senha.
	
	C
	Para adicionar um espaçamento dentro do formulário, vamos adicionar a propriedade android:padding="16cm" no LinearLayout.
	
	D
	Adicionando a propriedade layout_gravity="central" no botão para ele ficar centralizado na tela.
	
	E
	Podemos colocar gerenciadores de layout dentro dos outros, ou seja, ter um LinearLayout vertical raiz (que é chamado de layout root) e um LinearLayout filho.
A Resposta correta é a letra E, conforme nos itens introdução,  2.1 e 2.2 do Tema 2 da AULA 3.
Questão 10/10 - Tópicos Avançados em Programação
No arquivo activity_main.xml podemos realizar as alterações de posição, tamanho e cores da tela e seus componentes.
Sobre as configurações dos Gerenciadores de Layout e View é INCORRETO afirmar:
Nota: 0.0
	
	A
	Para definir uma cor de fundo deve ser atribuido um valor em Hexadecimal no atributo “android:background”.
	
	B
	Os atributos layout_width e layout_height são responsáveis por definir a largura e a altura de uma view.
	
	C
	O valor wrap_content deixa o tamanho da view (largura ou altura) somente com o espaço necessário.
	
	D
	O valor match_parent deixa o tamanho da view ocupando todo o espaço disponível na tela ou no seu layout-pai, o que leva a view a dar ficar proporcional.
A letra D é a incorreta, conforme explicado nos itens 1.1 e 1.2 do Tema 1, da AULA 3.
	
	E
	Se configurar o atributo android:orientation="vertical" do LinearLayout , as views ficarão uma abaixo da outra na tela.

Continue navegando