Programar Primeiro, estilizar depois - WEB

é melhor fazer assim…
ou pegar uma página ja estilizada pra trabalhar?

[quote=wilsontads]é melhor fazer assim…
ou pegar uma página ja estilizada pra trabalhar?

Quando se constrói uma casa, primeiro são feitas as fundações ou a decoração dos ambientes?[/quote]

Você está programando ou construindo casas? :lol:

Se você tem tudo bem definido, não haverá problemas em fazer a interface primeiro.

Bom, uma página web bem feita possui a “estilização” (feita em CSS) separada do conteúdo (em HTML).

Por isso, acho prudente pensar no fluxo de navegação antes de qualquer coisa. Os detalhes de estilo podem ser alteradas no meio do caminho.

Na interface, faz algo bem simples (nada de enfeites e cores), a nível de código e aparência. Depois, integra com o ‘backend’ e depois, se sobrar tempo, coloca os detalhes.
Isso porque você pode gastar 70% do tempo que tem pra desenvolver arrumando detalhes na interface…
Se você precisa mostrar todas as funcionalidades antes, faz algo simples e certifique-se de que as coisas funcionam como deveriam. Depois você se preocupa com detalhes.

Eu sou a favor de fazer um protótipo todo estilizado, aprovado pelo cliente, e só depois programar em cima dele.
Assim vc já sabe o que o cliente quer, o jeito que ele quer, e você não precisa se preocupar se vai usar </br> ou vai aplicar um *-padding: 2%
Claaaaaaaaaro que isso depende do cliente. As vezes o cliente só quer um sistema inteiramente funcional, e qualquer coisa de design é supérfulo, mas normalmente não é assim.

[quote=osmio][quote=wilsontads]é melhor fazer assim…
ou pegar uma página ja estilizada pra trabalhar?[/quote]

Quando se constrói uma casa, primeiro são feitas as fundações ou a decoração dos ambientes?[/quote]

discordo dessa analogia

a minha opiniao é que depende do projeto.

se houver um profissional para criar os prototipos para o cliente aprovar, ai o layout ficara pronto primeiro e depois vai ser inserida a programação.

se nao houver tal profissional, ai acredito que seja mais viavel criar a arquitetura do projeto, classes, daos, etc…

isso tudo é relativo…nao existe oq vem primeiro ou o que é melhor ou pior…

flw

Os 2 vem em conjunto
Programe e faça um front end para testes.

[quote=osmio][quote=Hellmanss]
Você está programando ou construindo casas? :lol:
[/quote]
Caso não tenha conhecimento, analogias são utilizadas para melhor entendimento de uma opinião proposta.
http://pt.wikipedia.org/wiki/Engenharia_software[/quote]

Você não fez analogia a nada, fez uma afirmação.

Você sabe o que significa engenharia? Não tem nada a ver com pedreiros… se você gosta de links do wikipedia:

não, o que eu acho que ele quis dizer é tipo um web design montar o visual primeiro, e depois vc aplica funcionalidades em cima daquele modelo.

já participei de um projeto assim, era bom pq pelo menos com as telas eu não tinha que ficar me preocupando com posicionamento de campos, layouts, cores, e etc., focando apenas nas funcionalidades.

[quote=osmio][quote=cs.santos0]
[…]
se houver um profissional para criar os prototipos para o cliente aprovar, ai o layout ficara pronto primeiro e depois vai ser inserida a programação.
[…]
[/quote]

Prototipo == Produto final?
Se isso for verdadeiro, PARA MIM, nao eh prototipo. [/quote]

o prototipo um dia vai virar produto final oras…rsrsrs

se na hora do levantamento de requisitos, o “analista de prototipo”.rsrsrs(vamos colocar assim) vai desenhando as telas de acordo com o que o analista de sistemas fala, e ai vai alterando de acordo com o que cliente quer. Quando o cliente ficar satisfeito, ai fecha em um “prototipo final”.

ai passa pra mao do desenvolvedor que só vai programar as funcionalidades…quando o desenvolvedor acabar ai vira “produto final”

[quote=osmio]
Caso não tenha conhecimento, analogias são utilizadas para melhor entendimento de uma opinião proposta.
ENGENHARIA e ARQUITETURA de software não são assim denominados por acaso.

http://pt.wikipedia.org/wiki/Engenharia_software[/quote]

Essa analogia é um tanto quanto perigosa. Estás à comparar uma coisa que não segue uma ordem de construção
com outra que segue. Imagine só construir um prédio à partir do 2° andar, consegue? Agora, imagine construir primeiro as suas
classes de acesso a dados, ou, suas classes de negócio. consegue?

[quote=osmio][quote=cs.santos0]
o prototipo um dia vai virar produto final oras…rsrsrs
[/quote]

Esse é exatamente o ponto.
Um protótipo se assemelha ao produto final em suas formas gerais, funcionalidade etc.

A dúvida inicial, refere-se a “decoração” (estilização, como definido no título da thread).
O protótipo não necessariamente precisa levar o logotipo da empresa (por exemplo) no header da página. Mas, o produto final sim. O protótipo não precisa possuir o mesmo tipo de fonte do que o produto final. O que vai importar no prótotipo, é exatamente a mensagem e a funcionalidade.

Programar as funcionalidades a partir de um protótipo (esqueleto) pode fazer sentido em alguns casos. Ai sim concordo que depende do projeto. Agora, se a mensagem “Hello World” vai ser envolvida entre <h3> ou não, independe da programação. Isso não vai interferir em nada para o programador.[/quote]

realmente…mas ainda concordo em partes…rsrsr

pois existem projetos que o exato prototipo que o cliente viu de inicio, deve ser a tela final…sem alterar nda…inclusive o meu projeto atual é assim…

[quote=osmio][quote=cs.santos0]
realmente…mas ainda concordo em partes…rsrsr

pois existem projetos que o exato prototipo que o cliente viu de inicio, deve ser a tela final…sem alterar nda…inclusive o meu projeto atual é assim…[/quote]

De fato! Isso ocorre.
Assim como centenas de softwares são disponibilizados em produção cheios de bugs! Isso também varia muito de projeto para projeto. Talvez, a ausência de tempo para testes (no caso dos bugs) ou melhoras (não estou dizendo que seja o caso do seu projeto) na camada de apresentação façam com que isso ocorra.

Mas, pode acontecer (esse sim deve ser o caso do teu projeto) que o protótipo é tão rico em detalhes que o cliente se dá por “mais que satisfeito”, e aceita coloca-lo em produção.
[/quote]

sim…tem mto detalhezinhu sim…

agora entramos em um acordo…rsrsrs

o fato de ter o layout pronto aumenta as chances de bugs…principalmente no que diz respeito a css e javascript…

Acho que depende muito da situação e da maneira a qual você esta acostumado a trabalhar.

Em grandes empresas geralmente existe funções bem definidas para a tarefa de programação e para a tarefa de criar uma interface “bonita” (estilizar).

Se você será o responsável por ambas as tarefas, acredito que não há problema em se “estilizar” primeiro, desde que você já tenha as funcionalidades e o seu devido fluxo bem definidos.

Mas acredito que a grande maioria opta por primeiro a parte de programação própriamente dita, e depois a parte de “perfumaria” :wink:

Abs.

[quote=osmio][quote=el_loko]
Essa analogia é um tanto quanto perigosa.
[/quote]

Porque?

[/quote]

Porque coisas que começam com a mesma palavra não necessariamente são parecidas. Podem ter coisas em comum,
mas daí a compará-las por completo como vc fez com o exemplo da casa não faz sentido nenhum. Agora me responda uma coisa.

O que a construção de uma casa tem a ver com a de uma página para a internet, onde, a criação de uma coisa antes da outra
irá influenciar o resultado final?

A construção de uma casa (analisando a sua analogia), requer um processo básico para que ela seja levantada, por exemplo. Não há como
decorar um nível sem que ele exista. Diferente do software, que salvas exceções que impeçam de fazer uma coisa só pq outro desenvolvedor
não terminou o trabalho dele.

[quote=osmio][quote=el_loko]
Imagine só construir um prédio à partir do 2° andar, consegue? Agora, imagine construir primeiro as suas
classes de acesso a dados, ou, suas classes de negócio. consegue?[/quote]

Aqui ficou um pouco confuso.
Uma coisa é construir um prédio a partir do 2º andar. Outra coisa é separar as camadas de uma típica aplicação MVC no desenvolvimento.

Em equipes um pouco maiores (em alguns casos), ocorrem separações. Equipe A desenvolve camada de negócio, Equipe B desenvolve persistência (acesso a dados) e Equipe C fica responsável da apresentação.

Com uma estrutura bem definida, todas as equipes conseguem desenvolver em paralelo.
Mas lembre-se:
Aqui estamos falando de desenvolvimento de funcionalidades!

Voltando a analogia, o serralheiro não precisa esperar o pedreiro terminar de construir as paredes para começar a fazer uma janela ou grade, desde que saiba exatamente o que o pedreiro esta fazendo (o tamanho do vão que será deixado para colocação da janela/grade).

Ou seja, um não atrapalha o outro desde que haja uma prévia definição para ambos os lados. O serralheiro sabe que tem que fazer uma janela com as medidas x,y e z. Por outro lado o pedreiro sabe que precisa deixar um vão na parede que esta construindo com as medidas x, y e z.

Diferente do assunto tratado: ESTILIZAÇÃO.

O pintor não pode começar a pintar a parede (decoração) enquanto o pedreiro não terminar de construir. Mas, o pintor, nesse meio tempo, pode ir definindo como serão as coisas na arte final (prototipação).

[/quote]

Desenvolver funcionalidades não é criar software?

Em uma construção de um prédio tbm ocorrem separação de equipes. O problema é que, lá, não há como mandar alguem trabalhar no 2° nível se ele ainda não foi concluído. A divisão nesse caso é feita por tarefas em cima de uma mesma coisa. Por exemplo, se eu não posso colocar fulano para construir o segundo nível pq ele ainda não está pronto, devo então colocá-lo para ajudar ciclano na construção do primeiro. Simples. Agora dê exemplos disso acontecendo no desenvolvimento de um software.

Vamos lá, ESTILIZAÇÃO

Se eu sei que minha página terá 3 campos, e que terei de salvar as informações preenchidas nele em banco. qual o problema de fazer primeiro o html?
qual o problema de criar a lógica primeiro? Se eu quiser fazer primeiro a lógica, ótimo. Não me interessa se o html foi feito com td tr ou com css.

Sinceramente eu não entendo pq as pessoas querem comparar construção de software com construções de prédios, pontes, estradas, etc. Casas são casas,
softwares são softwares. Como eu falei lá em cima, podem ter coisas em comum, mas ter coisas em comum não significa ser a mesma coisa e nem que devem
ser tratadas de maneira semelhante.

Bom, Engenharia Civil reflete bem a arte de desenvolver software?
Você que comparou a igualdade da Engenharia Civil e Engenharia da Computação sem saber o que é engenharia.
As considerou “mesma coisa” por começar com “Engenharia”.
Você nem leu o próprio link que mandou no seu post, se tivesse lido, iria ver que existem mais de 100 tipos de engenharia.
Lamentável.

Título do tópico Programar Primeiro, estilizar depois - WEB

Programar = dar instruções ao computador…etc (no caso em Java)
Estilizar = Colocar a mão no html para criar/editar os recurosos visuais.

[quote=osmio]Bom, às coisas são atribuídas nomes de acordo com sua especialidade.
Por exemplo:
VENDEDOR - Não se refere ao produto que vendo. E sim ao ato…[/quote]

Já que vc compara criação de software com criação de casas, eu concluo o seu raciocínio assim:

  • Vender roupas é igual a vender bombas de piscina, afinal, é só ser vendedor.

Que ordem vc se refere?
aqui no trabalho não somos obrigados a esperar a camada de acesso a dados ser concluída para iniciarmos o desenvolvimento da camada de negócios.

Não entendi o pq dessa máxima, mas vamos lá.

Se vc não sabe se eles vão existir para que criá-los? A fase de análise de um projeto de software pode ser comparada com a de uma construção de casa. Ambas precisam ser estudadas e modeladas. Se vc não sabe se um campo vai existir, nem especificação o seu projeto tem e é melhor nem começar. Como contruir uma casa sem saber se ela terá 50m quadrados ou 100?
É como eu mandar criar uma porta sem saber se ela será usada. faz sentido?

[quote=osmio]O pintor não pode começar a pintar a parede (decoração) enquanto o pedreiro não terminar de construir. Mas, o pintor, nesse meio tempo, pode ir definindo como serão as coisas na arte final (prototipação).

E pintor tem a ver com construção de casa?

[quote=osmio]E não comparei por completo. Apenas mencionei a precedência de duas coisas.

…Quando se constrói uma casa, primeiro são feitas as fundações ou a decoração dos ambientes? [/quote]

Isso não é “comparar por completo”?
Onde está o meio-termo dessa pergunta?

[quote=osmio][quote=el_loko]Título do tópico Programar Primeiro, estilizar depois - WEB
Programar = dar instruções ao computador…etc (no caso em Java)
Estilizar = Colocar a mão no html para criar/editar os recurosos visuais.
[/quote]
Conclusões finais:

Voce não sabe a diferença entre programar em HTML e estilizar aspectos visuais.
Discutiremos arquitetura em data futura! Acumule um pouco mais de conhecimento.[/quote]

Primeiro não estou preocupado se vc está convencido ou não com o que falei. Segundo, não estou preocupado com o seu complexo de arquiteto de software.
Terceiro, se vc realmente soubesse oq está falando, não se preocuparia em responder a esse tópico com tamanha ignorância.

[quote=wilsontads]é melhor fazer assim…
ou pegar uma página ja estilizada pra trabalhar?[/quote]

Nenhum dos dois.
Voc faz a página e a estiliza à medida que vai.

Se vc já parte de uma estilização anteriro como um wireframe vc precisa constantemente aplicá-la em todas as páginas que criar. E vc vai criar mais páginas que o designer.

O correto é componentizar os estilos e compor as páginas com esses estilos agrupados. Existem muitas formas de fazer isso dependendo da tecnologias web que está utilizando.

Não se engane pensando que apenas o CSS irá resolver todos os problemas de estilo. Não vai. Vc precisa de componentes visuais. Normalmente criados com taglibs ou tag files se estiver usando jsp.

[quote=wilsontads]é melhor fazer assim…
ou pegar uma página ja estilizada pra trabalhar?[/quote]

Quando se constrói uma casa, primeiro são feitas as fundações ou a decoração dos ambientes?