Programação da Escola de Verão 2014

Apresentação

A Escola de Verão do Campus da UFC em Quixadá é um evento realizado desde o início do funcionamento do Campus e destina-se principalmente à atualização tecnológica dos alunos dos cursos de graduação do Campus. As atividades são ofertadas para complementar a formação dos alunos, e são válidas para contabilização de créditos como Atividades Complementares.

O Evento é promovido por docentes, servidores e alunos, com apoio das Coordenações dos Cursos de SI, ES,  RC, CC e Direção do Campus.

A Escola de Verão de 2014 ocorrerá no período de 05 a 07 de Fevereiro.

Contatos

Inscrições

As inscrições serão feitas exclusivamente pelo sistema SEVEN, no período de 30 de Janeiro (quinta) a 03 de Fevereiro (segunda) de 2014.

Passos básicos

Observações IMPORTANTES

Grade de Horários

Programação Resumida

 

Sigla

Atividade

Carga

Horária

Ministrante

HK

Hackathon

16

Ygor Rocha Reis

MC1

Desenvolvimento Móvel com Android

12

Francisco Witalo Benicio da Silva

MC2

Desenvolvendo Softwares para WEB com Linguagem PHP

12

Antonio José Barros

MC3

Fundamentos de Linguagem Python

16

Ricardo Reis

MC4

Gerenciamento de código com Git e GitHub

4

Regis Pires Magalhães

MC5

Do It Fast, But Do It Right: Introdução à Programação Paralela

12

João Marcelo Uchôa de Alencar

MC6

Mineração de Dados Abertos

8

Raimundo de Acacio Leonel Junior, João Holanda Freires Junior e Tércio Jorge da Silva

MC7

Escrevendo Artigos e TCC com Latex

4

Paulo Antonio Leal Rego

MC8

Padrões de Projeto em Java - Tirando a poeira

8

José Adail Carvalho Filho

MC9

Melhorando a infraestrutura e a produtividade de projetos Java com Apache Maven

4

Regis Pires Magalhães

MC10

jQuery

8

Josué Machado Mota

 

Programação Detalhada

HK - Hackathon

Resumo:  O hackathon será uma atividade dentro da Escola de Verão onde os as equipes compostas por quatro alunos irão desenvolver uma solução para o problema apresentado, que no caso, será algo relacionado a dados abertos no contexto do Estado do Ceará.

Ementa: Mineração de dados. Web design. Computação em nuvem. Programação Orientada a Objetos. Padrões de Projeto.

Duração: 2 dias

Pré-requisitos: Que a equipe seja composta por quatro membros.

Responsável: Ygor Rocha Reis (ES)

Local: Sala 1 do Bloco 1

Data e horário: Quinta e Sexta de 8 às 12h e de 13:30 às 17:30h

Número de vagas: 32


MC1: Desenvolvimento Móvel com Android

Resumo: O minicurso busca apresentar de maneira clara e fácil os aspectos básicos do desenvolvimento na plataforma Android.

Ementa: Introdução ao Android. Componentes básicos. Activities. Comunicação entre activities.

Duração: 12h

Pré-requisitos: Conhecimento da linguagem JAVA.

Ministrante: Francisco Witalo Benicio da Silva (SI)

Local: Lab1 - Laboratório 1 do Bloco 1

Data e horário: Quarta a Sexta de 8 às 12h

Número de vagas: 30


MC2: Desenvolvendo Softwares para WEB com Linguagem PHP

Resumo: Minicurso breve sobre linguagem PHP, com intuito de apresentar e demonstrar suas funcionalidades com exemplos prontos e desenvolver uma aplicação durante o evento.

Ementa: Configuração do Ambiente de Trabalho. Introdução à Linguagem. Características da Linguagem. Tipos de Dados e Operadores. Estrutura de Seleção e Repetição. PHP OO. PHP e MySQL.

Duração: 12h

Pré-requisitos: Conhecimento de HTML e CSS.

Ministrante: Antonio José Barros (SI)

Local: Lab2 - Laboratório 2 do Bloco 1

Data e horário: Quarta a Sexta de 8 às 12h

Número de vagas: 30


MC3: Fundamentos de Linguagem Python

Resumo: Este minicurso tem por objetivo apresentar a sintaxe básica da linguagem Python, suas principais estruturas de dados nativas, visão geral dos módulos mais importantes com suas aplicações bem como apresentar aspectos referentes ao paradigma da orientação a objetos.  

Ementa: - Introdução à linguagem Python (Características, Implementações, Modos de Interpretação, Execução de Scripts, Números e a Calculadora Python, Erros). Elementos Básicos Construtivos (Tipos Primitivos, Variáveis e Operadores, Expressões Aritméticas e Lógicas, Condicionais com if, Laços While, Uso de break e continue, O comando pass, Conversores de Tipos). Strings. Listas. Tuplas. Funções. Dicionários. Módulos. Erros e Exceções. Usando Arquivos. Classes / Orientação a Objetos.

Duração: 16h

Pré-requisitos: Ter cursado fundamentos de programação

Ministrante: Ricardo Reis

Local: Lab3 - Laboratório 3 do Bloco 1

Data e horário: Quarta a Sexta de 8 às 12h e Quarta de 13:30 às 17:30h

Número de vagas: 30


MC4: Gerenciamento de código com Git e GitHub

Resumo:  O minicurso apresentará os principais fundamentos e práticas relacionados ao uso do sistema de controle de versões distribuído Git e da aplicação Web Social voltada para gerenciamento de projetos de software que usa o Git internamente: o GitHub.

Ementa: Controle de versões. Git: instalação, repositórios, fluxo de trabalho. GitHub: características e funcionalidades. Ciclo básico do Git. Sincronização de dados locais com o repositório remoto. Organização do trabalho com branches. Resolução de conflitos. Boas práticas.  

Duração: 4h

Pré-requisitos: Conhecimentos básicos de uso de terminal. Ter criado previamente uma conta no GitHub (https://github.com/).

Ministrante: Regis Pires Magalhães

Local: Lab4 - Laboratório do Bloco 2

Data e horário: Quarta das 8 às 12h

Número de vagas: 30


MC5: Do It Fast, But Do It Right: Introdução à Programação Paralela

Resumo:  Partindo dos supercomputadores de milhões de dólares até o smartphone mais barato, as arquiteturas paralelas estão cada vez mais presentes panorama da Tecnologia da Informação. Seja qual for a plataforma computacional, a tendência é o constante aumento do número de cores (ou núcleos) dentro dos processadores, inclusive com chips heterogêneos tendo cores especializados em funções distintas. Apesar dos projetistas de arquitetura conseguirem com sucesso desenvolver sistemas cada vez mais complexos, o desenvolvimento de software para essas arquiteturas não é trivial. É preciso considerar aspectos como controle de concorrência, estruturas de dados distribuídas e latência de comunicação. Neste minicurso, iremos introduzir os principais conceitos de programação paralela, explicar como eles se aplicam à novas arquiteturas e quais as técnicas mais utilizadas. Ao final, o aluno será capaz por contra própria de introduzir paralelismo nas suas aplicações.

Ementa: Introdução; Arquiteturas Paralelas; Modelos de Programação: Memória Compartilhada ou Distribuída; Análise de Desempenho de Programas Paralelos. Memória Compartilhada; Pthreads; OpenMP; MPI; Configuração de um Ambiente de Cluster; Introdução ao CUDA.

Duração: 12h

Pré-requisitos: Conhecimento de programação em C.

Ministrante: João Marcelo Uchôa de Alencar

Local: Lab1 - Laboratório 1 do Bloco 1

Data e horário: Quarta a Sexta de 13:30 às 17:30h

Número de vagas: 30


MC6: Mineração de Dados Abertos

Resumo:  O minicurso aborda conceitos fundamentais, técnicas, ferramentas e exemplos de mineração de dados. Além disso, possui um enfoque prático ao apresentar um estudo de caso real relacionado à mineração de dados abertos. Tendências, desafios e oportunidades na área de mineração de dados também são tratados no decorrer do minicurso.

Ementa: Técnicas de Mineração de Dados: Conceitos, Classificação. Ferramentas de Mineração de Dados. Estudo de Caso. Tendências, desafios e oportunidades na área de mineração de dados.

Duração: 8h

Pré-requisitos: Conhecimentos básicos sobre Bancos de Dados.

Ministrantes: Raimundo de Acacio Leonel Junior, João Holanda Freires Junior e Tércio Jorge da Silva (SI)

Local: Lab2 - Laboratório 2 do Bloco 1

Data e horário: Quarta e Quinta de 13:30 às 17:30h

Número de vagas: 30


MC7: Escrevendo Artigos e TCC com Latex

Resumo: O objetivo desse minicurso é fazer uma revisão dos conceitos básicos do Latex, mostrar sua instalação e como escrever artigos e TCCs, além de apresentar como trabalhar com as referências em formato Bibtex.

Ementa: Instalação. Revisão dos conceitos básicos. Abntex e Bibtex. Escrevendo Artigos e TCC.

Duração: 4h

Pré-requisitos: Conhecimento básico de Latex.

Ministrante: Paulo Antonio Leal Rego

Local: Lab4 - Laboratório do Bloco 2

Data e horário: Quarta de 13:30 às 17:30h

Número de vagas: 30


MC8: Padrões de Projeto em Java - Tirando a poeira

Resumo:  O minicurso traz um abordagem dos conceitos de padrões de projeto, apresentando as melhorias de se utilizar um padrão de projeto como solução para algum problema recorrente no desenvolvimento. Foram selecionados 4 de 23 dos padrões GoF para serem analisados, apresentando a aplicabilidade, benefícios, exemplo de código e exercitando cada um dos padrões ao final de sua apresentação. Ele é voltado principalmente para estudantes que concluíram a disciplina de 'PDS' com um rendimento baixo (vide turma 2013.2/2012.2), a fim de promover uma revisão de conteúdo e um "tira poeira", onde os cursantes programarão alguns problemas,de acordo com cada padrão.

Ementa: Padrões de Projeto. Identificando um bom desing pattern. Padrões GoF. Padrão Decorator (Propósito estrutural). Padrão Strattegy (Propósito comportamental). Padrão Builder (Propósito criacional). Padrão Iterator (Propósito comportamental).

Duração: 8h

Pré-requisitos: - Concluído a disciplina Análise e Modelagem de Projetos; Cursado a disciplina "Projeto Detalhado de Software" (Desejável).

Ministrante: José Adail Carvalho Filho (ES)

Local: Lab3 - Laboratório 3 do Bloco 1

Data e horário: Quinta e Sexta de 13:30 às 17:30h

Número de vagas: 30


MC9: Melhorando a infraestrutura e a produtividade de projetos Java com Apache Maven

Resumo: O Maven é hoje uma das principais ferramentas para build e gerenciamento de projetos Java. Ele simplifica e padroniza o processo de build e está nativamente intregrado às principais IDEs como Eclipse e Netbeans. O minicurso apresentá os fundamentos e principais funcionalidades do Maven para melhorar a infraestrutura e a produtividade de projetos Java.

Ementa: Instalação. Repositório Maven. Gerenciamento de Dependências. Maven Plugins. Maven Build. Criação de projetos Java com Maven.

Duração: 4h

Pré-requisitos: Conhecimento da linguagem Java.

Ministrante: Regis Pires Magalhães

Local: Lab2 - Laboratório 2 do Bloco 1

Data e horário: Sexta de 13:30 às 17:30h

Número de vagas: 30


MC10: jQuery

Resumo: Neste minicurso, veremos um pouco da história do desenvolvimento web. De forma simplificada, será feita uma revisão prática sobre a criação de uma página web codificada em HTML, CSS e JavaScript; Em seguida, adicionaremos elementos gráficos à página, usando JavaScript puro (sem qualquer framework/biblioteca) e então, o jQuery será apresentado e incluído à nossa página, e as rotinas implementadas serão recodificadas fazendo uso da simplicidade que o jQuery oferece ao desenvolvedor JavaScript (atuante na parte cliente/front-end). Os exemplos apresentados durante o minicurso, permitirão ao aluno fazer: seleção de elementos do DOM, alteração de conteúdo HTML, alteração de estilos CSS, tratamento de eventos, animações, plugins, e comunicação cliente-servidor via AJAX.

Ementa: Desenvolvimento web na história; HTML, CSS e JavaScript; Introdução ao jQuery; Seletores; Manipulando conteúdo; Eventos; Animações; Sistema de plugins; AJAX.

Duração: 8h

Pré-requisitos: Conhecimentos básicos em HTML, CSS e JavaScript; Google Chrome Browser já instalado.

Ministrante: Josué Machado Mota (Mestrando UFC)

Local: Lab4 - Laboratório do Bloco 2

Data e horário: Sexta de 8 às 12h e de 13:30 às 17:30h

Número de vagas: 30