O que vocês sugerem que Front-ends estudem sobre Engenharia De Software? #1912
Replies: 2 comments
-
Acredito que ter uma boa base de estrutura de dados, algoritmos e design de software podem acrescentar muito para nós do front, por que na minha opinião, no fim das contas tudo é software. Buscar conhecimento para criar um design escalavel é algo que vai ajudar no futuro quando tiver que dar manutenção no código, seja no frontend ou no backend. Porém, cada coisa no seu tempo. Na minha opinição é importante ter uma base sólida e ter passado alguns "perrengues" para que ao estudar sobre essas melhorias de arquitetura/design de software, enxerguemos o real valor de buscar escrever um software melhor. Não que não valha a pena estudar isso em qualquer momento da carreira, mas acho que faz mais sentido quando tu consegue associar o que tu está aprendendo com experiências que tu já viveu. Terminei recentemente de ler o livro "Philosophy of Software Design" do John Ousterhout, e nele traz muitos insights voltados à alguns cuidados que devemos tomar para reduzir a complexidade dos códigos que criamos. Como falei anteriormente, é uma leitura que vale a pena à qualquer momento, seja um desenvolvedor iniciante ou um desenvolvedor experiente, vão encontrar valor nessa leitura. Porém acredito que se tu tem um pouco mais de tempo de carreira, alguns pontos abordados no livro vão te levar a refletir sobre momentos que tu presenciou no passado, e pensar coisas como "Poderia ter feito desse jeito..." ou "Apliquei um design sem saber que estava aplicando". Resumindo, acho muito válido nós procurarmos sempre evoluir, mas tomando cuidado para não dar um passo maior que a perna, para não correr o risco de acabar saindo muito do foco que tu estipulou pra ti mesmo. Com paciência e dedicação, a evolução flui naturalmente. :) |
Beta Was this translation helpful? Give feedback.
-
Vou focar mais em arquitetura, que é algo que curto bastante. E um pouco de história. Eu pessoalmente acho que existem 2 perfis no mercado de desenvolvimento de Software antes de ir para um patamar onde vira carreira em Y: quem tem foco em entregas rápidas e quem tem foco em entregas ágeis. Ambos possuem valor. Terão lugares, profissionais e times que vão se focar em produtos mais escaláveis, reaproveitáveis. Mas também sempre terão as famosas agências de publicidade e algumas consultorias e startups onde o foco é entregar MVPs e produtos ou atualizações de forma rápida para não perder tração, custe o que custar, fazendo o produto da forma mais rápida e pra ele não "importa" codebase pois prefere focar no negócio. Qualquer coisa só criar um novo ou copiar algo já existente no Google... Há mercado pra ambos os perfis. Também há o fato de juniores e lá no começo de pleno o foco deles é entender a linguagem, suas particularidades e como fazer Software. Fora nossa profissão mal existia da forma que enxergamos hoje há 10 anos atrás. Por lá, bastava funcionar no IE6 que ia pra produção. E isso se refletiu sim na nossa área mas tardiamente, muito influenciado pelo Node e gerenciadores de dependência (Require.js, Bower.....) trazendo modularização de código pro front-end, o que antes era uma tarefa um tanto inviável sem estes ferramentais, não impossível mas difícil de se pensar em arquitetura e isso acabava sendo algo pessoal de cada desenvolvedor. Já no back-end se fala em padrões desde os anos 80. Arquitetura em aplicações PHP se popularizou quando orientação a objeto estava mais sólido na linguagem. Vejo um cenário bastante análogo se for pensar em JavaScript. E ainda assim existem em PHP existem ambos os perfis inicialmente descritos. E Engenharia veio pois precisamos de processos. Sinto que foi um curso um tanto que natural. Fazendo um paralelo com uma área que sempre foi comparada com a nossa: Construção Civil, de onde a gente se apropriou de alguns termos (pelo menos arquitetura e padrões). Você precisa de Engenharia e Arquitetura se for fazer um projeto do zero. Também precisará da execução e de planejamento... Porém, se você trabalhar com materiais pré-fabricados e possuir um "framework" onde já te definiram a Engenharia e a Arquitetura para prosseguir com tais projetos, não que os dois não sejam necessários, mas quem for executar pode se focar muito mais em sua execução e menos nas outras fases. E acaba sendo um mantra em Computação, criar códigos reutilizáveis tais como pré-processados. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Olá, pessoal! Tudo bem com vocês??!
Bom pessoal, estou abrindo essa discussão justamente para entender o ponto de vista de vocês sobre o Front-end. Há algum tempo venho observando muitos comentários sobre quem trabalha com Front-end ser uma pessoa muito prática, conseguir aquilo que é necessário, porém não ter base em sobre arquitetura, fundamentos de engenharia e afins, e quando estão em algum discussão não conseguem defender seu ponto de vista, por não conseguir expressar corretamente ou não o conhecimento mínimo pra esse fato.
Claro, não estou generalizando, esse tópico é justamente pra entender a visão de quem trabalha e aplica isso no dia a dia, seja numa discussão com Back-end, Tech Lead que estão definindo arquitetura e tals.
O que pensam sobre isso? Realmente muitos Front-enders, não dão atenção pra essa parte de Engenharia? E se puderem dar dicas de estudos pra agregar, com certeza vai ajudar muitos por aqui.
Beta Was this translation helpful? Give feedback.
All reactions