6
respostas

Dúvidas gerais de como pensar, como as coisas funcionam, se comunicam...

Boa tarde tudo bem?

Todos os cursos, de diferentes linguagens, são sempre a mesma coisa, quase sempre mesmo projeto, tópico, usando a mesma lógica e conteúdo, mesmos os cursos gringos, viciam em resolver somente aquele tipo de aplicação e não como pensar, resolver vários tipos de problemas ou como criar coisas novas, na minha opinião.

Por isso procuro ajuda de vocês para me indicarem quais cursos estudar.

Exemplo clássico disso...tenho visto muitos videos de JAVA, ensina tudo de O.O, lista, vetor, matriz toda teoria básica de coisas que toda linguagem tem... O entendimento disso é tranquilo, mas não é claro como aplicar em projetos reais, como pensar.

Geralmente os cursos são pra vc introduzir dados e ver dados usando shell/cmd/command line, o que na minha visão não é muito prático e usual.

Por esse motivo, não sei fazer o seguinte projeto básico e nem como funciona a comunicação desses sistemas.

Inves de a introdução dos dados serem via cmd/shell, pq não via HTML5/CSS/web? Angular/react/vanilla JS? Porque os dados não podem ser gravados em banco de dados?

Como usar SDK e API e libraries.

Precisaria de um servidor para servir a página web e como seria a comunicação com back end programado com o algoritmo? Socket? Como funciona toda essa comunicação entre as tecnologias?

Aonde saber mais sobre isso?

Enfim, como as coisas se comunicam?

Obrigado.

6 respostas

Oie Eric, tudo bem contigo?

Aqui na Alura, na maioria das tecnologias mais "famosas" nós temos os cursos básicos que geralmente mostra de maneira isolada aquela tecnologia e depois temos alguns cursos e em outros casos até formações que englobam mais de uma tecnologia. Na trilha de Java por exemplo, após terminar a formação Java temos uma formação Spring, e nessa formação os cursos de Spring MVC e Spring Boot mostram exatamente o que você deseja. Nos de Spring MVC é usado banco de dados, feito um front end usando bootstrap e no back end Java com Spring, já nos de Spring Boot é mostrado como faz uma API Rest e ao final do segundo curso de Spring Boot é feito o deploy da aplicação na nuvem.

Espero que eu tenha conseguido te ajudar a encontrar o que você deseja, qualquer coisa fico a disposição :)

Bons estudos!

Igor, boa noite. Sim tem, são os exemplos básicos de cada tecnologia, mas esse é o básico que me referi.

Viu o exemplo que dei em transformar um app de comand line em web? Como se faz?

Qual a diferença de um spring pro node pro nginx em termos de segurança?

Nesse mesmo quesito um simples web server, q se pode se criar em Go que só serve html, o que mais ele precisa, para ser completo e seguro?

Aplicações práticas de uso de iteradores, vetores, listas, matriz, quais aplicações com exemplos em apps reais, que tipos de problemas essas técnicas resolvem?

Coisas assim, pra aprender a pensar e conseguir resolver problemas.

Vi hoje uma pessoa levantando as mesmas questões que aqui falo. https://www.youtube.com/watch?v=uFJsrtB1Zy0

Olá, Eric! Tudo bem contigo?

Gostei do seu questionamento pois isso foi o que passei e aprendi com pouco tempo de experiência em tecnologia.

Todas as vezes em que eu concluia um curso vinha essa questão sobre: "onde posso praticar o que acabei de estudar?"

Continuei meus estudos e sempre ouvi de amigos desenvolvedores os ditos como "você precisa praticar". Tudo bem, mas como?

Até que um me questionou do porque não resolver um problema meu com o curso que acabei de aprender!

Pronto! Mas até então eu não tinha aplicado nada em front, pois meu estudo sempre foi Java e mesmo assim ele me incentivou a criar algo para guardar "em memória" minha coleção de livros e HQ's. Com isso, surgiram outras dúvidas que fugiram um pouco do curso e que me fez ir além. E agora?

Implementei banco de dados.

Dei continuidade ao meu "acervo" (agora com banco de dados rs) e fiz outro diferente.

Quando cheguei em MVC utilizando Spring foram outros desafios que exigiram, não só o aprendizado do curso, mas também muita pesquisa fora dele. Isso só foi agregando o conhecimento. Já nessa fase, qualquer projeto usando a base, que antes era uma dificuldade em desenvolver um projeto simples no terminal, não era mais problema.

Depois disse veio outros desafios como usar uma camada de proteção para minha aplicação, como encriptar as senhas dos usuários... e assim por diante.

Resumindo, Eric, o que percebi no decorrer da carreira de programador, é que vamos somando aprendizados conforme as necessidades. Uma base eu diria que é o caminho a ser seguido, mas nunca saberemos o que vamos encontrar e quando encontrar. Se olharmos tamanhas tecnologias e suas possibilidades, assusta.

Recentemente tive que brincar com React para conversar com uma API em Java sem ter a mínima noção de front e suas aplicações. Com certeza, daqui a algum tempo não será mais problema. Isso só vai agregando conhecimento e tornar a minha "senioridade" profissional em TI.

É um universo imenso, Eric.

Conselho: fortaleça sua base através de práticas deliberadas ou mesmo sites como HackerHank, CodeForces e Dev Challenge e procure fazer algo paralelo com o conteúdo que está desenvolvendo em curso. Isso vai te trazer problemas para que possa ir além do curso e recorrer a documentacões e até mesmo outros sites. Lá na frente verá que esse agregado de conhecimento te levou a um ponto onde qualquer problema de integração, segurança ou qualquer que seja o desafio, não seja obscuro. Pode ser que você não saiba como resolver, mas sabe que por ali não é e onde tenha que procurar.

Conheço um engenheiro de software que diz: "eu não se nada! Quem sabe é o Google ahaha". Traduzindo: pesquise!

O curso te dará o caminho. A sua curiosidade (e pelo que li acima é bastante) vai te conduzir para longe!

Um outro ponto extremamente importante são os contatos!!! Muitas vezes recorro a eles para saber sobre as tecnologias que estão mexendo. Isso me dá muita ideia do que fazer e aplicar!

Quero deixar um artigo do Paulo Silveira que fala sobre aprender a programar. Vale muito a leitura!

Essa foi minha opinião, Eric!

Valeu pela discussão!!!

Um abraço, conte conosco e bons estudos!!!

Senhores, boa tarde.

Entendo o que falaram, mas sabem implementar o que eu falei.

Pegar 1 exercicio basico onde se faz usando cmd, usuário entra dados no cmd/shell e as respostas saoi no shell tbem.

Mudar isso pra o front end, onde se entram os dados serem web/html/css simples, para ter essa comunição webserver/html/websocket?

Coisa simples.

Perfeito, Eric!

Então esteja convidado para fazer a formação Java começando por Orientação a Objetos e depois seguindo para Formação Spring.

Você fará uma aplicação front / back do início ao fim e mais adiante construir uma API para ser consumida com qualquer front que queira implementar!

Digo isso em Java, mas qualque formação da plataforma vai te levar do básico ao avançado!

Fique a vontade para escolher qual linguagem esteja mais interessado!

E novamente, estaremos aqui para te ajudá-lo nesse caminho

Cássio, boa noite.

Obrigado, mas não encontrei em nenhum curso isso, vc começa fazendo um app q o usuario teorico interage pelo input dados pelo cmd/shell. Queria pegar essa app e deixar o back end igual, so q inves de falar com a linha de comando, cmd/shell, o cliente ser web/js/html5.

Nunca vi nenhum curso fazer isso.

Estou no de C++ e acredito que tudo fica no command line, apesar do drogon ser um dos web server mais rápidos do momento.

Obrigado.