1. Ementa
1.1. Estudo e desenvolvimento de scripts para automação de tarefas rotineiras e administração de servidores
2. Objetivos
2.1. Aplicar conceitos e boas práticas de programação de sistemas Linux, utilizando a linguagem de programação Shell Script.
2.2. Cognitivos
2.2.1. - Conhecer os principais comandos usados em programação script; - Estudar as ferramentas dos sistemas operacionais e seu uso com script; - Conhecer como desenvolver scripts estruturados e organizados; - Estudar formas de integrar scripts.
2.3. Habilidades
2.3.1. - Desenvolver os conceitos de programação para servidores; - Determinar quais rotinas poderão ser escritas em script; - Desenvolver scripts profissionais;
2.4. Atitude
2.4.1. - Ser capaz de identificar possibilidades de converter um processo manual para automático; - Ter capacidade de administrar rotinas automatizadas; - Ter capacidade de fazer manutenção em scripts desenvolvidos por outros programadores; - Ter senso crítico.
3. Bibliografia
3.1. Básica
3.1.1. - MANZANO, José Augusto N. G. Algoritmos : lógica para desenvolvimento de programação de computadores. 28. São Paulo Erica 2016 - MOTA FILHO, J. E. Descobrindo o Linux: entenda o sistema operacional - GNU/Linux.3. ed. São Paulo: Novatec Editora, 2012. - NEVES, Júlio Cezar. Programação SHELL LINUX. 5.ed. Rio de Janeiro: Brasport, 2005.
3.2. Complementar
3.2.1. - ZIVIANY, Nivio. Projeto de algoritmos com implementação em pascal e C.2. ed. São Paulo: Thomson, 2004. - SOFFNER, Renato. Algoritmo e Programação em Linguagem C. São Paulo. Saraiva, 2013 - MANZANO, José A. N. G. Estudo dirigido de linguagem C. 17. ed. São Paulo: Érica, 2013. - MIZRAHI, Victorine Viviane; Treinamento em Linguagem C, Pearson, 2008 - MANZANO, José Augusto N. G. Linguagem C : acompanhada de uma xícara de café - São Paulo : Érica, 2015. - DEVMEDIA. Disponível em <https://www.devmedia.com.br/>. Acesso em 22/07/2020
4. Avaliação
4.1. 1º Estágio - Unidade I - Avaliação Escrita (3 pontos), Listas Exercícios (2 pontos) 2º Estágio - Unidade II - Avaliação Escrita (3 pontos), Listas Exercícios (2 pontos) O processo avaliativo compreenderá: Avaliação Regimental (A1) no valor de 0,0 a 5,0. Avaliações parciais e processuais (A2) no valor de 0,0 a 5,0. A Nota Final (NF) resulta da soma destas duas notas (A1 A2). É considerado aprovado na disciplina o aluno que obtiver Nota Final (NF) igual ou superior a 6,0 (seis) e que tenha, no mínimo, 75% (setenta e cinco por cento) de frequência às atividades acadêmicas.
4.2. Diagnóstica
4.2.1. - Através de perguntas e respostas diretas ao aluno no início do curso;
4.3. Formativa
4.3.1. - Exercícios de fixação em grupo para cada tema trabalhado em sala de aula; - Discussões sobre a resolução dos exercícios em sala de aula; - Desafios práticos extraclasse e em grupo para cada estágio;
4.4. Somativa
4.4.1. - Avaliações teóricas e individuais em sala de aula para cada estágio. - Aplicações escritas individuais, atividades no Ambiente Virtual de Aprendizagem (Moodle), seminários e trabalhos desenvolvidos em computador.
5. Conteúdo
5.1. Primeira Avaliação
5.1.1. - Apresentação e discussão do Professor, Plano de Ensino, objetivos, conteúdos, estratégias, avaliação e bibliografia - Característica do sistema operacional Linux; - Estrutura e organização do sistema operacional Linux; - Comandos básicos de gestão de sistemas computacionais Linux; - Característica do shell bash. - Conceito de algoritmo; - Elaboração de algoritmos; - Principais comandos e sua utilização; - Estrutura de um shell script; - conceitos e declarações de variáveis. - Expressões Booleanas; - Conceito sobre estrutura de decisão; - Estrutura de decisão em algoritmos; - Metacaracteres; - Marcadores;
5.2. Segunda Avaliação
5.2.1. - Conceito de repetição em algoritmos; - Aplicação em script; - Conceito sobre Vetores; - Comandos para manipulação de string; - Conceitos sobre modularização (função); - Algoritmos sobre modularização; - Aplicação de funções com arquivos Shell Script; - Janelas (Dialog) - Apresentação de todas as janelas usadas;