Quanto HTML e CSS o desenvolvedor do lado do servidor deve saber? [fechadas]


16

Eu fiz C e C++agora quero começar minha carreira como desenvolvedor web . Eu li muito sobre desenvolvimento web e soube que havia dois tipos de desenvolvedores na web,

 1. Client Side Developers.
 2. Server Side Developers.

Quero manter meu foco no desenvolvimento do servidor . Eu pensei que seria melhor começar com o básico, então comecei a fazerHTML e CSS. Eu descobri que CSSera muito grande para alguém dominar completamente facilmente. Eu quero saber que princípios básicos um desenvolvedor do lado do servidor deve saber e ele deve ser um mestre em HTML e / CSSou simplesmente acabar com isso?


1
Um desenvolvedor de serviços da Web seria um terceiro tipo de desenvolvedor ou essa pessoa seria contada como desenvolvedor do lado do servidor?
JB King

1
@ jb-rei IMO esse lado seria servidor
BlackICE

1
@Jb king, @ David: Que tal chamá-lo de desenvolvedor do lado do servidor que sabe como a web funciona.

1
Alguém que desenvolve serviços da web pode não precisar usar CSS ou HTML se o serviço retornar XML ou SOAP. Portanto, isso está longe de ser a mesma pessoa que desenvolve um site ou aplicativo Web do ASP.Net que possui muitos recursos de interface do usuário que usam HTML e CSS para dar um contraste aqui.
JB King

Falando como um dev agora do lado da pilha, todo mundo deveria saber HTML. Quando eu encontro os desenvolvedores do lado do servidor com anos de experiência que quebraram a funcionalidade porque eles não sabiam que os IDs deveriam ser únicos em uma página, eu quero dar um tapa neles. FFS, é chamado de "ID". Como você confia em um cara para se aproximar do SQL depois disso? E leva apenas algumas horas por ano para ter uma idéia do HTML mais recente. Além disso, na IMO, qualquer pessoa que espere tocar em uma página de modelo também deve ser capaz de explicar todas as recomendações do YSLOW porque elas sabem como os navegadores analisam e processam as páginas.
Erik Reppen 06/02

Respostas:


15

Será necessário que você os conheça bem. Se você é um desenvolvedor web, é um desenvolvedor web. Você deve poder escrever aplicativos da Web de forma independente, e isso inclui a tecnologia do lado do cliente.


3
+1 Eu sou um péssimo designer, mas em alguns aplicativos não tenho parceria com um designer real.
Michael

2
Você, meu amigo, não está sozinho. Não tenho muita atenção para uma ótima interface do usuário, mas passo por ela de forma que não precise de outro desenvolvedor para criar um aplicativo da Web totalmente funcional.

8

Eu me considero um desenvolvedor "do lado do servidor".

Apesar de estar no "verso" do desenvolvimento da web, acho extremamente útil conhecer os fundamentos de HTML e CSS. Trabalho em "sistemas de gerenciamento de conteúdo da web" (WCMS) típicos, como Drupal, Day CQ e Liferay, e a maioria dos requisitos e solicitações de negócios giram em torno de mudanças na aparência e na sensação.

Não há necessidade de se tornar um "mestre" em HTML ou CSS, mas, no mínimo, você deve saber como criar uma página da Web estática, estilizada com CSS. Você deve conhecer o básico dos formulários e os vários mecanismos de entrada. Para CSS, entenda a diferença entre os atributos ID e CLASS e como os seletores funcionam. Muito disso você aprenderá com o tempo.

Por fim, desenvolva algum conhecimento das diferenças comuns do navegador. Novamente, esse é um conhecimento que você aprenderá com o tempo, mas reconheça que existem diferenças no navegador e esteja preparado para reconhecê-lo.


1
+1 em "não é necessário se tornar um 'mestre' em HTML ou CSS". Sou um designer que se tornou programador e há uma diminuição incrivelmente acentuada dos retornos no conhecimento de CSS depois de aprender CSS básico para layouts usando flutuadores. Os nerds do Front End têm os argumentos mais loucos sobre o suporte ao CSS3 / IE / etc, e muitos deles se resumem a dogmas ou religião. "Tabelas MAU!", "Screw IE!" "Os microformatos curam o câncer!" Muitos desses argumentos não têm impacto no mundo real, portanto, se você aprender algum CSS, evite os círculos dogmáticos e concentre-se apenas em aprender como colocar as coisas na tela.
Graham

Sim, já participei de debates como "Devem ser usadas tabelas?" então "Por que o Google e o Twitter usam tabelas?" Vendo essas perguntas, acho que ficou difícil escolher entre as tags disponíveis. /

No lado do cliente, as tabelas como layout ou a continuação do uso de carros alegóricos exclusivamente para posicionamento horizontal em 2011 ou 2014 não são uma rejeição ao dogma. Eles são sinais de alguém que decidiu colocar uma data de validade em sua carreira. Um designer ou desenvolvedor de front-end de agência de publicidade / marketing / agência interativa pode ser capaz de se safar disso. Se vi isso no trabalho recente de alguém, recomendo que não seja contratado em nenhum lugar em que trabalhei onde o produto final não fosse descartável.
Erik Reppen

1

Na verdade, eu identificaria três segmentos:

  • Desenvolvedores do lado do servidor
  • Desenvolvedores do lado do cliente (programadores JavaScript)
  • Designers

Você precisará de um conhecimento completo de HTML e CSS. A divisão do trabalho entre os desenvolvedores do lado do servidor e do cliente / design geralmente exige que o desenvolvedor do lado do servidor forneça o HTML produzido pelas interações de banco de dados e programação. Esse HTML também carrega identificadores CSS, para que possa ser manipulado pelos desenvolvedores ou designers do lado do cliente.

Seu trabalho como desenvolvedor do lado do servidor geralmente é fornecer a marcação HTML / CSS para os outros dois. Procure dominar completamente o HTML e o CSS.


1
"desenvolvedor do lado do servidor fornece o HTML" O HTML gerado deve ser uma união de três funções. Todo mundo precisa estar envolvido com o HTML. Além disso, um desenvolvedor do lado do servidor não tem envolvimento com CSS.
Raynos 23/07

Os desenvolvedores do @Raynos Server não definem regras CSS, isso é verdade. Eles devem, no entanto, entender como atribuir classes na marcação para agrupamentos semânticos.
Michael

1
@ Michel que é diferente, HTML e CSS são realmente relacionados. Idealmente, os desenvolvedores do lado do servidor apenas expõem uma API REST XML / JSON e os desenvolvedores / designers de front-end escrevem o HTML / CSS. Os desenvolvedores do lado do servidor ainda não devem escrever CSS para os desenvolvedores da Web usarem.
Raynos

1

Você precisa conhecer HTML + CSS, pois eles são essenciais e difíceis de aprender. Você enfrentará armadilhas ao tentar definir o CSS para todos os navegadores, mas é necessário conhecê-lo, pois às vezes é necessário gerar HTML usando o servidor.

Você pode começar a aprender isso criando seu próprio blog. Se não houver nada no blog, você pode postar no blog sobre Suas lições.


1

Não entendo por que as pessoas não entendem. Não há código de front-end com sites. É todo o código de back-end. O código do front-end é o navegador; portanto, a menos que você trabalhe no Mozilla ou IE ou no Chromium / google ou safari, você está escrevendo um código do lado do servidor. Eis como funciona: O navegador solicita um arquivo do servidor da web. O servidor da web gera um arquivo. O navegador interpreta esse arquivo e pode solicitar arquivos adicionais (imagens, javascript, css etc.) e interpretar esses arquivos, até que todos os arquivos tenham sido interpretados.

Agora, esse primeiro arquivo solicitado pelo navegador é um arquivo html. O arquivo html é analisado e o navegador decide como renderizar seu conteúdo. Portanto, um dos conceitos importantes a serem retidos aqui é que o arquivo html é consumido por um analisador.

O servidor da web é um software que escuta uma porta e processa solicitações de arquivos. Se o arquivo for estático (queremos dizer estático aqui, no sentido de que o arquivo já foi criado), ele será copiado como está no cliente solicitante. Se o arquivo for dinâmico, o que significa que ele é criado toda vez que o arquivo é solicitado, o servidor da Web solicita que o arquivo seja gerado pelo software que gera o arquivo (um processo em execução, uma biblioteca carregada ou um processo) e esse software gera o arquivo e o envia ao servidor da web, que, por sua vez, o envia ao cliente.

Depois que esse arquivo for "veiculado" para o cliente e analisado, o cliente poderá solicitar outros tipos de arquivos, como arquivos json, onde poderá ignorar a análise pelo renderizador html e, em vez disso, fazer com que o arquivo retorne ao interpretador javascript em execução no o cliente e estes são analisados ​​(eval é uma forma de análise) por javascript. É nisso que o AJAX se baseia.

Agora, como isso afeta você? Se algum arquivo no servidor for gerado dinamicamente, existe um software em execução no servidor que informa como gerar o arquivo. As pessoas que programam esse software são consideradas programadores "do lado do servidor".

Esses arquivos html, gerados no servidor, informarão ao navegador quais outros arquivos incluir; portanto, o javascript, as imagens e o css precisam ser importados, organizados e organizados pelo arquivo html gerado.

Muitas estruturas da Web e, ouso dizer, metodologias (MVC et al), foram desenvolvidas para criar um limite entre o trabalho "do lado do servidor" puro e o "lado do cliente".

Eu esqueci de mencionar, oh querido, as pessoas de dados. O pessoal de armazenamento de dados é ainda mais do lado do servidor do que os gravadores de software html que geram arquivos html. O armazenamento de dados, seja banco de dados relacional, NoSQL ou outro, é outra coisa. Menciono isso porque as estruturas e metodologias promovidas por grandes fornecedores (MVC e outros novamente) aparentemente tornam mais fácil "simplesmente negrito".

Woah, que resposta longa.

Faço essa resposta aparentemente grosseira para contestar sua afirmação de que existem desenvolvedores do lado do servidor e do lado do cliente. Se você entregar seu sistema de informações por meio de um site, tudo deverá ser armazenado, organizado e gerenciado no servidor. E é uma grande bagunça, e, a menos que você realmente aprenda como tudo funciona, você terá muito tempo para fazê-lo funcionar bem. Portanto, é tudo do lado do servidor.


1
NÃO TEM CERTEZA SE É SÉRIO? Isso é bobo. "Lado do cliente" refere-se ao software que EXECUTAR na máquina do cliente, não na plataforma de entrega. HTML, CSS e JavaScript são ARMAZENADOS no servidor (duh), mas EXECUTADOS no cliente. Portanto, seu desenvolvimento é considerado "lado do cliente".
Graham

O software que é executado na máquina do cliente é interpretado pelo mecanismo de renderização no navegador, que é o que é executado no cliente. O mecanismo de renderização primeiro renderiza o html e, depois da renderização, renderiza qualquer um dos recursos associados, no contexto do arquivo html.
Christopher Mahan

@ Graham, Sim, é complexo, portanto, o apelo do Silverlight e AdobeAir.
Christopher Mahan

0

+1 para a pergunta. Também sempre achei que codificar um servidor é mais interessante e importante do que fazer html + css + js + ajax + .. e muitas outras coisas. De qualquer forma, se você estiver sozinho e quiser criar seu próprio aplicativo da web, precisará ser programador do lado do servidor e designer + (programador do lado do cliente). É por isso que agora estou aprendendo html5 e css3.


Obrigado Sergey. Estou fazendo HTML 4 e CSS e eu gostaria de tentar passar para HTML5 e PHP em breve :)

Qual lado é mais interessante depende da aplicação. Muitos aplicativos da web têm cerca de 90% de experiência do usuário e 10% de design de dados.
Kevin cline

Se você fizer o design correto dos dados, a experiência do usuário também será simples!
Christopher Mahan

"Se você fizer o design correto dos dados, a experiência do usuário também será simples!" - Sinto muito, mas isso é MUITO errado. O Ipod tinha o mesmo design básico de dados que mais de 100 outros players de MPG no mercado, mas sua revolucionária experiência de usuário fez com que a Apple fosse a empresa que todos conhecemos hoje.
Graham

0

Na verdade, depende. Na maioria dos casos, você precisa conhecer HTML e CSS. Em casos raros, você pode ignorar os dois.

Caso 1

Na minha empresa, existem projetos com separação rigorosa entre HTML e CSS e tudo relacionado ao lado do servidor . Isso permite trazer o melhor desenvolvedor de C # ou PHP de um lado, e o melhor desenvolvedor de HTML, CSS e JavaScript do outro lado. Concretamente, o desenvolvedor do lado do servidor produz para todas as páginas objetos do lado do servidor que contêm tudo o que precisamos para exibir a página; esses objetos são serializados para XML. O desenvolvedor do lado do cliente escolhe esses objetos e os transforma em XHTML com XSLT.

Dito isto, nunca vi essa abordagem em outras empresas. Além disso, possui muitas limitações e, mesmo sendo perfeito em alguns casos, não funciona em muitos outros.

Caso 2

Quando, em pequenos sites, desenvolvedor e designer trabalham juntos, não há consenso sobre quem escreve HTML e CSS. Você tem que decidir para cada projeto, de acordo com as habilidades das duas pessoas envolvidas. Mesmo que, em muitos casos, seja o desenvolvedor que lida com HTML e CSS, também é possível encontrar alguns designers que conhecem HTML e CSS muito bem . Nesse caso, se sua intenção é trabalhar em pequenos projetos e apenas com esse designer, você não precisa aprender HTML / CSS.

Caso 3

Em projetos maiores, não é incomum contratar uma pessoa dedicada para escrever código HTML e CSS com base no trabalho de designers e desenvolvedores do lado do servidor. Geralmente, é uma boa ideia fazer isso, pois você não deseja pagar US $ 100 por hora para que um desenvolvedor experiente de C # realmente escreva HTML; é apenas uma perda de tempo e dinheiro.


Dito isto, esses casos não são os mais frequentes. Portanto, concentre-se no desenvolvimento do lado do servidor, mas tente aprender HTML e CSS também. O conhecimento adicional nunca é demais.


0

Às vezes, especialmente no começo, você estará trabalhando sozinho em um projeto e precisará fazer front-end e back-end. Nesse caso, você precisará de pelo menos um conhecimento rudimentar de HTML e CSS. Você não precisa ser um ótimo designer, basta ver as informações do seu back-end visíveis no seu navegador para poder testar as coisas.


0

Na verdade, tudo depende. Se você está se metendo no que diz respeito à programação de software para servidor, verifique se você conhece as maneiras padrão pelas quais os desenvolvedores da Web de nível realmente alto (HTML / CSS) devem poder interagir com seu aplicativo. No entanto, se você planeja fazer muito trabalho estreitamente vinculado ao HTML / CSS, precisará conhecer razoavelmente bem o HTML e o CSS. De qualquer forma, é sempre bom conhecer algumas tecnologias extras. Eu sou um programador nativo e até sei HTML / CSS o suficiente para criar um site com aparência decente. Dito isto, eu só aprendi para aprender AJAX a escrever alguns complementos para Chrome / Firefox.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.