Uniplac - Graduação - Sistemas de Informação - Desenvolvimento Web - Plano de Ensino





PLANO DE ENSINO

2024/1


CURSO

Sistemas de Informação

ESTRUTURA CURRICULAR

Sistemas de Informação Par786/17

PROFESSOR

Luciano Coelho


DISCIPLINA

Nome

Cód.

Sem.

Créditos

C. Horária

Desenvolvimento Web

0-18428

4

80


EMENTA

PLANO DE ENSINO

2019/2

 

CURSO

Sistemas de Informação

ESTRUTURA CURRICULAR

3

PROFESSOR

Luciano Coelho

 

DISCIPLINA

Nome

Cód.

Sem.

Créditos

C. Horária

Desenvolvimento WEB

0-18428

4

4

80

 

EMENTA

Técnicas de desenvolvimento WEB. Aplicações dinâmicas integradas a banco de dados. Frameworks de persistência de dados. Arquitetura em camadas. Versionamento.

OBJETIVO GERAL

Ao termino da disciplina os alunos deverão estar aptos para construir aplicações WEB integradas com banco de dados.

OBJETIVOS ESPECÍFICOS

Conhecer todo ambiente de desenvolvimento web;

Demonstrar visão prática do desenvolvimento de sistemas web e das principais técnicas que o compõem;

Utilizar técnicas de versionamento;

Integrar os conhecimentos e habilidades desenvolvidas sobre HTML, CSS, JavaScript, Banco de Dados e todas as relacionadas a programação para desenvolver sistemas web;

Utilizar técnicas de arquitetura em camadas;

Utilizar os serviços de infraestrutura para o desenvolvimento de aplicações como, por exemplo, sistema de bancos de dados e o servidor HTTP;

Comprovar entendimento do quão importante é atualmente, o desenvolvimento de aplicações web com uma experiência de usuário fluída e melhorada, tal como, no mercado atual, a importância de absorver o acesso dos dispositivos móveis através de um desenvolvimento aplicações responsivas.

 

CONTEÚDO PROGRAMÁTICO

UN.

CONTEÚDOS

C.H.

ESTRATÉGIAS*

0

=> Apresentação da disciplina

=> Apresentação do plano de ensino

=> Apresentação Projeto Integrador

2

AEX

1

=> Introdução ao Desenvolvimento Web

==> Paradigmas no desenvolvimento web

==> Protocolos HTTP e HTTPS

==> Principais linguagens e frameworks

==> Conceito e separação de cliente e servidor

==> Client-Side (linguagens de script, applets java, etc)

==> Server-Side (Python, CGI, ASP, PHP, JSP, C# etc)

6

AEX, APE, ARM, ED, EX, LAB

2

=> Versionamento

=> Como funciona

=> Centralizado

=> Distribuído

=> Ferramentas

==> CVS, Subversion, TFS, Mercurial, GIT

=> GIT

==> Estrutura básica

==> Repositórios WEB

==> Trabalhando com repositório online

==> Instalação local

==> Git Bash

==> Fluxo de trabalho

==> Trabalhando com Branches – ramificações

==> Atualizar & mesclar – localmente

==> Issues versus Branches

==>.gitignore
==> Release

==> Principais comandos

===> init, clone, branch, status, add, commit, push, reset, checkout, pull, merge, diff, log, rm, mv, mergetool, stash, tag, fetch, fork

8

 

3

=> Infraestrutura para desenvolvimento de aplicações WEB

=> Técnicas de desenvolvimento WEB

=> Principais tecnologias

=> Python

=> Configurações e Instalações

=> Frameworks

=> Criando um Ambiente Flask

=> Criando seu primeiro WebApp

=> Comentários

=> Variáveis

=> Conversões

=> Tipos de dados

=> Objetos

=> Operadores: lógicos, aritméticos, comparação

=> Comandos de decisão

=> Operador ternário

=> Range

=> Laço de repetição

=> Exceções

=> Listas

=> Funções

=> Arquivos

=> Arquitetura em camadas

=> Estrutura de arquivos e pastas

=> Como funciona uma rota

=> Criando uma página de erro de rotas

=> URL amigável

=> Formulários e interação com aplicação

==> Como funciona um template

==> Recursos do template

==> Usando variáveis no HTML

==> Usando condicionais no HTML

==> Usando laços repetição no HTML

==> Recuperando informações através do GET e POST

=> Criando e gerenciando sessões

==> Secretkey

==> Criando um sessão

==> Recuperando uma sessão

==> Excluindo uma Sessão

==> Restrição de acesso usando sessão

20

AEX, APE, ARM, ED, EX, LAB

4

=> Integração de aplicações com banco de dados

=> Resgate conceitos básicos banco de dados e Linguagem SQL

=> Instalação, configuração e manutenção do Sistema Gerenciador de Banco de Dados

=> Frameworks de persistência de dados.

=> O que é um dataset

=> Integração de scripts web Python com bancos de dados para conexão, consultas, criação de tabelas, inserção de dados, atualização de dados, exclusão de dados, apresentação dos resultados capturados em páginas HTML

=> Codificação de formulários dinâmicos

 

=> Aplicações dinâmicas integradas a banco de dados.

=> Criação de uma aplicação Web completa com persistência dos dados em banco de dados.

28

AEX, APE, ARM, ED, EX, LAB

5

=> Exemplificação de um CRUD utilizando Angular, Node.js, express.js ou outras tecnologias similares

16

AEX, APE, ARM, ED, EX, LAB

 

TOTAL DE HORAS

80

 

6

Conforme o Art. 4º da Resolução do CONSUNI nº 292/2017, os alunos cumprirão em 16 aulas adicionais a seguinte Atividade Prática Extraclasse: PROJETO INTEGRADOR

APE/TIG/ED

 

*Descrição das Estratégias:

AEX - Aula expositiva dialogada; APE – Atividades Práticas Extraclasse; ARM – Aula com Recursos Multimídia;  DG – Dinâmicas de Grupo; DM – Dramatização; EC – Estudo de Caso; ED - Estudo Dirigido; ET – Estudo de Texto; EX – Exercício de Fixação; FR – Fórum; LAB – Aula em Laboratório; MAC - Mapeamento Conceitual; PAL – Palestra; SE – Seminário; SI – Simulação; TG - Trabalho em Grupo; TIG – Trabalho Integrado e em Grupo; TI - Trabalho Individual; VT - Visitas Técnicas.

 

SISTEMÁTICA DE AVALIAÇÃO

CONHECIMENTOS

Testes de conhecimento, atividades propostas.

HABILIDADES

Eficiência e eficácia das soluções apresentadas para a resolução das atividades propostas.

ATITUDES

Pontualidade, assiduidade, contribuição para o bom andamento das aulas, participação nas atividades propostas, pró-atividade, trabalho em equipe, responsabilidade, respeito, sigilo profissional, postura profissional, uso das tecnologias em sala somente com foco educacional.

OUTRAS

 

DATAS PREVISTAS

Avaliação1

Unidades

C

H

A

Valor

Data2

Recuperação

Sim

Data

Avaliação Integrativa

Todas

X

X

X

2,0

 

 

 

Avaliação 02 – Prova teórica/prática

Todas

X

X

 

2,0

 

X

 

Avaliação 03 – Laboratórios práticos de desenvolvimento

Todas

X

X

 

1,0

 

 

 

Avaliação 04 – Avaliação prática

Todas

X

X

 

2,0

 

X

 

Avaliação 05 – Atitudes e Valores

Todas

 

 

X

1,0

 

 

 

Projeto Integrador3

Todas

X

X

X

2,0

 

 

 

¹ Datas e formatos das avaliações podem sofrer alterações mediante necessidade e andamento da disciplina.

² A data da avaliação não necessariamente deve ser apresentada, embora seja somente uma previsão.

³ Avaliação do Projeto Integrador entre as disciplinas: Engenharia de Software; Desenvolvimento WEB e User Experience, com apresentação pelos grupos em datas e horários definidas pelos professores das respectivas disciplinas.

 

 

 

 

 

 

 

 

 

 

 

 BIBLIOGRAFIA BÁSICA

1

CATUNDA, Marco. Guia de consulta rápida: Python. São Paulo: Novatec, 2001.

2

HAROLD, Elliotte Rusty. Refatorando HTML: como melhorar o projeto de aplicações web existentes. Porto Alegre: Bookman, 2010.

3

SOARES, Bruno Augusto Lobo. Aprendendo a linguagem PHP. Rio de Janeiro: Moderna, 2007.

 

BIBLIOGRAFIA COMPLEMENTAR

1

PERKOVIC, Ljubomir. Introdução à computação usando Python um foco no desenvolvimento de aplicações. Rio de Janeiro LTC 2016 1 recurso online ISBN 9788521630937.

2

CHICOLI, Milton. Criação de sites: HTML/CSS/JavaScript/Dreameweaver/Hospedagem e publicação. São Paulo: Digerati, 2008.

3

TRANSLEY, David; FREITAS, Rejane; CUNHA JÚNIOR, Alfredo Dias da. Como criar web pages rápidas e eficientes usando PHP e mySQL. Rio de Janeiro: Moderna, 2002.

4

SOARES, Walace. PHP 5: conceitos, programação e integração com bancos de dados. 2. ed. São Paulo: Érica, 2006.

5

LOBO, Edson J. R. Criação de sites em PHP. São Paulo: Digerati, 2007.

6

NIEDERAUER, Juliano. Desenvolvendo websites com PHP: aprenda a criar websites dinâmicos e interativos com PHP e banco de dados. São Paulo: Novatec, 2004.

7

STEFANOV, Stoyan. Padrões JavaScript. São Paulo: O'Reilly, 2010.

8

WELLING, Luke; THOMSON, Laura. PHP e MySQL: desenvolvimento web. 2. ed. Rio de Janeiro: Campus, 2003.

 

OBSERVAÇÕES

 

 

 


OBJETIVO GERAL

Ao termino da disciplina os alunos deverão estar aptos para construir aplicações WEB integradas com banco de dados.

OBJETIVOS ESPECÍFICOS

Conhecer todo ambiente de desenvolvimento web; Demonstrar visão prática do desenvolvimento de sistemas web e das principais técnicas que o compõem; Utilizar técnicas de versionamento; Integrar os conhecimentos e habilidades desenvolvidas sobre HTML, CSS, JavaScript; Banco de Dados e todas as relacionadas a programação para desenvolver sistemas web; Utilizar técnicas de arquitetura em camadas; Utilizar os serviços de infraestrutura para o desenvolvimento de aplicações como, por exemplo, sistema de bancos de dados e o servidor HTTP; Comprovar entendimento do quão importante é atualmente, o desenvolvimento de aplicações web com uma experiência de usuário fluída e melhorada, tal como, no mercado atual, a importância de absorver o acesso dos dispositivos móveis através de um desenvolvimento aplicações responsivas.


CONTEÚDO PROGRAMÁTICO

UN.

CONTEÚDOS

C.H.

1

• Apresentação da disciplina
• Apresentação do plano de ensino
• Apresentação Projeto Integrador

1

2

• Introdução ao Desenvolvimento Web
• Paradigmas no desenvolvimento web
• Protocolos
• Principais linguagens e frameworks
• Back-end e front-end
• Conceito e separação de cliente e servidor
• Client-Side e Server-Side

3

3

• Versionamento
o Centralizado
o Distribuído
o CVS, Subversion, TFS, Mercurial, GIT

• GIT
o Estrutura
o Repositórios WEB
o Repositórios local
o Git Bash
o Fluxo de trabalho
o Branches – ramificações
o Atualizar & mesclar
o Issues versus Branches
o .gitignore
o Release
o Principais comandos
? init, clone, branch, status, add, commit, push, reset, checkout, pull, merge, diff, log, rm, mv, mergetool, stash, tag, fetch, fork

12

4

• Infraestrutura para desenvolvimento de aplicações WEB
• Técnicas de desenvolvimento WEB
• Principais tecnologias
• Python
o Nivelamento: comentários, variáveis, conversões, tipos de dados, objetos, operadores (lógicos, aritméticos, comparação), comandos de decisão, operador ternário, range, laço de repetição, exceções, listas, funções, arquivos

• API — Application Programming Interface
• Arquitetura REST
• REST APIs
o Método HTTP
o Códigos de Status
o API Endpoints
• Construindo APIs REST
o Recursos
o Endpoints
o Formato de intercâmbio de dados
o Respostas de sucesso
o Respostas de erro
• Integração da API com banco de dados
o Resgate conceitos básicos DB e SQL
o Frameworks de persistência de dados.
o Integração com BD para conexão, consultas, criação de tabelas, inserção de dados, atualização de dados, exclusão de dados, retorno dos resultados
• Cross-Origin Resource Sharing (CORS)
• Testar WEB APIs REST

32

5

• Consumindo APIs REST
o GET, POST, PUT, PATCH, DELETE

• Criação de uma aplicação Web dinâmica consumindo a API REST implementada.
• Frameworks WEB
• Flask
• Arquitetura em camadas
• Estrutura de arquivos e pastas
• Rotas
• Formulários dinâmicos e interação com aplicação
• Template
• Gerenciamento de sessões

32

 

TOTAL DE HORAS

80 h

Avaliação 2 será Processual e Continua acontecendo com base nas entregas das atividades realizadas em todas as aulas. A recuperação dessa atividade acontecera automaticamente com uma nova entrega da atividade no prazo máximo de 7 dias após a inicial estipulada. Os materiais da disciplina e as atividades serão disponibilizadas na plataforma Google Classroom, o código da turma será disponibilizado via grupo da turma no WhatsApp. A frequência deverá ser indicada pelo(a) aluno(a), presencialmente, nos dois momentos que a chamada for realizada durante a aula. A ausência do(a) aluno(a) no período da aula deverá ser justificada à Coordenação do Curso, por meio de formulário disponível no Portal (justificativa de faltas).


Estratégias:ARS, AGM, AGC, AEX, APE, ARM, ED, EX, EC


SISTEMÁTICA DE AVALIAÇÃO

CONHECIMENTOS

Conteúdo proposto na ementa e no conteúdo programático, verificando através de laboratórios práticos se o aluno atingiu aos objetivos da disciplina.

HABILIDADES

Capacidade de resolução das atividades propostas e qualidade das implementações realizadas.

ATITUDES

Pontualidade e frequência em aula, assiduidade, contribuição para o bom andamento das aulas, participação nas atividades propostas, pró-atividade, trabalho em equipe, responsabilidade, respeito, sigilo profissional, postura profissional, uso das tecnologias em sala somente com foco educacional.

OUTRAS

DATAS PREVISTAS

Avaliação

Unidades

C

H

A

Valor

Data

Recuperação

Sim

Data

Avaliação 01 – Avaliação Integrativa

todas

x

x

x

3

A definir

Avaliação 02 – Laboratórios Práticos (processual e continua)

todas

x

x

x

4.5

A definir

x

A definir

Avaliação 03 – Avaliação prática

todas

x

x

x

2.5

A definir

x

A definir


 BIBLIOGRAFIA BÁSICA

1

CATUNDA, Marco. Guia de consulta rápida: Python. São Paulo: Novatec, 2001. 128 p. ISBN 8575522009-8

2

HAROLD, Elliotte Rusty. Refatorando HTML: como melhorar o projeto de aplicações web existentes. Porto Alegre: Bookman, 2010. 360p. ISBN 9788577806217

3

SOARES, Bruno Augusto Lobo. Aprendendo a linguagem PHP. Rio de Janeiro: Ciência Moderna, 2007. 161 p. ISBN 9788573935684


 BIBLIOGRAFIA COMPLEMENTAR

1

PERKOVIC, Ljubomir. Introdução à computação usando Python: um foco no desenvolvimento de aplicações. Rio de Janeiro: LTC, 2016. 1 recurso online. ISBN 9788521630937.

2

RICHARDSON, Leonard. Restful: serviços web. Rio de Janeiro: Alta Books, 2007. 336p. ISBN 9788576081715

3

NIEDERAUER, Juliano. Desenvolvendo websites com PHP: aprenda a criar websites dinâmicos e interativos com PHP e banco de dados. São Paulo: Novatec, 2004. 269 p. ISBN 8575220500

4

STEFANOV, Stoyan. Padrões JavaScript. São Paulo: O`Reilly, 2010. 238p. ISBN 9788575222669

5

WELLING, Luke; THOMSON, Laura. PHP e mySQL: desenvolvimento WEB. 3. tir. Rio de Janeiro: Editora Campus, 2003. 676 p. ISBN 853521210-8.

obs:

QR Code

Para a atenticação do plano de ensino

Assinatura
Fone: 55 49 32511022
Av. Castelo Branco, nº170, Bairro Universitário - Lages - SC - Brasil
© 2024 - Universidade do Planalto Catarinense, desenvolvido por: Núcleo de Informática