Executando verificação de segurança...
1

[dúvida] Abstração

TL;DR: O que significa abstração?

Fala galera, tudo bem?

Pra contextualizar vocês sobre minha dúvida que pode parecer bem besta, recentemente decidi mudar o rumo por aqui e ingressar na área de programação. Estou estudando por conta e já possuo alguns conhecimentos básicos de HTML, CSS, Javascript e cada dia aprendendo mais.

No caso, estou nessas faz umas 3 semanas, apesar de conhecer o canal do patrão do TabNews faz tempo, antes eu não entendia quase nada de termos técnicos, hoje já entendo bem melhor quando ele fala sobre tecnicalidades, não tudo, mas sinto uma melhora contínua.

Contudo, alguns termos, mais relacionados a ciência da computação em si acredito eu, e não especificamente sobre linguagens de programação, acabam ficando meio vagos pra mim. Pode ser porque não tenho uma formação sólida sobre o assunto, ou porque sou novo nisso (claro, são ambos). Enfim, queria perguntar o que é abstração. Quase todo vídeo vejo o Filipe falar esse termo, já pesquisei mas a definição que encontrei não pareceu casar muito com o que ele falava em vários vídeos. O que eu encontrei e entendi, a princípio, é que é como isolar apenas a parte relevante de um problema, mas de novo, isso não parece se aplicar a todas as vezes que o termo é mencionado.

Se alguém puder me dar uma luz sobre isso, agradeço demais!

Forte abraço e valeu pela ajuda :)

Carregando publicação patrocinada...
2

Veja se te ajuda: https://pt.stackoverflow.com/q/23103/101.

Se isso não se aplica, pode ser que o termo esteja sendo usado em lugar que não devia. Já pesnou nisso? Também pode ser que sua interpretação esteja equivocada porque ainda não tem destreza com ele. Isso certamente aconteceu comigo. Em algum contexto pode de fato ter uma forma ligeiramente dierente de uso. Aí precisaria ver ocaso para dar um posicionamento.

Uma forma mais popular que pode ajudar a entender quando a as pessoas usam é que ela é uma camada em cima de algo, é uma forma de esconder detalhes que não importam. Não é exatamente isso, mas é uam forma de ver.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

1

Olá. Td bem?

Aprendi dessa forma. Veja se faz sentido para você ou te ajuda a entender... (Por favor, quem for mais experiênte, me corrija se eu estiver errado, ou complemente).

Abstração é o fato de você saber que algo existe, mas que o funcionamento exato dele (por trás) é transparente para você naquele momento.

Exemplo bem bobo, no caso da programação:

Você sabe como funciona o comando console.log() do JavaScript por baixo dos panos ?

Não né? Nem eu...kkkk, a gnt o utiliza abstraindo para apenas se importar com o resultado que ele nos trás, imprimir algo no console do navegador.

Então o funcionamento do comando está abstraído para nós, podemos chamar isso de Caixa-Preta também, é um termo que ouço bastante na área da programação.

-> Um pouco mais sobre o conceito de caixa-preta, explicando sobre testes de caixa-preta:
https://pt.stackoverflow.com/questions/404542/como-funciona-um-teste-de-caixa-preta

Não que você não possa saber o que realmente tem por baixo dos panos no futuro, mas no primeiro momento, vc pode abstrair e se preocupar em como vc vai usar aquela funcionalidade para obter o resultado que você quer.

Outro exemplo, dessa vez fora da programação:

Eu não sei como funciona o motor de um carro, eu só sei dirigir, olhar água, óleo e algumas coisas assim para garantir o bom funcionamento do motor, mas nada além do que eu preciso para utilizar o veículo no meu dia-a-dia.

Nesse outro caso, o funcionamento exato do motor do carro está abstraído para mim.

Obs:
Ao meu ver, é descenssário e acaba afetando mt a nossa evolução, principalmente no inicio, quando queremos saber exatamente tudo antes de progredir. No caso da programação, o básico do básico pode ser mais difícil que o avançado kkkk. Digo no caso de querer entender exatamente como tudo funciona e de onde as coisas derivam.

Espero ter ajudado e não falado besteira, abração!!!

1

Po, ajudou bastante sim! Sua resposta complementa a do @maniero abaixo, ambas me ajudaram a compreender melhor!

Parando pra pensar, fazemos abstrações o tempo todo, né? haha

E olhando mais de perto ainda, o fato de eu abstrair o tempo todo sem saber o que é abstração, é uma meta-abstração porque abstraio o próprio fato de abstrair. Que viagem véi.

Agradeço aos dois pela ajuda, abrasss