Como construir um site dinâmico

Os aspectos desta questão são tão grandes, e as possíveis abordagens são tão variados que qualquer resposta realista as inevitáveis ​​perguntas só pode apontar para questões gerais.


Muitas pessoas hoje querem e esperam para construir sites dinâmicos (data-driven), cujas arquiteturas pode rapidamente acomodar novos materiais, revisões e interações com os visitantes. WikiHow, por exemplo, é um local de dinâmica. Embora o objetivo de projectos de qualidade está disponível para qualquer pessoa diligente seria um erro subestimar o que é, em última análise uma tarefa substancialmente desafiador, especialmente em termos de objetos técnicos de qualquer projeto potencial. Mesmo os mais simples presenças web dinâmicas exigem habilidades em várias disciplinas.


Para atingir as metas necessárias, ninguém pode desviar-se um bom projeto para o banco de dados. Preparar somente nesta disciplina é já uma parte substancial (mas não exclusivo) do trabalho. Uma vez que temos um resumo dos objetivos do projeto, devemos visualizar meios sólidos para alcançá-los. Então nós temos que escolher as linguagens de programação ou ferramentas, com base em uma visão da arquitetura ideal para o projeto.


Ver o retrato grande desde o início é o mais fundamental de todas as habilidades.

passos

1
Determinar que tipos de ferramentas e processos irá cumprir suas metas. Desde que o núcleo de qualquer presença na web dinâmico é o seu banco de dados e processamento de dados, o nosso primeiro objetivo é fazer com que as decisões do banco de dados do motor vital de longo prazo. Não é uma boa idéia de esperar para tomar essa decisão de ânimo leve com base apenas em uma maneira aparentemente razoável inicial.
  • O objectivo essencial desta primeira decisão é planejar o nosso projeto de uma forma (com ferramentas e mecanismos de banco de dados) atenda às suas necessidades ao longo de todo o caminho em que, para tomar as decisões iniciais certas, terá construído de forma eficiente e sem quaisquer obstruções nas bases iniciais. Isto significa que, idealmente, por exemplo, o motor de base de dados que não escolher simplesmente o mais fácil, ou que parece ser mais simples de implementar hoje, desde o princípio, deve ser um motor que suporta todas as exigências processamento adicional.
  • Às vezes, considerações comerciais afetam essas escolhas ainda mais. O que os motores requerem mais manutenção (e custos)? O que os motores são de manutenção praticamente livre para apoiar os objetivos de transformação para um possível projeto? Em geral, o padrão é a seguir para seleccionar o motor com base em um dos dois arranjos possíveis.
  • Para fazer isso, você deve primeiro fazer um retrato das necessidades básicas das tabelas. Um profissional nem sequer precisa para montar este mapa (se envolvendo centenas ou milhares de tabelas), porque eles tendem a ver imediatamente se futuras necessidades arquitetônicas você precisar de centrar o apoio em leitura ou escrita. Em seguida, você vai escolher uma base adequada para dados com base nesta disposição geral, e talvez o seu gosto pessoal e experiência, uma vez que envolve o uso de certas ferramentas de desenvolvimento. MySQL é muitas vezes a escolha para implementações focadas na leitura. Muitos desenvolvedores que procuram bancos de dados como PostgreSQL para implantações confiáveis ​​focada na escrita. Desenvolvemos nossas provisões para essas ferramentas vitais através de uma pesquisa cuidadosa, e fornecer fontes de água na experiência global da indústria de desenvolvimento de software. Geralmente você pode evitar os custos, porque há muito boas ferramentas livres. O que estamos procurando é o desempenho em ambientes com foco leitura ou escrita, confiabilidade, simplicidade, administração minimizando e rápida integração com os potenciais ferramentas de desenvolvimento de software.


  • 2
    Escolha ferramentas para desenvolvimento de software. Existem dois padrões para considerar quando ferramentas de desenvolvimento de software são escolhidos. ferramentas alegadamente fácil raramente realmente fácil quando um projeto inevitavelmente rompe o desenvolvimento shell e funcionalidade que as ferramentas fácil muitas vezes limitado. Se você queria fazer alguma coisa para além da capacidade de ferramentas fácil, incorporar parâmetros como tradução ou gerado dinamicamente URIs, você pode achar que é tão difícil que, eventualmente, necessitam de habilidades de programação extremamente sofisticados para forçar a ferramenta fácil para executar tarefas mais complexas. Nós deve dominar nossas ferramentas para construir bons projetos. Isso não faz ferramentas fáceis a melhor opção, ou ferramentas sofisticadas uma proposta difícil. A armadilha de desenvolvimento fácil o que frequentemente envolve a eliminação dos obstáculos revelar-se demasiado caro na evolução inevitável dos projectos. No geral, verificou-se que as ferramentas mais sofisticadas e poderosas que seguem padrões aceitáveis ​​(ou têm uma variedade de objetos e bibliotecas disponíveis) não só aliviar as obstruções inevitáveis ​​que surgiriam para as ferramentas mais fáceis, mas também fazer a chegar lá é um processo muito mais simples. Quando examinamos a extensão de ferramentas disponíveis, geralmente aparecem modelos menos abrangentes em conceitos iniciais de desenvolvimento e conceitos estar emergindo melhores ferramentas mais tarde (ou não tem chances de sobreviver em mercados que já foram conquistados) são oferecidos. Se escolhermos uma suposta fácil, o que realmente queremos é um padrão de desenvolvimento que é tanto tempo gerenciável e livre de quaisquer obstruções. O paradoxo para o principiante é a dificuldade de visualizar o futuro para detectar obstruções num determinado conjunto de ferramentas de programação. Minha inclinação pessoal, e de acordo com minhas observações, é que as melhores ferramentas são os mais poderosos e oferecendo menos restrições em termos de abordagem do projeto. Então, a liberdade para desenvolver o que você quer e precisa, muitas vezes significa quebrar o modelo geral das ferramentas aparentemente simples, cujos desafios podem vir a quebrar as mentes dos engenheiros veteranos e software sofisticado, porque para ter sucesso em tal tarefa significa atingir o modelo fácil fazer algo que ele não tem uma habilidade inata. Por exemplo, Ruby é realmente uma ferramenta simples que o fundamento C ++ ou C #? Não. Nem por isso, especialmente se você precisa para quebrar o modelo simples de Ruby para uma funcionalidade vital. Como Ruby, GCC é livre para Linux e OSX. Rubi também vem à OSX, você só tem que descobri-lo em seu sistema. ferramentas alegadamente fácil, Minha escolha pessoal é Ruby. Das ferramentas muito sofisticadas, C ++ e C # vai continuar a dominar, a longo prazo, ea verdade é que eles são apenas veículos para desenvolver se obstruções. Então você deve preparar-se para estudar a sério, porque não importa o caminho que você escolher, você deve dominar não só as suas ferramentas, mas modelos potencialmente restritivas que essas ferramentas acabará estorbándote. Ruby é, provavelmente, muito mais limpo do que quase todos os seus pares "fáceis". C ++ é a ferramenta irrestrita por excelência e, na verdade, os especialistas veteranos recorrer a projectos sem sequer provavelmente com muito menos dificuldade do que se tentassem realizar os mesmos objetivos com uma suposta fácil. No final, os desenvolvedores que se esquecem esta observação vai pagar caro: ou escolher a ferramenta fácil, ou preocupar-se menos sobre os obstáculos das ferramentas mais sofisticadas. Neste último caso, você pode dominar os objetos FastCGI, tomar a bola e correr. conceitos maiores são frequentemente implementados com pouco código. Sim, as ferramentas simples pretendem fazer o mesmo, mas abstraindo de dificuldades de uma forma que acaba tornando-se desviam resultar em desafios muito difíceis de superar, além de limitações de desempenho que C ++ poderia resolver.


  • 3
    Enquanto nós resolver esses problemas, inevitavelmente teremos que examinar os modelos básicos para desenvolver projectos de natureza que queremos. Isto significa que você tem que fazer o melhor literatura para as ferramentas que você deseja comparar, e pelo menos dar o nosso conceito de qualquer forma que podem ser abordados por um ou outro conjunto de ferramentas. Antes de escolher Ruby, por exemplo, você pode querer ler livros importantes como "A Linguagem de Programação de Ruby" (A linguagem de programação Ruby), e "Desenvolvimento Web ágil com Rails" (Desenvolvimento Web Ágil com Rails). Seu estudo inicial deve não só alcançar a dominar as ferramentas, você também deve mostrar-lhe como chegar lá, como você pode fornecer a funcionalidade desejada com a ferramenta que escoas. É uma tarefa difícil para iniciantes. Se você estiver indo para comparar um ambiente de desenvolvimento supostamente fácil com o melhor dos melhores, você terá que avaliar também as melhores ferramentas C. Se você realmente quer se tornar um engenheiro veterano, você vai escolher C por sua falta de limitações. ¿C é realmente mais difícil? No. A sintaxe é que, sintaxe. Em última análise, você deve dominar a expressão da mesma functionality- e verdade, a família C de línguas é excelente. A dificuldade de excelência com C ++ está em ter que mergulhar em modelos em que você pode precisar para construir. Um excelente começo, desde há quase 15 anos foram os componentes originais do FastCGI, que estão disponíveis no CPPBuilder Borland, provavelmente o melhor C ++ para Windows. Mesmo iniciantes C pode ir embora com estas abordagens orientadas a objeto, porque o modelo geral de funcionalidade sustentável é construído sobre as mesmas coisas que você está indo para o trabalho. Seu trabalho terá um muito mais livre do que poderia ter com Ruby, por exemplo, sempre que você precisa para quebrar ou exceder modelo de fluxo de rubi na sua abordagem. Por outro lado, as técnicas de andaimes acelerar muito trabalho Rails iniciante, se e somente se o projeto se encaixa no molde geral do Ruby e Rails. Por exemplo, você pode inserir as disposições de segurança rudimentares, reconhecidos em todas as interfaces de Ruby, mas você acaba reescrevendo milhares de linhas de código Ruby auto-gerado para cada tabela para negociar a sua aplicação. É assim tão fácil? Bem, eu faço um editor Windows chamado NoteTab, operando em objetos Ruby que residem em um sistema OSX-sofisticado existem macros que fazem os comentários, talvez, em um segundo, personalizando milhares de linhas de código em quase o dobro. Da mesma forma, isso é relativamente simples funcionalidades básicas, para que um projeto é restrito. O fato é que em C ++ pode escrever seus próprios objetos para lidar com essas tarefas de uma forma nunca necessidade realmente universal, mesmo replicar o processo. Estes são os trade-offs. No final, o orientado a objetos C é a ferramenta mais poderosa e eficiente. O que significa também que é o trabalho que custa menos.


  • Não importa o que sua escolha de ferramentas, não há nenhuma maneira de evitar depender de um conhecimento razoável de HTML e CSS. Em geral, os desenvolvedores estão se voltando para veteranos W3C.org para materiais importantes.

    dicas

    • Não há nada que possa substituir um estudo e avaliação completa.
    • Uma parte vital do nosso desafio será aproveitar os melhores recursos. Eu começo com Ruby e se você quer se destacar, você tem que avaliar os C linguagens e ambientes em que os projectos bem escritos excedem todos os seus pares orientados a objeto.

    avisos

    • Nunca pense que um atalho de aparente realmente acelerar o seu trabalho. Muitas vezes, o oposto é verdadeiro.
    • Um impedimento adicional para realmente dominar as ferramentas simples é um comportamento pouco profissional em muitos fóruns. Há uma grande diferença entre um conhecimento profissional e habilidades fingiu quantas vezes pode levá-lo para longe do caminho certo. As melhores fontes de informação são muitas vezes os colegas mais famosos, e não professores supostas ferramentas supostamente simples que simplesmente aconselhados a ficar com o único padrão que sabem. A principal razão que você enviar perguntas para os fóruns é quando você precisa para superar (e, portanto, quebrar) o modelo dentro da abordagem supostamente simples. Quando você inevitavelmente se encontrar com estas necessidades, você precisa do melhor conselho possível.
    Artigos Relacionados