Desenvolvedor FullStack Java + Angular

Description

Fullstack Technologies Flashcards on Desenvolvedor FullStack Java + Angular, created by Carlos Thompson on 05/09/2024.
Carlos Thompson
Flashcards by Carlos Thompson, updated 4 months ago
Carlos Thompson
Created by Carlos Thompson 4 months ago
2
0

Resource summary

Question Answer
Qual foi o ultimo design Pattern que usaste num desenvolvimento teu? Factory Pattern para criação de objetos sem expor a lógica concreta de instância ao cliente.
O que é Design Pattern Singleton? é um padrão de design que garante que uma classe tenha apenas uma instância e fornece um ponto global de acesso a essa instância.
Em que cenário é que eu poderia utilizar um singleton? Em cenários onde se deseja uma única instância de um objeto, como um gerenciador de conexão de banco de dados, ou um serviço de configuração central.
Para conectar BD, podemos usar singleton? Sim, um Singleton pode ser usado para gerenciar uma conexão com o banco de dados para garantir que todas as partes da aplicação usem a mesma instância de conexão
Conceito de singleton no contexto de Spring diz-te alguma coisa? ○ Sim, O escopo padrão de um bean é singleton no Spring gerencia uma única instância e a compartilha ao longo do contêiner.
Um bean é um singleton. Concordas ou discordas e porquê? ○ Sim, O escopo padrão de um bean é singleton no Spring gerencia uma única instância e a compartilha ao longo do contêiner.
O que são collections? são estruturas de dados em Java que oferecem maneiras de armazenar, buscar e manipular conjuntos de objetos, utilizando classes e interfaces com exemplo: List, Set, Map.
Para que serve uma stream? ○ Streams processam sequências de elementos de forma declarativa, permitindo operações como filtragem, mapeamento e redução.
Como você estruturaria sua classe de forma a seguir o padrão Singleton? A classe deve ter um construtor privado, um método estático para obter a instância e um campo estático que armazena a instância
Implementar herança múltipla em java? Como farias? Não é possível, mas achas que haveria algum mecanismo de contornar esta situação? ○ Sim, Java não suporta herança múltipla de classes, mas permite implementar múltiplas interfaces, o que pode ser uma maneira de contornar essa limitação.
OK. Dentro dessa situação, imagina que tens uma situação que não queres herança. Não queres que ninguém estenda. ○ Para prevenir herança evitando que uma classe seja estendida, use o modificador final na declaração da classe: ○ public final class MinhaClasse { }
Java é linguagem unicamente orientada a objetos. Concordas com isso ou não? ○ Não completamente, pois também suporta tipos primitivos, o que não é puramente orientado a objetos.
Sabes me dizer qual a diferença entre = = e .equals? == compara referências de memória; .equals() compara o conteúdo de objetos.
Qual deles permite ter um nulo sem quebrar o código? .equals() permite comparar nulls sem lançar exceção, mas == apenas compara a referência direta e pode causar NullPointerException.
ORM framework para que serve? ORM (Object-Relational Mapping) como Hibernate facilita o mapeamento entre objetos Java e tabelas de banco de dados.
Diferença entre Hibernate e JPA? ○ JPA (Java Persistence API) é uma especificação que descreve uma maneira padronizada de mapear objetos Java para bancos de dados relacionais; Hibernate é uma implementação dessa especificação.
Como você verifica sua base de dados com Hibernate? Utiliza-se o Hibernate Session para realizar operações de CRUD e consultas JPQL.
Qual a diferença entre Eager vs Lazy Loading (Hibernate)? Eager carrega todos os dados relacionados imediatamente; Lazy carrega os dados sob demanda.
Hibernate: Vantagens e Desvantagens Vantagens: Simplifica o gerenciamento de transações, suporte a caching, HQL. Desvantagens: Overhead de performance, configuração complexa.
Qual a qualificação que pode atribuir a diferentes Beans dentro do Spring Boot? Utiliza-se as anotações @Primary, @Qualifier, @Profiler para definir qualificação e comportamento dos beans.
Cite um exemplo de gestão de exceções em Spring @ExceptionHandler, @ControllerAdvice para tratar exceções globalmente.
Qual a diferença entre SOAP e REST? SOAP é um protocolo mais complexo e pesado, utiliza exclusivamente .XML para troca de mensagens. REST é um estilo arquitetural mais simples e leve, baseado em HTTP e permite o uso de diversos formatos: JSON, XML, HTML.
Quais são as novidades do Java 8? Sreams, Lambda expression, Optional, Date/Time API, Default Methods.
Se você quer criar uma lista sem duplicações, qual você deveria usar? Use um Set como o HashSet.
Webservices: REST já usou? Sim para criar ATI Restful, com os métodos HTTP GET, POST, PUT e DELETE
Quais métodos REST você? Os métodos GET para leitura, POST para criação, PUT para atualização e DELETE para exclusão.
Qual a diferença entre POST e PUT? O método POST cria novos recursos e o PUT atuliza um recurso existente.
O que é SOLID? SOLID são cinco princípios de design orientado a objetos: Single Responsability, Open / Closed, Liskov Substitution, Interface Segregation, Dependency Inversion.
Qual a diferença entre classe e interface? A classe define atributos e comportamentos, já a Interface define um contrato de métodos sem implementação.
O que são Testes Unitários? São testes automatizados que verificam o comportamento de unidades de código, como métodos ou classes.
JWT é seguro? Porquê que não podemos guardar informação sensível lá? É seguro se assinado e criptografado corretamente, mas não deve armazenar informações sensíveis devido a possibilidade de vazamento em caso de compromentimento.
O que é imutabilidade? Dê exemplo? Como se cria um objeto imutável? Como Podemos garantir que um objeto possui um atributo que é um tipo mitável não seja modificado? Um objeto imutável não pode ter seu estado alterado após a criação. Exemplo: String em Java. Cria-se uma classe imutável tornando todos os campos final e não fornecendo métodos de modificação.
Qual a diferença entre uma interface e uma classe abstrata? A Interface define métodos sem implementação, permitindo múltiplas implementações. A classe abstrata pode ter implementações parciais e só pode ser herdada por uma classe.
O que são modificadores de acesso? quais os tipos e quais as diferenças entre eles? São palavras-chaves que definem a visibilidade de classes, membros(atributos e métodos) e construtores. Eles controlam quais partes do seu código pode ser acessar esses elementos. Public (acesso global), Protected (pacote e subclasses), Default(pacote), Private (dentro da classe).
Qual a diferença entre um objeto e uma classe? Uma classe é uma definição, um modelo ou blueprint de uma entidade. O objeto é a instância concreta da classe, um exemplar individual.
O que é sobrecarga e sobreescrita de métodos? A sobrecarga é a criação de múltiplos métodos com o mesmo nome dentro de uma mesma classe, mas com assinaturas diferentes (número ou tipo de parâmetros). A sobreescrita é redefinição do comportamento um método em uma subclasse, herdado de uma superclasse, com a mesma assinatura.
Qual a diferença entre um Set e um List? O Set não permite duplicatas e não garante a ordem de inserção. O List permite duplicatas e mantém a ordem de inserção.
Qual é mais performático, um ArrayList ou um LinkedList? Se for para adicionar muitos elementos e remover muitos elementos qual melhor para utilizar? O ArrayList é mais rápido para acessso aleatório. O LinkedList é mais eficiente para inserções e remoções frequentes.
Se forem adicionados dois objetos diferentes mas com hashs iguais em um Map, quantos elementos haverá no Map? Se forem diferentes, haverá dois elementos, se forem iguais (e .equals também), substituirá o valor existente.
Qual classe é a superclasse de todas as classes Java? A classe Object é a superclasse de todas as classes Java.
O que é uma função pura? É uma função que não tem efeitos colaterais e retorna o mesmo valor para os mesmo argumentos. Não modifica nenhum estado externo ao seu escopo.
Quantas vezes uma Java Streams pode ser consumida? Apenas uma vez.
Podemos sobrecarregar um método estático? Sim, podemos sobrecarregar, mas não podemos sobreescrever.
O que é uma Interface Funcional? É uma interface com um único método abstrato, usada para expressões lambda. Ex.: Runnable, Callable.
Java aceita herança múltipla? Não, não aceita herança múltipla de classes, mas permite múltiplas interfaces.
Como é feita a passagem de valores em Java? Para tipos primitivos o valor é copiado, para objetos a referência é copiada.
O que é uma exceção em Java? É um evento que interrompe o fluxo normal de um programa. Pode ser verificado (checked) ou não-verificado (unchecked)
Quais são as principais interfaces da estrutura de collection em java? Collection, Set, List, Map, Queue.
Quais são os tipos de objetos em java? Objetos por valor e por referência; Objetos mutáveis e imutáveis; Objetos de classe e interface; Objetos físicos ou lógicos.
O que é um componente em Angular? É uma unidade de construção da interface do usuário, contendo a lógica(js), a visualização (html) e o estilo (css).
O que são Live Cycle Hooks? São métodos que permitem interagir com diferentes fases do ciclo de vida de um componente, por exemplo: ngOnInit, ngOnChange, ngDestroy.
Um componente deve ser algo grande ou pequeno? Cobrir uma página inteira ou parte de uma página? Os componentes devem ser pequenos e focados em uma responsabilidade específica.
Componente tem que ter sempre parte visual? Não, um componente pode ser usado apenas para a lógica (sem template).
O que são Diretivas? São instruções DOM que estendem ou alteram o comportamento dos elementos e podem ser estruturais(ngIf, nfFor, ngSwitch) e não estruturais (ngClass, ngModule, ngStyle).
Qual a diferença entre Service e Component? O component lida com a visualização e a lógica relacionada a interface do usuário. O Service fornece lógica compartilhada e não tem dependência da UI.
Para que servem Pipes? Os pipes transformam dados na visualização, por exemplo: formatar datas, valores monetários. Ex.: {{ title | uppercase }}
Como os componentes podem comunicar entre si? Se quisesse passar dados de um componente pai para o filho, como faria? E ao contrário? Utiliza-se @Input para dados de pai para filho e o @Output com EventEmitter para o filho enviar dados ao pai.
Para que servem os Guards? São usados para proteger rotas, permitindo ou bloqueando o acesso com base na lógica definida.
O que é RxJs? É uma biblioteca para programação reativa, lidando com fluxos de eventos assíncronos.
Qual a diferença entre um Observable e Promise? E em que situações podemos usar? Observable pode lidar com múltiplos valores ao longo do tempo e permite cancelamento; Promise lida com um único valor e não pode ser cancelado.
O que é um Service e porquê utilizar? O Service é utilizado para encapsular lógica reutilizável e compartilhar dados entre componentes.
Se tivesse duas chamadas que estão dependentes uma da outra e precisa do resultado. Como fazer isso em Angular? Utiliza-se o operador swithMap ou encadeia Observables para fazer chamadas dependentes.
Como faria para estruturar camadas de uma aplicação em Angular? Aplicações em Angular geralmente são dividas em: Feature Module; Routing Module; Shared Module;
O que é acessibilidade em Frontend? É garantir que uma aplicação web seja utilizável por pessoas com deficiência.
Por que devemos usar async operator em RxJs? O operator async converte um Observable em dados que podem ser usados em um template Angular.
Qual a diferença entre Mixins e Function? Mixins e functions são mecanismos para compartilhar código em Angular, com propósitos distintos: Mixins: adicionam funcionalidades a componentes existentes, como um mix de propriedades e métodos. Function: são blocos de código reutilizáveis que realizam tarefas específicas, como cálculos ou formatações.
O que é um git hash e um git squash? O git hash é uma identificação única de um commit. O git squash combina múlttiplos commits em um único commit.
Para que serve o git branch? Git branch serve para gerenciar diferentes fluxos de desenvolvimentos.
O que o ngTemplate faz? É usado para criar modelos embutidos que não são renderizados até serem inseridos.
Qual a diferença entre class e interface no Angular? Uma classe pode conter implementação, enquanto a interface apenas define um contrato.
Poderia dar um exemplo de um módulo em Angular utilizado para chamar API REST? HttpClienteModule é usado para chamadas HTTP em Angular.
O que faz um map? O que manipulavas no map? O operador map transforma cada valor emitido por um Observable
Qual a diferença entre map e forEach? Map transforma uma coleção e retorna uma nova coleção; o forEach executa uma operação.
O map devevolve uma lista? O que devolve? Em Array.map sim, ele retorno um novo array. Em RxJs map, retorna um novo Observable.
Que Subjects usaste em Angular? BehaviorSubject, ReplaySubject, AsyncSubject para comunicação e gerenciamento de estado.
Quantas maneiras conheces dos Componentes comunicarem entre si? @Input/ @Output; Service, Subject, ChildView, EventEmitter.
O que é JDBC direto? JDBC é a API para conectar-se diretamente a um banco de dados e executar SQL.
O que é JPQL? Java Persistence Query Language é uma linguagem de consulta orientada a objetos usada no contexto de JPA.
Hibernate usa close connection? Com hibernate a conexão é fechada automaticamente, mas é importante garantir o fechamento correto usando session.close().
O que é injeção de dependência? É uma técnica onde um objeto recebe suas dependências de fontes externas, em vez de criá-las internamente.
Como tornar uma página mais rápida/performática? Através de minificação de arquivos, lazy loading de componentes, cache , otimização de images.
Qual a diferença entre Hibernate e JPA? O JPA para abstração e padronização, o Hibernate para funcionalidades avançadas.
O que é o Spring Boot Actuator? É um módulo que fornece endpoints para monitoramente e gestão de uma aplicação Spring Boot.
O que é MVC? É um padrão de design de software utilizado em POO e separa a aplicação em três camadas: Model: representa os dados da aplicação e a lógica de negócio. View: responsável pela apresentação dos dados ao usuário. Control: recebe as entradas do usuário, atualiza o modelo e comunica com a View para exbir o resultado.
Show full summary Hide full summary

Similar

Programação
Prepara Palhoça
Curso AlgaWorks - Angular, Rest,SpringBoot
Carlos Eduardo De Barros Souza
Oracle Certified Java Associate 7
Rafael Mulock
O.Objetos Java
Lorran Alves
JPA/Hibernate
Roberta Yaskarel
AngularJs 1.3.x
Wesley Lemos
Aula 05 - Biblioteca MapReduce
Ronaldo Pimentel
Projeto de Interface para Web
silviacunha.m
Java - Orientação a Objetos
Leandro Serra