Escolar Documentos
Profissional Documentos
Cultura Documentos
2021.1 |SANDB OX 3
conteúdo {
26 CSI: Case Structuring
Investigation
O trabalho de um designer mui-
tas vezes é digno de um verda-
deiro investigador...
06 42
⤷O manual completo para ⤷A importância da matemá-
assustar seus usuários tica para desenvolvedores
Para as que vezes em que maior
user need é levar um sustinho... 28 Para as que vezes em que maior
user need é levar um sustinho...
18 56
⤷Desmistificando o time de
desenvolvimento SCRUM
38 ⤷Design Patterns: o que
são e quais os benefcícios
Vamos explicar a sopa de letri- Mais sobre este tema tão impor-
nhas do Scrum. PO, PM, SM... ⤷ Criatividade: que tipo de tante para o design de software!
habilidade é essa?
20 Grand Central Dispatch De onde ela vem? Para onde ela
60 quem é o + queridinho?
Aprenda a gerenciar tarefas no vai quando eu preciso? Vamos A guerra de opinião entre Xibs,
código executadas em paralelo. entender hoje no... Sandbox! Storyboard e View Code!
4 S A N D B O X | 2 0 2 1 .1
Vacinaí
Nunca mais perca seu cartão de
vacinação, pois agora ele pode
ser digital!
2021.1 |SANDB OX 5
Design {
O manual completo para
assustar seus usuários
Texto Felipe
Edição Carolina
Design e ilustração Carolina
6 S A N D B O X | 2 0 2 1 ..1
1
O ritmo do terror E este ciclo se repete durante quer coisa que não funcione da
toda a experiência. Sempre com forma esperada.
O terror se baseia em criar essa tensão sendo construída Um exemplo clássico de
tensão até um pico quase in- de forma lenta até chegar em acontecimento que explora a
suportável, e então… BUM! um pico, com uma ação impor- estranheza é uma luz falhando.
Algo acontece! O monstro tante e logo em seguida, temos Esse não é o comportamento
aparece de repente, um gato um momento de relaxamento. esperado dela e isso significa
pula do arbusto, as luzes se E o que cria a tensão da cena que algo não está certo. Não
apagam. E logo em seguida é a utilização do desconheci- tendo conhecimento do que
temos um relaxamento. Pois do e do estranho. Tudo que pode está causando esse mal
não importa o quão assustador não temos conhecimento ou funcionamento, podemos ficar
seja o monstro que está agora controle nos ameaça em cer- com medo(ainda mais quando
na tela, nada vai superar os to nível, pois não sabemos se estamos vendo um filme de
momentos de suspense logo aquilo pode ou não nos matar. terror onde qualquer coisa pode
antes da sua aparição. Já o estranho se refere a qual- ser motivo de preocupação).
Os sentido do oret
Agora que já sabemos mais ou menos a es -
trutura da nossa cena de terror, é necessário
saber utilizar os estímulos sensoriais a nosso
favor, para tudo funcionar e podermos criar
verdadeiras cenas de tensão.
E, dependendo da mídia que você irá utilizar,
diferentes sentidos poderão ser explorados. Nos
filmes, por exemplo, nós só podemos explorar
dois sentidos: visão e audição. á J no caso de
jogos em consoles ou mobile, também temos
o tato trabalhando a nosso favor. A partir das
vibrações, ou feedbacks hápticos.
2021.1 |SANDB OX 7
Audição intercalam com respiração, passos e silêncio. Um
exemplo bom desse tipo de uso para construir
A audição é a grande responsável por criar tensão é observado no jogo Outlast, onde o
uma atmosfera carregada emocionalmente. personagem anda pelos corredores muitas vezes
Ela pode ser explorada, mais que a visão, para ouvindo apenas o som dos passos acompanhado
criar a sensação de insegurança e estranheza ao do som um pouco ofegante da respiração do
escutar sons como passos em uma casa vazia, personagem, uns gemidos, ranger de portas e
objetos caindo e outros que podem ser ótimos correntes se arrastando bem distantes.
para iniciar a construção da tensão. De acordo Agora que já temos uma base e uma tensão
com o trabalho de Daniel Blumstein na Universi- inicialmente construída, precisamos intensificar
dade da Califórnia (UCLA), existem semelhanças as coisas. Essa intensificação deve ser feita obri-
entre a gama de notas altas e baixas em filmes gatoriamente antes de algum evento importante
de terror e os sons que os animais produzem como a revelação do monstro, mas ela também
em situações em que estão expostos ao medo pode ser feita em momentos diversos para
ou ao ataque de predadores. Para falar sobre criarmos a falsa sensação de segurança. Essa
sons em peças de terror, primeiro precisamos intensificação pode ser feita com a adição de
entender que existem mais de uma categoria de uma cacofonia ou um ruído branco que se inten-
sons, estas são: trilha sonora, efeitos especiais, sifica, causando um desconforto e preparando
melodia e ruído. Cada um desses tipos de áudio o telespectador para o ápice. É interessante
tem suas funções e devem ser aplicados de que no momento mais intenso dessa ponte ao
acordo com o contexto da cena. Não faz senti- ápice seja utilizado um momento de silêncio,
do, por exemplo, em uma cena onde a tensão isso causa certa confusão no telespectador que
está começando a ser construída utilizar uma estava esperando um momento muito intenso.
trilha sonora agitada com diversos instrumentos Em Pânico(Scream) de 1996 quando Sidney se
tocando juntos em um ritmo acelerado e alto tranca em uma viatura e tenta utilizar o rádio
acompanhada de gritos. do carro mas o assassino a impede, vemos o
É interessante o uso de efeitos sonoros no momento ideal de utilizar uma trilha sonora
início da criação de tensão. Uma forma de agitada com diversos instrumentos tocando
uso eficaz dos mesmos é utiliza-los com uma juntos em um ritmo acelerado e alto acompa-
melodia baixa e calma ou com um ruído que se nhada de gritos, perfeito para o ápice.
8 S A N D B O X | 2 0 2 1 ..1
1
Visão explicação, após algum tempo forneça meios
que permitam o telespectador entender porque
Em relação ao visual podemos seguir duas aquilo aconteceu e assim ele se sentirá seguro.
abordagens dependendo do sentimento que Repita o processo, mas dessa vez mostre que a
queremos causar. Se for para construirmos ameaça é real e a partir dai qualquer sensação
tensão e abusar da imaginação do telespectador, de segurança será transformada em tensão.
utilizaremos algum material para atrapalhar a Se a intenção for causar repulsa, nojo, abo-
visão, retirando informações. Esse material pode minação e chocar, podemos mostrar cenas
ser sombras, névoas ou pode ser a informação extremamente violentas, com muito sangue,
de que o personagem do filme ou o personagem vísceras e restos mortais de humanos ou ani-
que você controla no jogo não pode ver os seus mais. Essa segunda forma de abordar a parte
monstros, pois eles são invisíveis. visual é conhecida como Gore. Geralmente ela
Dessa forma, o senso de ameaça está sempre é utilizada após a construção da tensão, no
presente e a tensão pode ser criada. Então em momento ápice.
uma frase, podemos dizer que a regra é “Não Essas duas formas de abordar a parte visual
mostre a ameaça real”, pelo menos não de inicio. do terror as vezes parecem ser antagônicas mas
Mude algo assim que o telespectador tenha se utilizadas de forma dosada e complementar,
visto, pode ser a hora de um relógio, uma pin- podemos explorar os diversos espectros do medo.
tura em um quadro ou até uma bola que estava
no ambiente e de repente some. Tudo isso faz
surgir dúvidas sobre o que está acontecendo,
é a sensação de estranheza sendo explorada
visualmente. Sobre não mostrar a ameaça real
de inicio, ela tem um momento em que deve ser
apresentada, pois se não mostrar o telespectador
se sentirá seguro e perderá o medo, percebendo
que não existe ameaça alguma.
Então a ideia é fazer o telespectador se sentir
seguro e depois retirar isso dele. Apresente ob-
jetos se comportando de maneira estranha sem
2021.1 |SANDB OX 9
Tato do jogo está segurando; ou servir de mais
um estímulo sensorial na hora do susto.
E além do audiovisual, algumas mídias Alguns dos melhores jogos para consoles
interativas, como jogos mobile e de con- e mobile utilizam desta técnica para tirar
soles, adicionam uma outra dimensão ao melhor proveito de mais um dos sentidos
terror utilizando um negocinho chamado humanos. É o caso de God of War que
haptic feedbacks ou respostas hapticas. Que desde os primeiros jogos da franquia faz
nada mais são que vibrações no controle ou o bom uso de vibrações do controle para
celular. Essa vibrações aprimoraram a ex- adicionar mais um feedback do que está
periência de interação com as interfaces na acontecendo ao jogador. Até em cinematics
tela. E são comumente utilizadas como mais a franquia faz uso dessa funcionalidade
uma forma de feedback após o efetuameuto para incrementar a imersão do persona-
de uma importante ação, por exemplo. gem. Já no lado do mobile, temos o Swipe
Mas, também podem ser utilizados para Casters que faz o celular vibrar cada vez que
construir tensão, imagine sentir o batimento passamos por um dos pontos do desenho
cardíaco de um animal que o personagem que precisamos formar.
10 SA N D B O X | 2 0 2 1.1
Memo
Pesquise e salve palavras em inglês e
deixe que o app te mostre diariamente
quais precisam ser revisadas
2021.1 |SAND B OX 1 1
código {
Casa inteligente com ESP e
Homekit
Texto Leonardo
Edição oJ sé Mateus
Design Carolina
Vamos começar por partes, primeiro o que pode ter seu aplicativo próprio com controles
é um ESP? É uma placa de desenvolvimento diferentes dos já oferecidos pela Apple.
e produção, que possui um microcontrolador Com tudo, esse sistema era fechado até o
com a capacidade de conexão WI-FI já inte- final de 2019, no qual a Apple liberou parte do
grada, sem necessidade de nenhum módulo HomeKit Accessory Development Kit (ADK),
externo para conectar com redes Wireless. que é o Firmware responsável por fazer a
O WI-FI é uma tecnologia de rede sem fio comunicação entre os sistemas embarcados
que permite que MacBooks, iPhones e ou- com o Framework do HomeKit. Esse ADK é
tros dispositivos, como o ESP se conectem disponibilizado integralmente por meio do
à internet e assim também permitido que Programa MFI. Ao participar do Programa
muitos dispositivos troquem informações MFI, você ontem especificações técnicas,
entre si, criando uma rede capaz de trocar componentes de hardware, ferramentas de
informações e assim podendo controlar o certificação e o que á de mais moderno em
ESP por meio do HomeKit. tecnologias Apple para que seja possível
E o que é o HomeKIt ? HomeKit é um fra- desenvolver e fabricar acessórios eletrônicos
mework desenvolvido pela Apple que torna que se conectem a produtos Apple, usando
seus dispositivos, como iPhone, Apple TV tecnologias licenciado. Com essa liberação
e Apple Watch, capazes de se comunicar de parte do ADK, qualquer pessoa pode de-
e controlarem acessórios na sua casa. O senvolver um dispositivo usando HomeKit,
framework permite desde usar a Siri para mas a comercialização é proibida.
controlar os acessórios, usando comandos É muito simples conectar um dispositivo
de voz nativo do sistema IOS. Também existe ao Apple HomeKit. Após configurar o dis-
a possibilidade de criar ações, nas quais é positivos smart no aplicativo proprietário,
possível definir horários de funcionamento você pode só entrar no Aplicativo Home e
de acessórios e controlar vários dispositivos escanear o QR Code e o seu dispositivo vai
com um único comando. A Apple possui ser adicionado. Quando se usa o ESP, a gente
um aplicativo próprio que é capaz de fazer já configura a rede WI-FI pelo firmware. Por-
o controle e configuração dos acessórios, o tanto ao ligar o ESP geralmente já aparece pra
aplicativo Home, todos devem tá cadastrados ser adicionado automaticamente, caso não,
e configurados nesse aplicativo, para que é só usar o código para adicionar no Home.
seja possível utilizar, mas cada fabricante
|SANDB
2021.1 |SAND B OX 1 3
histórias {
Letrando ABC: Alfabetização
com Realidade Aumentada
Texto e
K llyane, Lidiane,
Patricia e Ronaldo
Edição Beatriz
Ilustração oJ sé oJ ão em conjunto
com os assets do app
14 SA N D B O X | 2 0 2 1.1
senvolver a concentração, o raciocínio lógico momento de educação à distância.
e a colaboração entre as crianças, também As crianças de hoje não têm dificuldade em
incentivam a leitura e a escrita. utilizar a tecnologia e é relativamente fácil
A tecnologia pode ser usada para incentivar unir os mundos online e offline, o que pode
o aprendizado de forma lúdica, permitindo ser muito útil quando se trata do aprendizado.
estratégias mais atraentes e inovadoras por
parte dos educadores, trazendo certa au- O método sintético
tonomia na hora dos estudos para o aluno
e aproximando o universo acadêmico do Existem diferentes formas de alfabetizar
universo do estudante. e cada uma delas destaca um aspecto do
Nisto entra a Realidade Aumentada, que di- aprendizado. Dentre os diferentes métodos
ferente do que muitos pensam, não é o mesmo existentes atualmente, o Letrando aborda o
que realidade virtual. A Realidade Aumentada método sintético.
permite a interação entre o ambiente virtual O método sintético combina som e grafia,
e o mundo físico, fazendo com que estejamos oral e escrito através do aprendizado de cada
atentos ao mundo real, enquanto nossas pos- letra, sílaba e palavra individualmente.
sibilidades são expandidas. Essa tecnologia O método sintético pode ser dividido em
traz uma experiência diferente unida com a três tipos: Alfabético, fônico e silábico. No
sensação de imersão, o que é de grande ajuda alfabético, inicia-se com o aprendizado das
quando unido aos jogos educativos, fazendo letras para formar sílabas e em seguida as
com que durante o aprendizado, a criança palavras. No método fônico, o aprendizado
receba estímulos psicomotores através da leva em consideração o som das letras e
iteração com o ambiente. depois une sons de vogais e consoantes para
Durante o desenvolvimento, nossa proposta formar sílabas. Já o método silábico, parte do
também foi tornar acessível o aprendizado aprendizado das sílabas para formar palavras.
em qualquer ambiente. Com a realidade au- O Letrando aborda esse método ao apresentar
mentada, foi possível arquitetar um projeto para a criança as letras e fazer com que ela
em que a criança poderia usá-lo como fer- encontre no ambiente a letra correspondente. O
ramenta também em casa ou em ambientes aprendizado parte do reconhecimento da letra
diversos, ajudando pais e educadores neste através da sua forma. A letra é apresentada com
No Letrando o aprendizado
parte do reconhecimento da
letra através da sua forma e
da repetição, usando como
principal interface o ambiente
real por meio da Realidade
Aumentada
|SANDB
2021.1 |SAND B OX 1 5
seu respectivo som, fazendo com que a criança guiríamos ter um produto para entregar e ainda
possa relacionar o som com a letra. No jogo a entregá-lo a tempo, pois aquela funcionalidade
criança consegue formar uma palavra apenas era o nosso aplicativo, sem ela não existia o
identificando letras e no fim é apresentada a Letrando. Enquanto isso, tínhamos letras que
palavra formada com sua respectiva pronúncia. não apareciam, letras que apareciam mais
Esse aprendizado é feito de forma mecânica e a logo sumiam ou letras com um movimento
criança adquire vocabulário a partir da repetição. aleatório e inesperado.
O fato é que trabalhar com ambiente real
Colocando tudo em prática e perspectivas traz a necessidadede entender
alguns conceitos sobre posicionamentos e vi-
Até o momento, conseguimos ver com cla- são tridimensional. O que levou um tempo até
reza as funcionalidades e o objetivo do nosso acertarmos. Foram dias complicados, porém
aplicativo. No entanto, como faríamos para conseguimos implementar essa funcionalidade
implementar? a tempo de lançar uma primeira versão para
Umas das dificuldades foi encontrar uma o Testflight. Ele teve vários bugs reportados,
arquitetura que unisse os frameworks ARKit como por exemplo, erros de travamentos ao
e SceneKit, embora suas implementações não iniciar a tela de realidade aumentada, que nos
fossem tão difíceis, pois no ARKit conseguimos acompanhou até o lançamento do aplicativo.
mostrar elementos no ambiente com poucas Após o fim do challenge, resolvemos ten-
linhas de código. tar publicar na App Store. Ficamos ansiosos,
Mesmo com várias provas de conceito que porém tivemos um balde de água fria ao ter o
fizemos anteriormente sobre eles, foi diferente aplicativo rejeitado. O motivo era problemas
quando tivemos que implementar realmente no na declaração de privacidade do usuário e o
aplicativo. Um dos pontos chaves foi a tentativa fato de o aplicativo ter travado no momento
de fazer testes unitários de classes com estes da execução. Mas não desistimos! Fomos ao
componentes, pois algumas funções envolviam trabalho e buscamos o erro. Achamos que tí-
cálculos matemáticos de posições e isso preci- nhamos resolvido, mandamos uma nova versão,
sava ser testado. Conseguimos componentizar porém, novamente foi reprovado. Dessa vez, o
e testar classes de Scene, Plane e ARModel que erro era relacionado ao áudio e foi resolvido.
eram chamadas nas controllers necessárias. Então, depois de mais de um mês de trabalho,
Inicialmente, planejamos algumas tarefas, finalmente fomos recompensados com nosso
com foco na funcionalidade principal: a busca projeto na loja. E sim, foi uma sensação mara-
de letras no ambiente. Foi a tarefa mais longa e vilhosa de dever cumprido! Você pode conferir
complicada, porém isso era esperado. Durante na loja este projeto e contribuir conosco nos
muitos momentos pensamos que não conse- dando a sua opinião sobre ele.
16 SA N D B O X | 2 0 2 1.1
Cangaceira
Ajude Virgulina a atravessar sua
jornada em busca de justiça
para o seu povo
2021.1 |SAND B OX 1 7
2021.1 |SANDBOX 1 7
Processos {
Desmistificando o time de
desenvolvimento SCRUM
Texto Amanda
Edição Carolina e eK llyane
Illustração Felipe
Que a tecnologia tem avançado em ve- produtos e serviços inovadores. São autoge-
locidade vertiginosa todo mundo já sabe. renciáveis e multifuncionais, divididos em
Para acompanhar essas mudanças, surgiram áreas de conhecimento, e não departamentos.
dezenas de formas de criar e gerir projetos e Um time deve ser pequeno o suficiente para
times de desenvolvimento de software. Algu- se manter ágil e grande o suficiente para
mas empresas tinham vários departamentos completar um trabalho significativo dentro da
separados e um gerente de projetos com uma Sprint. Pode conter especialistas em design,
lista de requisitos fixos trazida do cliente e desenvolvedores, dev ops, QAs, o que for
uma entrega única a ser feita. Nada contra, necessário para completar o trabalho. PMs,
faz sentido para alguns projetos. Acontece POs e Scrum Masters não contam - a não ser
que projetos grandes demoravam, falhavam que eles botem a mão na massa.
e custavam muito. Aí veio o Scrum. “Não existe hierarquia de comando-con-
Essa ferramenta, que implementa a meto- trole. O comando é o objetivo do projeto e o
dologia Ágil foi muito difundida nos últimos controle é sutil”
tempos. É baseada em requisitos dinâmicos,
ciclos incrementais e pequenas entregas fre- Mas quem organiza isso?
quentes que geram feedbacks e valor para os
clientes. Faz todo sentido com a velocidade Esta parte fica com o Gerente de Projeto
que os requisitos mudam. (ou gestor ou Product Manager). É ele quem
permanece liderando e conduzindo a visão,
Como é organizado um time de estratégia e requisitos de um produto, fa-
desenvolvimento no Scrum? cilitando a comunicação interna do time e
externa com outras áreas da empresa. Por ter
O time de desenvolvimento é operacional: uma visão estratégica, essa pessoa organiza
a força tática que transforma tecnologia em o roadmap do projeto e traz ao time as de-
mandas e expectativas ligadas ao produto.
18 SA N D B O X | 2 0 2 1.1
Espera, esse não é o trabalho do PO? Essa pá de gente em cada projeto?
No Scrum, Product Owner é a pessoa que Lembra que a galera ágil é multifuncional?
assegura qualidade do produto e guia o time Nem sempre todas essas cargos estão presen-
de desenvolvimento para o caminho correto tes, mas suas funções sim. É comum o Product
para as partes interessadas (pessoas que estão Manager assumir o papel de Scrum Master, PO
pagando, conhecidos como stakeholders). ou os dois. Eles podem evoluir para gerente
Ela também tira dúvidas acerca do negócio de programa, cuidando de mais de um projeto
e auxilia o time a quebrar e priorizar requi- relacionado, e para gerente de portfólio, que
sitos para maximizar o valor das entregas, organiza e prioriza projetos e programas de
representando o cliente que nem sempre uma empresa. Muitas nomenclaturas mudam,
pode estar lá. mas a função básica das lideranças é viabilizar
as ferramentas e criar e um ambiente propício
E o tal do Scrum Master? para o time se organizar, colocar a mão na
massa e entregar resultados.
Essa pessoa é a guia do Scrum, que garante Não existe certo e errado em nenhuma
que a metodologia seja bem praticada e que metodologia que se preze. Cada projeto e cada
o time seja otimizado e ágil de verdade. Entre time descobre a cada iteração o que funciona
treinar a equipe Scrum, modificar o processo melhor para o próprio contexto. Logo, cabe a
e proteger o time, ela acompanha de perto essas pessoas, e somente a elas, definir o que
garantindo as boas práticas. deve ser feito para que a entrega seja realizada
com sucesso.
Resumindo
quem é quem:
Afinal, esse bando de sigla as vezes
pode ser bem confuso...
PM’s PO’s
Quem lidera e conduz a visão, es- a pessoa que assegura qualidade
tratégia e requisitos de um produto do produto e guia o time
Scrum Master
é a guia do Scrum, que garante que a
metodologia seja bem praticada
|SANDB
2021.1 |SAND B OX 1 9
código {
Grand Central Dispatch
Primeiro preciso introduzir dois temas que O que é Grand Central Dispatch (GCD)?
são de extrema importância para uma melhor
compreensão: Simultaneidade e Multithreading. GCD é a implementação da Apple da biblio-
A simultaneidade ocorre quando várias teca libdispatch da linguagem C. Seu objetivo
partes do seu programa são executadas ao é gerenciar tarefas que podem ser executados
mesmo tempo de forma lógica enquanto se em paralelo, dependendo da disponibilidade
comunicam entre si. de recursos.
Multithreading é uma técnica que usa a CPU Com o Grand Central Dispatch é mais fácil
do seu dispositivo para fornecer vários threads escrever código multithread, independente-
de execução simultânea. Threads podem ser mente da plataforma ou dispositivo em que seu
definidas como tarefas independentes dentro de aplicativo é executado. Ele gerencia um pool de
um mesmo processo que podem ser executadas threads compartilhados.
em paralelo ou de forma intercalada no tempo. Através dele, é possível adicionar blocos de
Existem duas principais maneiras pelas quais código ou itens de trabalho para serem des-
o iOS permite executar código de forma simultâ- pachados em filas e o mesmo decide em qual
nea: Grand Central Despatch (GCD) e Operations. thread executá-los. O thread usado para execu-
Nesse artigo irei abordar alguns conceitos do tar uma tarefa é controlado pelo próprio GCD,
GCD que servirão como pontapé inicial para que não pelo desenvolvedor.
você possa se aprofundar no tema futuramente.
20 SA N D B O X | 2 0 2 1.1
Os trechos de código são
separados em filas com
prioridades diferentes para
serem dispachados!
2021.1 |SANDB
2021.1 |SANDBOX
OX 2211
Fila de despacho Fila principal
DispatchQueue DispatchQueue.main
Uma fila de despacho é uma fila a qual o Quando você cria um aplicativo, o sistema
trabalho pode ser agendado para execução. cria automaticamente uma fila principal e a
Você envia unidades de trabalho para esta associa ao thread principal de seu aplicativo.
fila e o GCD as executará em uma ordem FIFO A fila principal é uma fila serial, logo se você
(First In, First Out), garantindo que a primeira executar tarefas de longa duração, ela pode
tarefa enviada seja a primeira iniciada. apresentar travamentos ou comportamentos
Existem dois tipos de filas de despacho, inesperados.
filas de despacho seriais (Serial queue) e Como regra todas as as atividades de interfa-
filas de despacho simultâneas (concurrent ce do usuário devem ser feitas no thread prin-
queue). Uma fila serial tem um único thread cipal, caso contrário, o usuário experimenta
associado a ela e permite que apenas uma atrasos no aplicativo. Por exemplo, se você faz
única tarefa seja executada a qualquer mo- uma chamada de rede para realizar login de
mento. Isso significa que, se duas tarefas um usuário e deseja leva-lo à próxima tela, a
são enviadas para uma fila serial, a segunda chamada de rede deve estar em um thread de
tarefa precisa esperar até que a execução da segundo plano, mas a transição do usuário para
primeira seja concluída para que ela seja a próxima tela deve estar no thread principal.
inicializada. Para executar código no thread principal o
Já as filas simultâneas são capazes de uti- GCD fornece o DispatchQueue.main.sync, e o
lizar tantos threads quanto os recursos do DispatchQueue.main.async. Quando chama-
sistema permitirem. Isso permite que várias mos o main.async o thread principal não será
tarefas sejam executadas ao mesmo tempo. bloqueado. Sua tarefa será executada em um
thread de segundo plano, e uma vez concluído
o thread principal é atualizado. No entanto, ao
chamar o main.sync, você corre o risco de o
thread principal ser bloqueado, pois ele precisa
esperar até que a tarefa seja executada.
22 SA
22 SANND OXX || 2200221.1
DBBO 1.1
Filas Globais Atributos de qualidade de serviço:
DispatchQueue.global
DispatchQoS.userInteractive
Uma fila global é uma fila simultânea que o Tarefas que tem a qualidade de serviço como
sistema operacional fornece para que o aplica- userInteractive são executadas na thread prin-
tivo execute tarefas com base na prioridade da cipal. As tarefas interativas do usuário têm a
tarefa. A prioridade de uma tarefa descreve a prioridade mais alta no sistema, sua execução
sua importância. é imediata. Use essa opção para animações,
A forma como configuramos a importância de tratamento de eventos ou atualizações na
uma tarefa é utilizando a Qualidade de Serviço, interface do usuário do seu aplicativo.
mais conhecida como QoS(Quality of Service).
O sistema operacional usa a QoS de uma fila DispatchQoS.userInitiated
para determinar quando o trabalho realizado
nessa fila é executado. A fila principal possui a Usado para executar tarefas iniciadas pelo
prioridade mais alta. usuário, para as quais ele está aguardando
Como o trabalho de prioridade mais alta é resultados. Por exemplo, carregar conteúdo
executado mais rapidamente e com mais re- de um email que deseja exibir para o usuário.
cursos do que o trabalho de prioridade mais
baixa, normalmente requer mais energia do que DispatchQoS.default
o trabalho de prioridade mais baixa. Especificar Classe de qualidade de serviço padrão, não
com precisão as classes de QoS adequadas para o possui uma prioridade especificada e não é
trabalho que seu aplicativo executa garante que necessário atribuí-la.
ele seja responsivo e economize energia.
Os atributos de qualidade de serviço, em ordem
DispatchQoS.utility
de prioridade, são:
Usado quando você tem tarefa que não im-
pedem o usuário de continuar de usar seu
aplicativo. Tarefas para as quais o usuário está
disposto a esperar e normalmente possuem
um indicador de progresso.
Tarefas como chamadas rede, cálculos, en-
trada e saída de dados podem ser feitas usando
essa classe.
DispatchQoS.background
Tarefas em segundo plano possuem a prio-
ridade mais baixa de todas as tarefas. Atribua
essa classe a tarefas ou filas de despacho que
você usa para realizar o trabalho enquanto
seu aplicativo está sendo executado em se-
gundo plano. Tarefas que duram muito tempo
e as quais o usuário não está diretamente
ciente como backups e sincronização de
servidores remotos.
DispatchQoS.unspecified
Essa classe representa a ausência de uma
classe de qualidade de serviço. Essa opção
existe para dar suporte a APIs legadas que
podem desativar a qualidade de serviço.
2021.1 |SANDB
2021.1 |SANDBOX
OX 2233
DispatchSemaphore
Em muitas aplicações, a requisição
a um determinado recurso é feita por
várias threads do mesmo processo. E
muitos recursos não podem ser aces-
sados por vários processos ao mesmo
tempo. Então, quando um processo A
requisitar um recurso e este recurso
estiver em posse de outro processo B,
o processo A deve esperar o processo
B liberar o recurso.
Para evitar que o processo em espera
fique consumindo processamento, o ma-
temático holandês E. Dijkstra foi criou
um mecanismo chamado semáforo.
O framework Dispatch tem uma classe
chamada DispatchSemaphore que im-
plementa o mecanismo do semáforo.
Iremos visualizar o funcionamento de
semáforo juntamente com a explanação
dessa classe.
Imagine várias crianças brincando
com bolas e um cesto (com capacidade
C) para guardar as bolas. As crianças
podem começar a brincar, já estando
na posse de uma bola, ou podem pegar
a bola no cesto. Elas passam um tem-
po T brincando e, quando terminam
de brincar, guardam a bola no cesto,
passando a descansar por um tempo
D. Depois retornam a brincar e, assim,
sucessivamente.
Para representar esse problema real
por meio de um software, teremos que
tratar problemas de sincronização,
que são:
1) Um deles é quando a criança vai
brincar, porém no cesto não existe bola.
Para tratar essa situação iremos ter um
semáforo chamado full que fará com que
a thread criança fique bloqueada quando
tentar brincar e o cesto estiver vazio.
2) O outro problema acontece quando
a criança termina de brincar e vai dei-
xar a bola no cesto, porém, o cesto já
atingiu a capacidade máxima de bolas.
A solução é criar outro semáforo cha-
mado empty que fará com que a thread
criança fique bloqueada quando tentar
colocar a bola no cesto cheio.
24 SA
24 SANND OXX || 2200221.1
DBBO 1.1
Agora, foquemos apenas na implementação Acima temos os trechos de código dos
da solução desses problemas: métodos pegaBola( ) e devolveBola( )
1) A classe Cesto implementará os métodos Sabemos que problemas do mundo real
pegaBola( ) e devolveBola( ), e são nesses podem ser tratados e simulados por meio de
métodos que ocorrem a manipulação dos um sistema computacional, porém, a lógica
dois semáforos explicados anteriormente, e os mecanismos que ficam invisíveis aos
sendo que os dois semáforos são atributos olhos do usuário desse sistema têm que
da classe. É importante ressaltar que existe ser muito bem planejados e estruturados.
um atributo que irá representar a quantidade Tudo isso para que o software forneça as
de bolas presentes no cesto, e esse atributo informações requisitas pelo usuário em
será modificado pelos método tiraBola( ) e tempo satisfatório. E com esse artigo você
colocaBola( ). teve uma introdução a alguns exemplos
da utilização do GCD, e possivelmente irá
2) A classe Criança terá acesso a classe Ces-
utilizar-lo para otimizar seus softwares
to, e ela implementará os métodos brinca( ) e
para as plataformas da Apple.
descansa( ).
2021.1 |SANDB
2021.1 |SANDBOX
OX 2255
Design {
CSI: Case Structuring
Investigation
Texto Amanda
Edição Kellyane
Ilustração David
26 SA
26 SANND OXX || 2200221.1
DBBO 1.1
2. Registro e coleta de
evidências
Mostre os vestígios que você coletou
para resolver o desafio. Descreva as eta-
pas do seu trabalho e quais entregáveis
fizeram parte dela. Por exemplo:
Contexto: Percepções importantes vin-
das da pesquisa (desk research, pesquisa
quantitativa), análise de concorrentes
(benchmark);
Usuários: Definir e justificar o publico-
-alvo, personas, user journey map, jobs
to be done e ferramentas para ajudar a
entender o seu público.
3. Análises laboratoriais
das evidências
Hora de analisar o corpo… do trabalho.
A partir dos primeiros vestígios, evidencie
as pistas que você seguiu e formas que
usou para desvendar o mistério. Etapas
que podem entrar:
Validação: Matriz CSD, pesquisa qua-
litativa e formas de validar a solução;
Desafio: A hipótese definida e forma de
validá-la. Pode ser acompanhada de um
value proposition canvas e outros canvas
de negócio, e métricas para acompanha-
mento do projeto;
Solução: Ideação: Crazy eight’s, protó-
tipos de baixa e média fidelidade, valida-
ções a partir de testes de usabilidade, De-
sign System e outros entregáveis visuais.
4. Conclusão
Por fim, mostre os resultados! Informe
o que deu certo, o que deu errado, e se
no fim das contas o crime, ou melhor,
o desafio, foi desvendado. Aqui entram:
Testes: Resultados dos testes do MVP,
Vale lembrar que diferente da perí- sejam dos protótipos ou versão desen-
cia, nenhuma solução única funciona volvida. Defina o que quer medir, como
para estudos de caso e design. Tudo e o resumo dos resultados e principais
depende de você, do seu projeto e do insights.
tipo de trabalho que realiza. Projete Conclusão: Suas percepções, reflexões
seus estudos de caso com o público e próximos passos.
alvo em mente, descreva-os detalha-
damente e será um sucesso!
2021.1 |SANDB
2021.1 |SANDBOX
OX 2277
histórias {
LISS: Um espaço seguro para
a aprendizagem de inovação
Fazemos parte de um projeto de educação para mudanças coletivas? É com este intuito que
que cultiva um novo modelo de aprendizagem, construímos o Learning Innovation Safe Space
visando formar jovens graduandos para um (LISS). Um ambiente de aprendizagem para
mercado de trabalho cada vez mais competitivo inovação que promove segurança emocional
e demandante na área de desenvolvimento de e colaboração para que todos possam se sentir
software mobile. Desde o início, sabíamos que confiantes ao enfrentar desafios. Sabemos que
era preciso não apenas preparar esses estudan- não é tão fácil aplicar modelos de educação que
tes para serem mão de obra qualificada, mas desenvolvam habilidades socioemocionais.
também para serem pessoas autônomas e pro- Por isso, o LISS é um novo ambiente que dá
tagonistas das suas trajetórias. O que fazemos suporte à formação de inovadores, que valoriza
na prática é formar inovadores, ou seja, pessoas a cooperação e o reconhecimento das potên-
proativas e ousadas, capazes de transformar cias individuais para formar protagonistas que
com pensamento crítico e criatividade qualquer implementam mudanças positivas nos espaços
ambiente onde venham a trabalhar, ou quem em que estão inseridos.
sabe, utilizar essas habilidades para a fundação Um ambiente como este deve estimular o
de seu próprio negócio. Esperamos formar desenvolvimento de habilidades alinhadas aos
estudantes que sejam capazes de encontrar modelos de educação para o século 21. Esse
oportunidades de impactar de forma positiva a modelo de aprendizagem envolve pensamento
sociedade, propor soluções inovadoras, engajar crítico, comunicação e cuidados emocionais
outras pessoas nessa iniciativa, comunicar e que são necessários para se posicionar em
co-construir estas soluções junto com um time um mundo cada vez mais dinâmico, diverso,
plural e diverso. Nosso propósito é transformar competitivo e colaborativo. Pensar em uma
e multiplicar transformadores para inovação. formação inserida em um contexto de constante
A formação para a inovação necessita de mudança, incertezas e novas oportunidades, faz
modelos de aprendizagem que precisam se com que a aplicação de métodos e ferramen-
alinhar ao mundo em que vivemos, cada vez tas não sejam suficientes. Precisamos de um
mais dinâmico, colaborativo e transdisciplinar. espaço seguro para fomentar novos modelos
Imagine se pudéssemos vivenciar um ambiente de educação. Por isso, acreditamos no que Sara
de aprendizagem seguro onde seus participan- Hallerman, Colon Lewis e Brad Dresbach afir-
tes possam aprender a inovar, experimentar mam como compromissos de uma educação
desafios e utilizar a tecnologia como ferramenta para o século 21:
28 SA
28 SANND OXX || 2200221.1
DBBO 1.1
“ O papel dos educadores no sé-
culo XXI deveria ser ajudar cada
Como podemos ver, o aprendizado de habilidades
para inovação tem um papel central na educação
para o século 21. Juntamente com carreira e vida
estudante a aprender a aprender. profissional e domínio de mídia e tecnologia, tudo
É inspirador de criatividade, enco- isso complementando elementos tradicionais da
educação como currículo e avaliação. Na nossa
rajando a colaboração, esperando visão isto vai ainda mais além, todo o conjunto de
e recompensando o pensamento aprendizado promove a formação de pessoas mais
crítico, e ensinando às crianças não inovadoras, que estão constantemente aprendendo a
aprender, e o ambiente de aprendizado deve abraçar
só como comunicar, mas também tudo isso. Estas habilidades são fundamentais para a
o poder de uma comunicação efi- adaptação e crescimento em um ambiente de traba-
lho moderno. Além disso, o aprendizado orientado
caz. Estas são competências que os à inovação apresenta mudanças importantes para
estudantes precisam de desenvolver quem está envolvido no ambiente educacional: es-
para prosperar no local de trabalho tudantes, mentores e gestores. A mudança principal
é a saída de um paradigma de replicação do que um
dinâmico de hoje e de amanhã.” mentor já sabe para outro de criação, combinação,
2021.1 |SANDB OX 2 9
busca e aplicação de conhecimentos que vão além suas próprias conquistas pessoais. Atitudes que
daqueles dominados pelos mentores. estão relacionadas aos 4Cs para enfrentar proble-
O aprendizado de inovação é multidimensional, mas coletivamente. Assim, a proposta de romper
onde profissionais são formados e desenvolvem com as abordagens tradicionais de educação
quatro habilidades principais ou 4Cs. Primeiro a que possuem uma visão mecanicista da prática
Criatividade para se pensar fora da caixa e criar educacional e são voltadas para a reprodução do
soluções diferenciadas para necessidades rele- conhecimento, faz com que estudantes e mentores
vantes em projetos e ações; pensamento Crítico tenham que aprender a exercer um papel mais
para se analisar alternativas, diversificar e evoluir ativo, se permitindo criar, explorar e construir
sempre; Comunicação que nos faz escutar ati- seu próprio aprendizado.
vamente e entender melhor as outras pessoas, No entanto, o fomento e a manutenção de
e também compartilhar de forma efetiva nossas um ambiente educacional que promova essa
ideias e impressões; e finalmente, mas não menos aprendizagem ativa, crítica, criativa e autônoma é
importante, Colaboração que permite fortalecer repleta de desafios, sendo um dos mais frequentes
potências, competências e motivações coletivas e importantes o fenômeno do impostor. Uma
tão maravilhosas quanto diversas para que juntos questão onde as pessoas se sentem inseguras em
aprendamos a impactar positivamente a nossa relação à sua competência, uma vez que atribuem
sociedade. Os 4Cs nos fazem pensar em uma o seu sucesso a outros fatores, como a sorte.
educação holística e transdisciplinar. Ou seja, uma Isso impacta fortemente o desenvolvimento do
educação que não reduza os estudantes apenas conhecimento dos estudantes.
aos conhecimentos técnicos que precisam adquirir Na nossa experiência em educação, este fenô-
para o mercado de trabalho. meno é ampliado quando existem estudantes de
É por entender a complexidade de cada indiví- vários cursos trabalhando juntos, pois há pessoas
duo e o potencial de sua trajetória que cultivamos com domínios de conhecimento diversos. Por
uma educação transformadora e alinhada com a exemplo, em uma equipe transdisciplinar com
formação para o século 21. Mas o que queremos designers, programadores e estudantes de outros
dizer com isso? Transformar é inquietar, tirar cursos, como o de cinema, pode haver um au-
da zona de conforto. É conduzir os estudantes mento de insegurança e comparações, por conta
e todos que compõem o ambiente educacional da diversidade de competências e conhecimentos.
para serem agentes ativos na construção de seus Esse fenômeno pode impactar negativamente a
conhecimentos e se apropriarem desse processo maneira que a pessoa lida com desafios e situa-
como fruto da colaboração, fomentando a diver- ções vivenciadas no ambiente de aprendizagem,
sidade e cuidado em comunidade. Acreditamos uma vez que ela não se sente capaz de realizar as
em um ensino baseado em paixões, propósitos e atividades de uma maneira tida como satisfatória
desafios individuais e coletivos. Mas para que isso para ela que está sempre se comparando com
aconteça é necessário compreender os obstáculos os outros. Essa falta de reconhecimento do seu
para o desenvolvimento de um ambiente seguro potencial é prejudicial também para a experimen-
baseado nessas motivações, que ocorrem quando tação e a aprendizagem de coisas novas, dado
os estudantes se apropriam de seus aprendizados. que o medo de falhar pode lhe paralisar frente a
novos desafios e até resultar em autossabotagem.
Por que nutrir um ambiente segu- Esse problema atinge não só o estudante como
também a sua equipe e mentores, constituindo
ro para o aprendizado de inovação? um obstáculo para a evolução do projeto e para
o desenvolvimento de todos.
Ao construir uma educação pautada na promo- A falta de reconhecimento e valorização de
ção da ousadia e a constante busca pela supera- conquistas pessoais impacta também outros de-
ção de desafios, surgem novas necessidades de safios como o desenvolvimento da autonomia.
ambientes de ensino-aprendizagem e com elas Por um lado, a autonomia faz com que o processo
novas dificuldades. Dado o propósito de multi- de aprendizagem se alinhe com as curiosidades,
plicar transformadores, as aulas e as atividades paixões e propósitos do estudante, contribuindo
educativas precisam enxergar o estudante de para a construção de uma trajetória própria. Por
forma holística, incluindo também um plano outro lado, há o peso de realizar escolhas e guiar a
para o desenvolvimento de habilidades intra e sua aprendizagem, o que pode ocasionar em um
interpessoais e atitudes como a valorização das
30 SA N D B O X | 2 0 2 1.1
aumento de ansiedade e insegurança, atingindo dizagem promova suporte material e social, como
também os mentores. Como consequência dessa a segurança emocional e também a confiança para
ansiedade e insegurança surgem dúvidas, por que todos possam ousar sem grandes impactos
exemplo: como desenvolver a autonomia dos emocionais. Mas mais do que isso, é preciso
estudantes compreendendo o limite de suporte sempre mobilizar todos para a busca de forma
que deve ser ofertado? Como conseguir que os coletiva da resolução dos seus próprios desafios
estudantes estabeleçam objetivos de aprendiza- para ousar e co-criar. É exatamente isso que o
gem que incluam também seus desejos e não só LISS se propõe a apoiar, por meio da estruturação
as necessidades dos projetos? Além disso, como de um ambiente que atenda a essas necessidades
dar suporte para que os estudantes permaneçam e anseios.
fora da zona de conforto, mas ao mesmo tempo
seguros e confiantes em se desafiarem? Como o LISS constrói um Safe Spa-
Todas essas dúvidas e problemas revelam que
uma educação voltada para o desenvolvimen- ce para o aprendizado de inovação?
to de habilidades para o século 21, que propõe
uma visão totalizadora, é repleta de desafios que A maneira como o LISS é fomentado para trans-
afetam a todos. Isso torna relevante direcionar formar pessoas em potenciais inovadores não
formação do estudante em seus diversos âmbitos existiria sem o alicerce de um espaço seguro
alinhada às necessidades do seu contexto. Como em que os estudantes possam se desenvolver.
nos mostra Bolzani (2015), a educação holística Nesse sentido, para pensarmos sobre o LISS é
enxerga o aluno como sujeito autônomo, crítico, importante discutir sobretudo o que é um Safe
participativo e transformador da sociedade. Ele Space. Existem várias definições e também cui-
é entendido como um sujeito único, repleto de dados que precisam ser tomados quando se fala
inteligências, capaz de inovar e de questionar. de safe spaces. Um safe space é um espaço de
A complexidade de lidar com os estudantes em construção coletiva. Ele depende fortemente do
sua totalidade faz com que haja a necessidade da engajamento das pessoas. Não é algo que basta
construção de ambientes educacionais acolhedo- ser declarado e está construído, ou seja, o Safe
res e promotores de colaboração. Space se concretiza na experiência das pessoas,
Assim, é fundamental que o ambiente de apren- não podendo ser decretado.
2021.1 |SANDB OX 3 1
Portanto, ao desenvolver um Safe Space en-
tendemos que é preciso constituir práticas e
experimentações constantes que, naturalmente,
garantem erros e acertos no processo, visto que
a diversidade de ideias e pontos de vista tornam
a sensação de pertencimento a um espaço
seguro distinta. Entende-se o Safe Space como
um ambiente que é nutrido constantemente de
práticas que fortalecem a segurança emocional
e o bem-estar coletivo dos envolvidos, onde
as pessoas são observadoras ativas de suas
necessidades e potencialidades. Além disso,
estudiosos da área como Holley e Steiner (2005)
pontuam que um Safe Space encoraja a partici-
pação e o compartilhamento honesto de ideias,
bem como gera um clima que permite que os
estudantes se sintam seguros o suficiente para
tomar riscos, expressar seus pontos de vista e
compartilhar e explorar seus conhecimentos,
atitudes e comportamentos. Assim, um Safe
Space promove um ambiente que estimula o
processo de autodescoberta, em outras pala-
vras, o processo de reconhecimento das suas
motivações, posicionamentos e desejos. É por
meio da reflexão crítica dos estudantes sobre a
sua trajetória pessoal que um Safe Space atua
no fortalecimento da autonomia dos estudantes.
Mas como falamos anteriormente, o proces-
so de ser mais autônomo, seguindo as suas
motivações e necessidades no aprendizado,
gera inseguranças que afetam o emocional
dos estudantes e mentores. É por isso que um
ambiente de aprendizagem para inovação deve
também fornecer segurança emocional.
Apesar dos benefícios que um Safe Space pode
proporcionar, também há críticas ao modelo.
As principais delas são que quando se imple-
menta um Safe Space leva ao cerceamento da
liberdade de expressão e um patrulhamento
de comportamentos e conversas para prevenir
“mesmo
micro agressões. Existe a preocupação de que
o Safe Space encoraje a formação de grupos de Se sentir seguro não é o
estudantes que se isolem de discussões sobre
questões que podem tirá-los de sua zona de
que se sentir confor-
conforto. Contudo, quando se trata de apren- tável. Para crescer e aprender,
dizagem, são envolvidos processos que natu- estudantes devem com frequ-
ralmente necessitam que estudantes saiam de
sua zona de conforto. Lidar com a pluralidade e ência confrontar questões que
o desconhecido não é fácil, mas um Safe Space trazem desconforto e que for-
não deve ser entendido como um ambiente
no qual não há conflitos e desconfortos como çam a enfrentar suas crenças
pontuado por Boostrom (1998): e questionar quem são.”
32 SA
32 SANND OXX || 2200221.1
DBBO 1.1
Assim, em um Safe Space, sempre em constante apren- aprende a experimentar, en-
alunos e mentores devem se dizado e que conflitos fazem frentar desafios e transformar
orientar a gerenciar confli- parte de um processo de au- comunidades com colaboração
tos e não proibi-los. Um am- tonomia, ousadia e liberdade e criatividade. Esse ambiente
biente seguro deve promover de expressão na construção permite que as pessoas en-
discussões que envolvam a do aprendizado. Agora que volvidas recebam apoio e se
escuta ativa e a reflexão crí- entendemos o que é um Safe sintam mais confiantes para
tica sobre diversos pontos de Space vamos conhecer o LISS. traçar a sua própria jornada de
vista. O Safe Space é e deve aprendizagem. Além disso, é
ser um espaço de posições um ambiente que faz com que
divergentes, mas ao mesmo Afinal, que é um LISS? os ganhos de experimentação
tempo ser um espaço no qual e saída da zona de conforto se-
as pessoas sintam-se protegi- Podemos dizer que o LISS é jam maiores que possíveis des-
das para dialogar de maneira um ambiente seguro voltado confortos e impactos negativos,
respeitosa e aberta, e aplicar para a aprendizagem à ino- resultando em pessoas mais
de forma colaborativa essas vação. Mais especificamente, engajadas em se desenvolver
divergências para construir é um ambiente que promo- e transformar o seu entorno.
conhecimentos e soluções ve a segurança emocional e Em nossa perspectiva um LISS
diferenciadas. É importante autonomia para se auto-des- pode ser retratado como na
o entendimento que estamos cobrir na medida em que se imagem abaixo.
Podemos ir ainda mais além. ambiente para uma comuni- plementação de mudanças nos
Para inovar no atual contexto dade cada vez mais autônoma espaços em que estão inseridos.
histórico e social é necessário, e engajada em desafios, onde Profissionais com consciência
além do aprendizado de com- as pessoas se tornem prota- da sua trajetória profissional,
petências técnicas, o ganho de gonistas do seu aprendizado e que valorizam a cooperação,
habilidades pessoais e inter- busquem ativamente o desen- que reconhecem o potencial
pessoais, como explicitamos volvimento pessoal e coletivo de se trabalhar em equipe e
anteriormente. Pensando nisso, é o que constitui um espaço que valorizem o cuidado com
o LISS propõe 8 categorias de seguro para aprendizado de a comunidade e o acolhimento
desenvolvimento individual e inovação. Somos responsáveis da diversidade.
coletivo, sendo elas: Autodesco- por um processo de transfor- Dessa forma, nós que cons-
berta, Autodesafio, Pensamento mação individual e coletiva, truímos o LISS diariamente,
Crítico, Comunicação, Divergir de transformações constantes sentimos que fazemos parte
e Colaborar, Cuidados Emocio- e de aplicação efetiva da edu- de uma experiência de edu-
nais, Liberdade de Expressão e cação para inovação. Vemos o cação e de um ambiente co-
Criatividade. Podemos ver de Learning Innovation Safe Space munitário especial. Contudo,
forma mais detalhada o que como o ambiente para práticas tínhamos muita dificuldade em
cada categoria significa nas em inovação com o intuito de definir esse ambiente. Faláva-
próximas páginas. formar profissionais capazes mos muito de Safe Space, mas
Assim, percebemos que es- de exercer impacto positivo no não sabíamos exatamente o
timular a construção de um seu entorno e liderança na im- que era isso. Também tínha-
2021.1 |SANDB OX 3 3
mos consciência de que faze- os conceitos que a gente pro- que já fazemos parte de um
mos parte de um Safe Space para pôs. Passamos horas não só LISS em desenvolvimento, que
uma educação diferenciada, um escrevendo mas discutindo e constantemente passa por vários
ambiente com um propósito de debatendo, e colocando nossas desafios para mentores e estu-
formar transformadores. Assim, opiniões e visões, muitas vezes dantes enfrentarem. Iremos dar
procuramos dar a nossa versão divergentes e é claro também se exemplos do que para nós são
do que é um LISS porque não divertindo. Foi uma experiência evidências de que nosso ambien-
só acreditamos nesse conceito, de auto-descoberta para nós e te é tão importante para quem o
como temos a convicção de que, que queremos compartilhar com compõe e o porquê suas práticas
apesar dos desafios, estamos vocês. Queremos que esse artigo se encaminham para o alinha-
vivenciando algo que caminha inspire, gere debates e questio- mento das características de um
na direção de um Learning In- namentos, reflexões e ações para espaço seguro para a aprendiza-
novation Safe Space, um espaço o começo de uma jornada de gem de inovação. Queremos ou-
seguro para o aprendizado em evolução contínua de um LISS vir suas contribuições, fomentar
inovação. Quando refletimos para todos. reflexões para possamos pensar
durante a escrita deste artigo Na próxima edição iremos juntos e transformar o nosso
nos identificamos muito com compartilhar a nossa visão de ambiente de aprendizagem.
34 SA N D B O X | 2 0 2 1.1
Pantry
Sua nova forma de organizar sua
despensa doméstica
2021.1 |SANDB OX 3 5
Código {
Testes unitários x Singleton
Texto Ronaldo
Edição Beatriz
Ilustração o
J sé o
J ão
O padrão de projeto Singleton é uma ver- o código. Além disso, ele é de suma impor-
dadeira fonte de conflitos no desenvolvimen- tância em projetos de longo prazo. Os testes
to de softwares, há quem ame e há quem agilizam a refatoração de classes e funções,
odeie. Ele é um padrão de projeto criacional pois possibilitam a constante verificação se
que gera um objeto com seu acesso compar- tal classe alterada ainda funciona da forma
tilhado durante toda a aplicação. Ou seja, esperada.
cada classe que usa esse objeto tem acesso a Para se ter bons testes unitários, eles devem
mesma unidade de memória em simultâneo. seguir algumas regras. A principal regra é
Isso te lembra algo? Variáveis globais! Esta que testes devem ser isolados. Ou seja, cada
característica tem suas vantagens, como o método deve ser testado isoladamente. De-
fato de não precisarmos nos preocupar com vido a isso, testes garantem uma segurança
instanciação, configuração de parâmetros e que o metodo funciona da forma correta
veracidade do objeto. e esperada. E é exatamente neste quesito
Em geral, o padrão Singleton é a solução de independência que as classes singleton
mais fácil e rápida. Tudo já vem incluso no atrapalham os testes. Pelo fato do singleton
singleton, pronto para uso. Incrivelmente ele ter uma instância compartilhada, a criação
se torna ruim pelos mesmos motivos. Pri- de testes isolados é complicada. Fica difícil
meiramente, ele viola o princípio da respon- aplicar os testes de forma aleatória, pois como
sabilidade única, pois sua classe apresenta a instância é a mesma, qualquer mudança
duas responsabilidades: criar a instância e na classe interfere nos outros testes. Além
devolver o objeto. Também deixa o código disso, tira a possibilidade de usar mocks de
acoplado a classe singleton, dificultando a classes. Mocks são dependências criadas
customização dela. Ele não permitir uma especialmente para os testes que visam si-
maleabilidade da classe, logo este padrão mular algum comportamento específico de
dificulta a criação de testes unitários. classe. Os mocks são uma saída útil em testes,
Testes unitários são a base de um bom para simular um comportamento específico
código. É a forma de garantir confiabilidade de uma classe. Porém, caso a classe seja
para nossas aplicações em todas as possíveis singleton, não temos como usar de mocks
alternativas cobertas pelo teste. Com a criação e polimorfismo, pois o construtor é privado
de testes unitários é possível descobrir bugs, e único, impossibilitando criação de classes
confirmar comportamentos e documentar customizadas.
36 SA
36 SANND OXX || 2200221.1
DBBO 1.1
Mesmo com esses problemas, podemos O desenvolvedor pode utilizar outras so-
pensar em possíveis soluções que nos permi- luções ao invés do Singleton. A injeção de
tam testar classes singleton. A mais comum é dependência surge como uma delas, pois
usar os métodos padrões de testes, chamados permite uma customização da classe. Este
no início e fim de cada rodada de teste. Em pattern se torna ótimo para testes, pois é
Swift, esses métodos são setUp(Início) e tear- possível injetar classes mocks e com isso
Down(final). Ao usá-los, podemos instanciar realizar testes mais randômicos, específicos
um objeto da classe singleton como variável e isolados. Para problemas mais complexos,
da classe de teste e inicializar e anular ela podemos pensar no Factory Pattern.
a cada ciclo de testes, sempre voltando ao Factory pattern é um padrão de projeto
estado base da classe. Dessa forma, todos os criacional que cria um objeto em pequenos
métodos de testes usam este mesmo objeto. passos e assim construir um objeto maior
Isto resolve o problema em parte. O certo é e mais complexo. Ele pode ser dividido
que cada método de teste tenha todo o pro- em dois patterns bem similares, o Factory
cesso de configuração do objeto nele mesmo, Method e Abstract Factory. Como sua base
garantindo assim sua independência. Além de criação é através de protocolos, sua im-
disso, caso a classe singleton envolva elemen- plementação se torna abstrata e de fácil
tos de save e load, pode ser necessária uma realização de testes, pois mais uma vez
pré-configuração maior antes de cada teste, podemos usar o conceito de mocks para
tornando ele muito complexo e demorado. criar diferentes objetos e testar diferentes
possibilidades.
Por fim, não podemos demonizar o Single-
ton. Ele tem sim, suas utilidades! Linguagens
de programação possuem frameworks que
utilizam ele, como o Core Data em Swift que
fornece um singleton para seu acesso. Sin-
gleton é útil em classes que não queremos
em múltiplos contextos. Porém, para outros
problemas, vale a pena gastar um pouco
mais de tempo pensando em soluções mais
elaboradas e principalmente que ajudem na
realização de testes unitários.
2021.1 |SANDB
2021.1 |SANDBOX
OX 3377
Processos {
C r i a t i v i d a d e que tipo
de habilidade é essa?
Texto o
J sé o
J ão
oãEdiç Brena
tusIl oãçra o
J sé o
J ão
Quantas vezes na
sua vida você se deparou
com: “não sou criativo o su-
ficiente”, “não tenho criatividade
para resolver este problema”, “estou com
bloqueio criativo” ou “não consigo fazer uma
região específica do cérebro e de uma condição
solução criativa”? A ideia desse texto é te ajudar
específica para o seu uso. São elas:
a solucionar essas questões de maneira criativa.
Deliberativo-cognitvo: Caracterizada pela
Exatamente. Resolver problemas de criatividade
união de informações já existentes no cére-
com criatividade.
bro com informações que estão chegando. É a
É extremamente comum que as pessoas ve-
criatividade mais pragmática e baseada em um
jam a criatividade como um dom. E essa vai
conhecimento massivo de alguma área.
ser minha primeira dica: pense na criatividade
Deliberativo-emocional: Caracterizada pela
como uma skill, uma habilidade. Mas não uma
união das informações já existentes no cérebro
skill que nasce com você e aparece quando
com as próprias emoções do indivíduo. No fim, é
quer, e sim uma skill que pode ser treinada e
uma criatividade menos lógica e mais subjetiva.
aperfeiçoada. Deixa eu tentar te explicar de um
Espontâneo-cognitivo: Caracterizada por apa-
jeito mais técnico.
recer em momentos de relaxamento e descanso.
O Professor de neurociência cognitiva Arne
É aquela solução que surge no meio do banho
Dietrich possui uma teoria de que o ser humano
ou no meio de uma caminhada.
possui quatro tipos diferentes de criatividade
Espontâneo-emocional: Caracterizada es-
e cada tipo de criatividade depende de uma
pecialmente por momentos de epifania. Possui
38 SA
38 SANND OXX || 2200221.1
DBBO 1.1
ligação profunda com o lado conexões inu-
emocional e não precisa do con- sitadas e a pensar
teúdo cognitivo para ser ativada. de maneiras diferentes
Baseado nessa teoria, podemos então tra- a respeito das novas informações
balhar nosso cérebro para alcançar as criativi- que estão chegando. Dessa maneira, você
dades deliberativas com mais frequência. Pois estará trabalhando bem as suas criatividades
elas irão depender dos seus conhecimentos e deliberativas.
experiências emocionais já adquiridos. Agora Mas e como trabalhar nossas criatividades
faz um checkpoint mental com essa informa- espontâneas? Afinal, são espontâneas. Então
ção. Vamo ver outra teoria. vamos lá, quantas vezes você conseguiu
Segundo a pesquisa liderada por Roger Beaty, pensar em uma resposta ótima para dar em
especialista em neurociência cognitiva pela uma discussão durante o banho? Ou quantas
Universidade Harvard, pessoas que possuem vezes você descobriu a solução de um desafio,
ideias originais e criativas no seu dia a dia, seja de um jogo, seja de um código quando
possuem o cérebro diferente das outras. Isso estava apenas caminhando na rua?
porque essas pessoas possuem padrões di- As relações dessas e de tantas outras si-
ferentes em suas conexões neurais. Ou seja, tuações semelhantes é que nelas estamos
sabendo que o fluxo das suas conexões neurais em momentos de descanso. E essa é minha
dependem dos seus conhecimentos prévios, terceira dica: Descanse. E por que? É com-
podemos concluir que quanto mais informa- provado que quando o lobo temporal direito
ções um indivíduo consegue coletar ao longo tem mais atividade que o lobo frontal, o ins-
da sua vida, maiores as chances de surgirem consciente toma conta e a ideia nasce. E para
ideias inusitadas e únicas. o lobo frontal descansar apenas: descanse.
Então, com isso, aqui vai minha segunda Quando o estresse ou cansaço tomar conta?
dica: consuma o máximo de culturas e conte- Se levante, ande um pouco, tome uma água
údos diferentes da sua realidade. Todos esses e tente descansar.
conhecimentos adquiridos vão te ajudar a criar E falando em descanso, trago a quarta dica:
ande sempre com um bloco de papel e caneta.
2021.1 |SANDB
2021.1 |SANDBOX
OX 3399
Você nunca saberá quando sua criatividade
espontânea irá atuar, então é importante que
você ande sempre com papel e caneta por perto,
dessa maneira, quando você sair do descanso
você poderá trabalhar de fato na tua ideia.
E é sobre trabalhar que vem a minha quinta
dica: invista tempo no que você quer ficar bom.
De acordo com pesquisas, em média, precisamos
de 10 mil horas de prática para ficarmos exce-
lentes em uma atividade específica.. E quando
uma pessoa consegue atingir esse “estado de
excelência” é quando os trabalhos diferenciados
surgem. Beethoven, por exemplo, começou seus
estudos em música com apenas 5 anos e aos
8 anos já participava de recitais na Academia
de Sternengass e já era tratado como gênio. E
bem, onde o resto da história deu, você já sabe.
Por fim, e é a partir dos seus trabalhos que
surge minha sexta e última dica: fuja da sín-
drome do impostor. E fuja no inicio, no meio e
no fim do seu processo criativo.
O início, é o momento que você se torna mais
propício a desistir de uma ideia, então trabalhe
nela apenas com você mesmo. E apenas depois
de amadurecer a ideia, compartilhe com outras
pessoas, caso seja seu desejo.
O meio é o momento onde mais criticamos
o que estamos produzindo. Em “Roube como
um artista”, Austin Kleon nos apresenta “A vida
de um projeto”
E o momento de “noite negra da alma”
sempre chega para todos nós. E é super im-
portante que esse momento seja encarado
como “ainda não terminei, então esse aqui
não é o resultado final”.
O final é o momento mais subjetivo de to-
dos. Quantas vezes olhamos para o trabalho
incrível de alguém e a pessoa fala “eu odiei o
que eu fiz”. O momento final deve ser encarado
como um momento de reflexão sobre o que foi
feito, o que pode melhorar, assim você poderá
melhorar o seu processo e deixá-lo do melhor
jeito para você.
40 SA
40 SANND OXX || 2200221.1
DBBO 1.1
Tempo Com Deus
Tenha a Bíblia em diferentes versões,
com um design simples e acessível,
e espaço reservado para anotações.
2021.1 |SAND B OX 4 1
código {
A importância da Matemática
para desenvolvedores
Texto Ronaldo
Edição Mateus Rodrigues
Ilustração David
42 SA N D B O X | 2 0 2 1.1
Matemática em cursos de graduação
2021.1 |SAND
|SANDBB OX 4 3
Matemática no dia a dia do Aplicações reais da matemática
desenvolvedor na computação
44 SA N D B O X | 2 0 2 1.1
linear para definição de elementos na tela. lise de algoritmos, uma área fundamental no
É necessário saber noções sobre matrizes desenvolvimento, que nos mostra a qualidade
porque a tela nada mais é do que uma grande do nosso código, se ele é eficiente ou não. São
matriz, onde pixels são os valores de cada usados conceitos de funções matemáticas,
célula. Além disso, os movimentos dos jo- pois os níveis são distribuídos por funções,
gadores também são calculados. A rotação como por exemplo a linear ou exponencial.
de elementos visuais necessita de conheci-
mentos de trigonometria para saber a taxa
exata de rotação.
Conclusão
Na Segurança da Informação, temos a
criptografia como forma essencial de criar Por fim, a grande lição é que a computação é
sequências numéricas que não podem ser uma aplicação matemática. Logo, precisamos
decifradas. Logo, além da teoria dos números, dela como nossa aliada. Saber apreciar a beleza
são usados conceitos de números primos . É da matemática é o primeiro passo. Depois é
usado o fato de ser quase impossível fatorar usá-la a seu favor. Esses passos podem ser um
um número em primos. Com isso, a crip- diferencial no seu dia a dia como desenvol-
tografia usa dessa característica para criar vedor. Para fechar, uma frase de Alan Turing:
números gigantescos(na escala de milhões “Raciocínio matemático pode ser considerado
de algarismos) e usá-los como chaves para um tanto esquematicamente como o exercício
transações bancárias, por exemplo. Este é um de uma combinação de duas instalações, o que
tema super vasto e interessante, o qual reco- podemos chamar de intuição e criatividade”.
mendo maiores estudos por parte do leitor. Bom, o que seria um desenvolvedor sem in-
Em computação aplicada temos a de Aná- tuição e criatividade?
|SANDB
2021.1 |SAND B OX 4 5
Design {
Um mapa da UX research
Texto Carolina, Elis, Lucas Alves
Edição Amanda
Illustração Carolina
Imagine que seu trabalho no momento é ser, o cerne das atividades de todo UX Designer.
projetar a melhor experiência possível para um Uma fala dada por um dos alunos do Academy
aplicativo destinado à adestradores de cachor- IFCE exemplifica isso, “Mesmo quando final-
ros. Qual o primeira coisa a fazer? Um protótipo mente aprendo a respeito, e incluo algum tipo
de baixa fidelidade? Definição de escopo? Bem, de pesquisa em nosso processo, na maioria
provavelmente vai ser difícil fazer qualquer coisa das vezes essas pesquisas se resumem a tes-
antes de entender a respeito das necessidades tes de interface e usabilidade.”, disse Ronaldo
dessa profissão e como um aplicativo pode Gomes. E apesar de importantes, estes tipos
resolvê-las. E você só tem como apreender isto de pesquisa não são as únicas quando falamos
com pesquisas de usuário. sobre UX Research.
O exemplo acima é uma situação dentre UX Research ou pesquisas de experiência do
muitas que nós designers nos encontramos usuário é uma grande área dentro do processo
quando recebemos um projeto, e em situações de experiência do usuário que consiste na re-
como essa, precisamos coletar informações com alização de investigações sobre o público-alvo
o público-alvo objetivando conseguir projetar para a coleta de informações e assim estruturar
algo que traga a melhor experiência possível ideias baseado no seu modo de pensar, nas
para os usuários. As informações coletadas suas necessidades e em como eles interagem
serão necessárias durante todo o processo de com sua interface, e assim, conseguir projetar
desenvolvimento, desde a estratégia até os uma solução eficiente. Mas, como escolher
últimos detalhes da interface visual. Por esse a pesquisa mais adequada para projeto em
motivo, a realização de pesquisas bem feitas questão?
e bem elaboradas se tornam tão importantes. O tipo de pesquisa a escolher depende dos
É muito comum, principalmente com pro- objetivos que se deseja alcançar, pois algu-
fissionais de Designe que estão no início dos mas técnicas podem ser encaixar melhor com
estudos, dar pouca importância as pesquisas os resultados esperados, como pesquisas de
realizadas com usuários, que são, ou deveriam mercado para a construção da estratégia, ou
46 SA N D B O X | 2 0 2 1.1
card sorting para ajudar na arquitetura de in- Algumas coisas para se pensar:
formação. Mas isso não são regras, por isso é
importante conhecer bem as metodologias para 1) Se for gravar, sempre pedir permissão
conseguirmos aplicá-las quando necessário, e para os participantes. E no início da pesqui-
focar no objetivo em mente. sa, sempre apresentar como os dados serão
Em geral, as pesquisas podem ser de natureza utilizados. Nunca pergunte mais do você irá
quantitativa com geração de dados numéricos precisar. Por que perguntar o CPF da pessoa,
e assim poder quantificar o problema ou qua- ou até mesmo o nome, se isso for irrelevante
litativa onde é feito uma pesquisa exploratória para a pesquisa?
por meio de razões, opiniões, motivações. Estas
pesquisas quantitativas e qualitativas podem 2) Prepare com antecedência os instrumen-
ouvir o que os usuários tem a dizer sobre o que tos e ambiente da pesquisa. Vai utilizar algum
pensam (attitudinal) ou somente observar o software, fez um roteiro de perguntas? Teste
que eles fazem, uma pesquisa comportamental tudo isso antes. Testar seus instrumentos faz
(behavioural). com que você encontre erros antes que estes
A pesquisa de UX é uma pesquisa como erros afetem o resultado da sua pesquisa.
qualquer outra. É importante aplicar todos 3) E falando em perguntas, é muito im-
os cuidados éticos para com os participantes portante que elas não direcionem o usuário
e dar a devida importância aos momentos à uma resposta específica. Os participantes
de preparação dos instrumentos, formulação de uma pesquisa costumam, mesmo sem
das perguntas e análise dos dados. Um certo querer, responder o que eles acreditam que
rigor técnico só irá contribuir para a validade o entrevistador quer ouvir. Não pergunte
da pesquisa e será importante para que se coisas como “Você gostou da experiência
obtenha resultados, de fato, relevantes. deste aplicativo?”.
Testes AB
Teste de
usabilidade
Personas
Quantitativo
pesquisas de
Qualitativo
mercado
Atitudinal
|SANDB
2021.1 |SAND B OX 4 7
Pesquisas de Mercado Personas
Técnica usada para pesquisar sistemas
semelhantes no mercado, com o objetivo de Personas são uma representação de dados
coletar informações como parâmetro de aná- reais coletados a partir de um contato direto
lise e até mesmo descobrir oportunidades de ou indireto com o usuário. Exibindo mais
soluções ou melhorias no design do sistema claramente dados demográficos bem como
que vai ser colocado ou já esta no mercado. as necessidades do usuário. Facilitando assia
adaptação do projeto ao público-alvo.
Ferramentas: excel (construção de tabelas
- inventário de recursos, matriz de análise Ferramentas: diagrama de afinidades,
comparativa), miro. smaply, Make My Persona.
Entrevistas Surveys
48 SA N D B O X | 2 0 2 1.1
Card Sorting Grupos Focais
Exercício rápido e de baixo custo com o Reunião com um grupo formado ideal-
objetivo de entender como o usuário estrutura mente por 5-10 usuários, um moderador,
ou organiza um grupo de itens ou até mesmo um facilitador e um pesquisador. A conversa
rotula um conteúdo, para ajudar a gerar ideias deve ser documentada e guiada pelos seus
e soluções que aumentem a capacidade de organizadores, permitindo a coleta de dados
localização do usuário dentro de um sistema. diversos pelos pesquisadores.
Ferramentas: optimalworkshop, usabi- Ferramentas: bloco de notas com
litest, userzoom, miro, figma, post-its perguntas previamente definidas.
|SANDB
2021.1 |SAND B OX 4 9
Design {
Sonda Cultural:
A Nascente dos Rios
A maior perspectiva do design é mapear o a vida urbana, tenho as águas como paixão. A
sentimento das pessoas através de perguntas partir desse campo que me situo, decidi estrutu-
que alcançam as suas experiências e as esten- rar uma investigação que engajasse a comuni-
dem em pesquisa. A exploração do território dade, ao passo que são construídos dados sobre
vem da busca em entender comportamentos como as pessoas se relacionam com os Rios no
que revelam vivências, histórias e contextos Recife. A ideia é que esses participantes fossem
dos participantes em questão. Escolher métodos unidos por um eixo territorial, nesse caso a
de pesquisa engajados permitem novas formas Região Metropolitana, e tivessem propósitos
de experiência, diálogo e consciência sobre a semelhantes; vivenciar, cuidar ou projetar para
problemática a ser imergida. Isso nos propõe os Rios da cidade.
a ultrapassar todas as soluções prefiguradas Para me inserir nesse contexto, escolhi a
que nos tendenciam ao projetar, para que seja Sonda Cultural como ferramenta co-criativa,
possível construir junto com as pessoas inter- ela funciona como uma pesquisa qualitativa
venções em problemas que ainda virão a ser semi-etnográfica para produzir dados centrados
evidenciados. A nossa tarefa é florescer práticas nos colaboradores de forma individual e mais
experimentais e colaborativas que engajem autônoma possível. Esse método tem como foco
emocionalmente comunidades a comparti- a participação das pessoas na autodocumen-
lharem sobre seu cotidiano com o intuito de tação, busca descrever fenômenos humanos
co-criar sob seu território. através do cotidiano e das interações, como tam-
Diante disso, os cinco meses de relações in- bém incentiva a explorar novas possibilidades
teiramente remotas devido ao COVID-19, me para problemas até então desconhecidas. Essa
fez querer entender a viabilidade em realizar maneira de levar em conta as experiências e
pesquisas de campo e testes não-moderados à emoções dos participantes foi fundamental para
distância com usuários. E, para além, também querer testar se é possível resgatar remotamente.
fazer com que a pesquisa de campo potencia- Misturar métodos presenciais que exigem en-
lizasse os usuários a se tornarem participantes trevistas e materiais físicos como caneta, papel
dos processos. Como moradora de uma cidade e câmera para adequá-los a realidade remota se
litorânea com essência estuarina, onde a tran- tornou o grande desafio. Não perder a essência
sição entre o rio e o mar marca a vegetação e do projeto em construir relações profundas e
50 SA N D B O X | 2 0 2 1.1
afetivas com os participantes em seus territórios,
sem que seja preciso sair de casa, exigiu que
fluxograma fosse posto em prática. O encontro
entre cinco bacias constrói a essência da cidade
do Recife. Em busca desse encontro que meu
aprendizado começou. Vamos navegar juntos
nessas descobertas?
|SANDB
2021.1 |SAND B OX 5 1
seguida, Geisiane, dona do Bistrô NegraLinda, a
marisqueira mais conhecida do Recife, respon-
“Rio Capibaribe é a história de sável por reverter através do empreendimento
social a violência que durante anos fez parte
uma vida. As vias fluviais me da Ilha de Deus.
conectaram com o Recife. Foi o Encontrei também com Mila, arquiteta e ur-
banista, que (re)projetou o Recife como uma
momento onde conheci a cida- Membrana Anfíbia capaz de sobreviver a ele-
de por outra perspectiva.” Davi, vação do nível das águas e aquecimento global.
Como não bastasse, escutei Duda, criadora do
barqueiro no Jardim do Baobá. bloco flutuante A Ver Capibaribe e incentiva-
dora de passeios piratas pelo Rio. Ela também
me apresentou Davi, barqueiro no Baobá, que
considera o Capibaribe a história de uma vida
de entender suas relações nos espaços. Como e celebra casamentos enquanto navega. E se
a maioria dos participantes não me conheciam, eu dissesse que Adriana também os conhece?
antes de enviar a sonda os contactei por men- Ela é educadora e projeta transportes públicos
sagem ou ligação, dependendo da faixa etária navegáveis. Bem, se além disso tudo, eu tivesse a
e familiaridade com as tecnologias, para saber sorte de Mayra, acordaria todos os dias tomando
se tinham disponibilidade em participar dessa café na beira do Rio e cuidando dos resíduos
troca comigo. Já que estavam me conhecendo da comunidade do Monteiro.
pela primeira vez, também compartilhei vivên- Cada uma dessas histórias são capazes de
cias que aproximam os nossos propósitos de revelar os emaranhados que as unem e as
acordo as diferentes realidades. tornam dissonantes nas suas relações com
Depois de ambos os lados quererem se co- o território, reconheci principais fatores que
nhecer, a sonda se inicia com um convite in- marcam a essência do que me foi sondado
dividual para situar as pessoas no ambiente qualitativamente. A dependência para tirar o
confortável que gostaria que elas se sentissem sustento dos rios e sobreviver a partir dele;
ao partilhar comigo suas vivências. Isso ocorre inspiração para projetar ou tomar café da manhã
sem interferências de quem construiu o mate- sob as margens; vulnerabilidade em ter menor
rial, nesse caso, a forma como os participantes abastecimento das águas ou sofrer devastações
respondem as perguntas cabem a eles e o tempo nas moradias devido as cheias acíclicas. Esses
que devolveriam a sonda também. Queremos fatores confluem no sentimento que envolvem
imergir nas suas rotinas para aprender através todos a viverem os rios a sua maneira.
das experiências, então esse material afetivo
perpassa por suas imagens, localidades, opini- Margem das Águas
ões, memórias, distância e percurso. Questões Lugar que o Rio encontra os seus contextos.
essas que considero relevantes para evidenciar
inúmeras realidades. Ao longo do dia, senti As margens e o leito situam o lugar que o Rio
como se tivesse sido recebida em suas casas ocupa em seu maior encontro. Para conseguir
para tomar um café, ouvindo o que cada um acessar as relações existentes nesse lugar, foi
dia para partilhar. necessário se permitir flutuar na memória e
mergulhar nas vivências das pessoas. Sem
Afluentes registros fotográficos, áudios, textos, desenhos
Quem se une para formar os Rios da cidade. e mapas, não conseguiria criar laços tão pro-
fundos capazes de reconhecer o contexto de
É nesse momento que os atores se unem como encontros que o Rio as coloca.
corpo que sustenta o fluxo das águas. Aplicar a
Sonda Cultural me levou ao encontro com pes- Esse vídeo do Nesse Recife
soas que constroem todos os dias suas relações Tem Rios é um compilado
com os Rios. A primeira conversa foi Luciana, das imagens compartilha-
protetora dos manguezais e defensora de um das pelos participantes que
Recife Sem Lixo, que mobiliza desde familiares definem seu envolvimento
a instituições sociais para retirar uma tonelada com as águas.
de resíduos na margem do rio Capibaribe. Em
52 SA N D B O X | 2 0 2 1.1
Adriana, educadora!
Casa Amarela - 2.2km
Mila, inspirada!
Setúbal - 3km
Duda, navegadora!
Parnamirim - 214m
Mayra, apaixonada!
Monteiro - 0km
Geisiane, cozinheira!
Ilha de Deus - 0km
Luciana, protetora!
Iputinga - 2.2km Davi, barqueiro!
Ilha de Deus - 0km
|SANDB
2021.1 |SAND B OX 5 3
O que isso nos mostra?
Encontro com a foz dos rios.
Nesse Recife
Tem Rios
54 SA N D B O X | 2 0 2 1.1
2021.1 |SAND B OX 5 5
Código {
Design Patterns: o que são
e quais os benefícios
Texto Patrícia
Edição Beatriz
Illustração o
J sé o
J ão
56 SA N D B O X | 2 0 2 1.1
trolador resultando na criação ou atualização de visualização para que ele possa exibi-los.
um modelo. Então quando um modelo muda, ele Como as visualizações não referenciam mode-
notifica um controlador, que atualiza os objetos los diretamente, a tarefa de formatação e apresen-
de visualização apropriados. tação costuma ser delegada ao controlador, assim
Um objeto de visualização é um objeto que sabe como operações de networking, gerenciamento de
como desenhar a si mesmo e pode responder às eventos, etc. Esta organização acaba se tornando
ações do usuário. Um dos principais objetivos um problema, pois ainda que o desenvolvedor
da camada de visualização é exibir dados dos tenha a opção de quebrar sua interface no que
objetos modelo do aplicativo e permitir a edição são conhecidas como ‘Subviews’, o que é visto na
desses dados. prática são os famosos controladores massivos,
Os objetos de visualização aprendem sobre fazendo com que os desenvolvedores busquem
alterações nos dados do modelo através dos alternativas ao padrão MVC na comunidade ou
controladores do aplicativo e comunicam alte- em outros padrões arquiteturais já consagrados.
rações iniciadas pelo usuário também através Acrescenta-se ao fato o quão difícil será testar
do controlador para os objetos do modelo de responsabilidades de componentes quando estes
um aplicativo. possuem muitas responsabilidades, o que é o
Um controlador atua como intermediário entre caso do controlador, demandando atenção por
um ou mais objetos de visualização de uma apli- parte do desenvolvedor, que deve escrever testes
cação e um ou mais modelos. Ele também podem não só para validar modelos, como também para
executar tarefas de configuração e coordenação testar funcionalidades e a fidelidade visual para
para um aplicativo e gerenciar os ciclos de vida diferentes tipos de telas.
de outros objetos. Basicamente, ele interpreta as Contudo, o MVC continua sendo a uma boa
ações do usuário feitas em objetos de visualiza- opção para projetos pequenos que não exigem
ção e comunica alterações. Quando os objetos arquiteturas mais elaboradas e que não têm a
do modelo mudam, um controlador comunica intenção de se preocupar com um processo de
esses novos dados do modelo aos objetos de manutenção rigoroso.
|SANDB
2021.1 |SAND B OX 5 7
MVVM
(Model-View-ViewModel)
58 SA N D B O X | 2 0 2 1.1
Viper nentes tão pequenos quanto se queira. O com-
(View, Interactor, Presenter, Entity e Routing) ponente Interactor cuida da lógica relacionada às
entidades, networking ou persistência. Com isso,
O Viper veio com dois grandes objetivos: resolver faz com que as entidades no modelo Viper sejam
o problema dos controladores massivos e melhorar implementadas como modelos.
a testabilidade da aplicação. As cinco camadas são: A grande diferença entre Viper e as arquiteturas
MV* está na responsabilidade destinada ao Pre-
View: Exibe o que é ordenado pelo Presenter. senter. Apesar de ser independente do UIKit, o
Interactor: Contém regras especificadas para um Presenter possui a responsabilidade de gerenciar
caso de uso. lógicas relacionadas à UI. Já as mecânicas que
Presenter: Contém a lógica de visualização e pre- favorecem navegação e roteamento, o componente
para elementos para serem exibidos baseando-se responsável é o Router.
em dados obtidos do componente Interactor. Dentre suas desvantagens temos a grande
Entity: Contém modelos básicos usados no quantidade de código que sempre é repetido
Interactor. sem nenhuma alteração em qualquer cenário
Routing: Contém a lógica de navegação e a ordem que utilize tal arquitetura. Também possui um
de exibição de telas. número excessivo de interfaces para classes com
Este padrão arquitetural é bastante popular pelo responsabilidades pequenas. Importante citar o
fato de aproximar o desenvolvedor dos conceitos componente Presenter, que possui fluxos de dados
apresentados pela arquitetura limpa e que por multidirecionais, o que diverge do proposto na
sua vez é fundamentada em princípios de design Arquitetura Limpa, que encoraja o uso de fluxos
orientado a objeto. de controle unidirecionais.
A introdução de Entities e Routers é a grande Avaliando as características do Viper podemos
jogada desse padrão, assim como a possibilidade verificar que este modelo arquitetural pode ser
da separação de responsabilidades em compo- considerado excessivo para aplicações simples.
Conclusão
|SANDB
2021.1 |SAND B OX 5 9
Infográfico {
Quem é o mais queridinho?
Texto o
J sé o
J ão, Helaine e Felipe
Edição Mateus Rodrigues
Illustração o
J sé o
J ão
Mas diz aí, Qual é o seu Você acha que é mais usada
queridinho? no mercado?
XIBS XIBS
Storyboard
Storyboard
60 SA N D B O X | 2 0 2 1.1
The Universe
Descubra informações e curiosidades
sobre o universo, alem de ver
fantásticas imagens reais.
62 SA N D B O X | 2 0 2 1.1