Web
designer Profissional com Gestão em Programação
e Banco de Dados
Web design pode ser
visto como uma extensão da prática do design,
onde o foco do projeto é a criação de
web sites e documentos disponíveis no ambiente da web.
O web design tende à
multidisciplinaridade, uma vez que a construção
de páginas web requer subsídios de diversas
áreas técnicas, além do design propriamente
dito. Áreas como a arquitetura da informação,
programação, usabilidade, acessibilidade entre
outros.
A preocupação
fundamental do web designer é agregar os conceitos
de usabilidade com o planejamento da interface, garantindo
que o usuário final atinja seus objetivos de forma
agradável e intuitiva.
Planejamento estratégico
Como todo trabalho de design, ele é um projeto, e necessita
uma análise informacional, a partir de um briefing.
Detectar corretamente o objetivo do projeto é essencial
para um bom planejamento, de modo que as ações
sejam tomadas de forma correta.
É sempre necessário
definir o público alvo do site, o objetivo, os serviços
oferecidos, o diferencial para o público. A partir
desses e de outros elementos que sejam específicamente
relevantes ao projeto, será definida a estrutura do
site (Arquitetura de informação), a tecnologia
empregada e o layout.
De uma forma geral,
embora usualmente possa parecer que a primeira impressão
que se tem de um site é o visual, na verdade o visitante
busca o conteúdo, por esse motivo o primeiro passo
estratégico é definir bem todas as informações
que o site terá, definir claramente a arquitetura de
informação do site e por último, o design
visual do site, que não precisa pular, girar e piscar,
a não ser que o que se esteja vendendo é design/imagem
(que não se aplica ao meio informacional que é
a Web), mas ter um aspecto profissional seguindo pelo menos
os conceitos básicos do design como aproximação,
contraste, alinhamento, dentre outros.
Há uma diferença
conceitual marcante entre design nos meios tradicionais, como
no gráfico e o design aplicado na web. Na web, a estética
deve ser moldada ao dispositivo que acessa ao site ou mesmo
desabilitada caso não seja necessária no contexto
de utilização. No meio gráfico é
possível prever como o usuário final verá
a estética do produto, já na web isto não
é possível, pois a aparência pode e deve
mudar radicalmente de acordo com o sistema operacional utilizado,
configurações pessoais, navegadores, resoluções
de tela e dispositivos, como celular, TV, impressora, leitores
de telas etc. Por este motivo, a informação
(HTML) deve trabalhar independente da formatação
(CSS) e do comportamento (scripts), que são recomendações
do W3C.
Em Gestão
de Qualificação com Programação
e Banco de Dados destacamos !
Estrutura
A estrutura, também conhecida como arquitetura de informação,
do site deve contemplar seu objetivo, tornando a experiência
do usuário a mais confortável e fácil
possível, chamamos isso de usabilidade. Deve-se planejar
a estrutura de forma que o usuário obtenha facilmente
a informação ou serviço desejado. Hoje
em dia são inúmeras as formas que um site pode
adquirir e a criatividade continua ser o grande diferencial
na produção de web.
Layout
O layout precisa transmitir a informação desejada
com eficiência. É preciso que o layout seja um
elo de comunicação com o usuário, que
sua linguagem seja condizente com o objetivo do site. Conhecer
heurísticas de usabilidade é fundamental para
se gerar layouts para a web.
Cada elemento inserido
em um website deve ter um objetivo, a perfeição
de um website se atinge quando não há nada a
ser retirado e não quando não há nada
mais a ser inserido.
A maioria dos layouts
antigos dos sites da Web eram feitos com tabelas na linguagem
HTML, porém esta forma é inapropriada pois tabelas
devem ser utilizadas apenas para exibir dados tabulados. Entretanto
existem layouts que são completamente produzidos sem
a presença de tabelas, sao os famosos "tableless"
e esta sim é a melhor forma de estrutura para layouts.
Navegadores
São programas responsáveis por interpretar o
conteúdo de um web site, disponibilizando assim a interface
com a qual o usuário final irá interagir. O
navegador está para o web design assim como o papel
está para o jornal. A grande variedade de navegadores
e discrepância entre os recursos fez seus próprios
criadores caminharem em direção a um padrão
comum. Atualmente é indispensável criar sites
seguindo os padrões da W3C.
No desenvolvimento do
site, o HTML deve ser criado seguindo os padrões do
W3C (Web Standards) de forma que fique funcional, independente
dos dispositivos (TV, celular, impressora, monitor etc). Apesar
de em tese não haver a necessidade de testar em diversos
navegadores, é um bom hábito testar em mais
de um navegador (Firefox, Internet Explorer, Netscape, Opera,
Safari, Chrome e outros), pois o layout do site pode apresentar
diferenças em determinados navegadores, e o usuário
que navega não entenderá o que está acontecendo.
Padrões
A World Wide Web Consortium (W3C) é o órgão
responsável por recomendar padrões de desenvolvimento
para a internet. Por meio destes padrões se pode classificar:
web sites de acordo com suas características técnicas,
indo além do visual e; navegadores, de acordo com sua
capacidade em atender aos padrões definidos.
O grande objetivo de
seguir os padrões do W3C é de possibilitar que
a informação veiculada pelo site permaneça
independente do dispositivo utilizado pelo visitante e que
seja acessível
Programação
é o processo de escrita, teste e manutenção
de um programa de computador. O programa é escrito
em uma linguagem de programação, embora seja
possível, com alguma dificuldade, escrevê-lo
directamente em linguagem de máquina. Diferentes partes
de um programa podem ser escritas em diferentes linguagens.
Diferentes linguagens
de programação funcionam de diferentes modos.
Por esse motivo, os programadores podem criar programas muito
diferentes para diferentes linguagens; muito embora, teoricamente,
a maioria das linguagens possa ser usada para criar qualquer
programa. Para mais informações sobre estes
métodos, veja Linguagem de programação.
Software é um
nome colectivo para programas de computadores e dados.
Há várias
décadas se debate se a programação é
mais semelhante a uma arte (Donald Knuth), a uma ciência,
à matemática (Edsger Dijkstra), à engenharia
(David Parnas), ou se é um campo completamente novo.
Programas ou
algoritmos?
Um algoritmo é uma sequência de passos para realizar
uma tarefa ou resolver um problema. Em nosso dia a dia utilizamos
algoritmos para realizar nossas atividades, definindo a sequência
de atividades que devemos fazer para atingir um objetivo.
Um algoritmo é,
num certo sentido, um programa abstrato — dizendo de
outra forma, um programa é um algoritmo concretizado.
No entanto, os programas são, à excepção
dos menores, visualizados mais facilmente como uma colecção
de algoritmos menores combinados de um modo único —
da mesma forma que uma casa é construída a partir
de componentes.
Dessa forma, um algoritmo
é uma descrição de como um computador
pode ser levado a executar uma operação simples
e específica, como, por exemplo, uma ordenação.
Um programa, por outro lado, é uma entidade que na
verdade implementa uma ou mais operações de
forma que seja útil para as pessoas.
Engenharia de software
A criação de um programa de computador consiste
de cinco passos principais:
Reconhecer a necessidade
de um programa para resolver um problema.
Planificar o programa e seleccionar as ferramentas necessárias
para resolver o problema.
Escrever o programa na linguagem de programação
escolhida.
Compilação: tradução do código
fonte legível pelo homem em código executável
pela máquina, o que é feito através de
compiladores e outras ferramentas.
Testar o programa para ter a certeza de que funciona; se não,
regressar ao passo 3.
Estes cinco passos são colectivamente conhecidos como
engenharia de software. A programação põe
ênfase nos passos 2, 3 e 4. A codificação
põe ênfase no passo 3. O termo coder, por vezes
usado como sinônimo para programador, pode tornar-se
aviltante porque ignora as capacidades necessárias
para lidar com os outros quatro passos.
História
Hero de Alexandria no século primeiro inventou teatros
automatizados que usavam programação análoga
para controlar os fantoches, portas, luzes e efeitos de som.
A mais antiga programadora
de computadores que se conhece é Ada Lovelace, filha
de Anabella e de Lord Byron (o poeta). Anabella transmitiu
a Ada o seu amor à matemática, a qual, depois
de conhecer Charles Babbage, traduziu e expandiu uma descrição
da sua máquina analítica. Muito embora Babbage
nunca tenha completado a construção de nenhuma
das suas máquinas, o trabalho que ele e Ada desenvolveram
sobre elas, garantiu a Ada o título de primeira programadora
de computadores do mundo (veja as notas de Ada Byron sobre
a máquina analítica. A linguagem de programação
Ada recebeu o seu nome.
Um dos primeiros programadores
que se tem notícia de ter completado todos os passos
para a computação sem auxílio, incluindo
a compilação e o teste, é Wallace J.
Eckert. O trabalho deste homem antecede a ascensão
das linguagens de computador, porque ele usou a linguagem
da matemática para solucionar problemas astronômicos.
No entanto, todos os ingredientes estavam lá: ele trabalhou
um laboratório de computação para a Universidade
de Columbia com equipamentos fornecidos pela IBM, completes
com uma divisão de serviço de atendimento ao
cliente, e consultores de engenharia para propósitos
especiais, na cidade de Nova York, na década de 1930,
usando cartões perfurados para armazenar os resultados
intermediários de seus cálculos, e então
formatando os cartões perfurados para controlar a impressão
das respostas, igual ao trabalho para os censos décadas
antes. Tinha técnicas de debug tais como códigos
de cores, bases cruzadas, verificação e duplicação.
Uma diferença entre Eckert e os programadores dos dias
de hoje é que o exemplo do seu trabalho influenciou
o projeto Manhattan. Seu trabalho foi reconhecido por astrônomos
do Observatório da Universidade de Yale, Observatório
da Universidade de Princeton, Observatório da Marinha
dos EUA, Observatório da Faculdade Harvard, Observatório
dos estudantes da Universidade da Califórnia, Observatório
Ladd da Universidade de Brown e Observatório Sproul
da Faculdade de Swarthmore.
Alan Turing é
frequentemente encarado como o pai da ciência de computadores
e, por afinidade, da programação. Ele foi responsável
por ajudar na elaboração e programação
de um computador destinado a quebrar o código alemão
ENIGMA durante a Segunda Guerra Mundial — ver Máquina
Enigma.
Bancos de dados
(ou bases de dados), são conjuntos de registros dispostos
em estrutura regular que possibilita a reorganização
dos mesmos e produção de informação.
Um banco de dados normalmente agrupa registros utilizáveis
para um mesmo fim.
Um banco de dados é
usualmente mantido e acessado por meio de um software conhecido
como Sistema Gerenciador de Banco de Dados (SGBD). Normalmente
um SGBD adota um modelo de dados, de forma pura, reduzida
ou estendida. Muitas vezes o termo banco de dados é
usado como sinônimo de SGDB.
O modelo de dados mais
adotado hoje em dia é o modelo relacional, onde as
estruturas têm a forma de tabelas, compostas por tuplas
(linhas) e colunas
Utilização
Os bancos de dados são utilizados em muitas aplicações,
abrangendo praticamente todo o campo dos programas de computador.
Os bancos de dados são o método de armazenamento
preferencial parabaseiam-se em tecnologias padronizadas de
bancos de dados.
Um banco de dados é
um conjunto de informações com uma estrutura
regular. Um banco de dados é normalmente, mas não
necessariamente, armazenado em algum formato de máquina
legível para um computador. Há uma grande variedade
de bancos de dados, desde simples tabelas armazenadas em um
único arquivo até gigantescos bancos de dados
com muitos milhões de registros, armazenados em salas
cheias de discos rígidos.
Bancos de dados caracteristicamente
modernos são desenvolvidos desde os anos da década
de 1960. Um pioneiro nesse trabalho foi Charles Bachman.
Apresentação dos dados
A apresentação dos dados geralmente é
semelhante à de uma planilha eletrônica, porém
os sistemas de gestão de banco de dados possuem características
especiais para o armazenamento, classificação,
gestão da integridade e recuperação dos
dados. Com a evolução de padrões de conectividade
entre as tabelas de um banco de dados e programas desenvolvidos
em linguagens como Java, Delphi, Visual Basic, C++, etc, a
apresentação dos dados, bem como a navegação,
passou a ser definida pelo programador ou o designer de aplicações.
Como hoje em dia a maioria das linguagens de programação
fazem ligações a bancos de dados, a apresentação
destes tem ficado cada vez mais a critério dos meios
de programação, fazendo com que os bancos de
dados deixem de restringir-se às pesquisas básicas,
dando lugar ao compartilhamento, em tempo real, de informações,
mecanismos de busca inteligentes e permissividade de acesso
hierarquizada.
|