Iniciação a Programação

Quem Sou eu?
Daniel Oliveira Araújo
- Graduado em Telemática pelo IFCE
- Instrutor da UTD desde 2016
- Iniciação à Programação
- Introdução à Banco de Dados
- Java com banco de Dados
- Instrutor E-Jovem entre 2015-2017
- Instrutor a distância do Projeto MedioTec no IFCE

E Agora?
Quem são Vocês?
O que vamos ver no curso
- Introdução à Lógica
- Funcionamento do computador
- Conversão de Valor Binário
- Algorítimo e Fluxograma
- Linguagem de Programação
- C
- Java
- PHP
- Introdução à Banco de Dados
- Linguagem Web
Contato


Contato
- danieloliveira14@gmail.com
- https://github.com/Pakato14


Material de Apoio




Antes de iniciarmos a aula Acesse
https://goo.gl/forms/8pRNcN8JEyNbqNFn1
Aula 01
Conceitos Básicos
O que é lógica?
- Lógica trata da correção do pensamento. Como filosofia, ela procura saber por que pensamos assim e não de outro jeito. Com arte ou técnica, ela nos ensina a usar corretamente as leis do pensamento.
- Poderíamos dizer também que a Lógica é a arte de pensar corretamente e, visto que a forma mais complexa do pensamento é o raciocínio, a Lógica estuda ou tem em vista a correção do raciocínio.
Lógica no dia a dia
- Sei que o livro está no armário
- O armário está fechado
- Logo, concluo que tenho de abrir o armário para pegar o livro
Vamos brincar
- Se o semáforo com a luz vermelha é para o motorista parar e o verde para seguir, estando eu a pé para atravessar a rua então concluo que:
- Posso atravessar a rua com a luz vermelha.
- O semáforo tem duas luzes
- Só devo atravessar a rua com a luz verde
Vamos brincar
- Patos são animais. Patos têm duas patas. Logo:
- Todo o animal tem duas patas
- Patos têm duas patas
- Patos tem bico
Algoritmo
O que é algoritmo?
- Um algoritmo é formalmente uma sequência finita de passos que levam a execução de uma tarefa. Podemos pensar em algoritmo como uma receita, uma sequência de instruções que dão cabo de uma meta específica.
Exemplo
- Faça um algoritmo de sua chegada para a aula de iniciação digital da UTD.
Tipos de Algoritmos
- Os tipos de algoritmos mais usados são descrição narrativa, fluxograma e Pseudocódigo ou Portugol.
Descrição Narrativa
- Utiliza linguagem natural
- Vantagem: Não é necessário aprender nenhum conceito novo, é como estivéssemos falando ou escrevendo os detalhes de algo para outra pessoa.
- Desvantagem: Permite várias interpretações, dificultando transcrição para programa.
Ler dois números e calcular a média
- Ler os dois números.
- Calcular a média.
- Mostrar o resultado da média.
Fluxograma
- Utiliza elementos gráficos, que nos próximos tópicos abordaremos com mais detalhes este assunto.
- Vantagem: Entendimento de gráficos é mais fácil que de textos.
-
Desvantagem: Necessário aprender simbologia e não apresenta detalhes para transcrever
para programa.
Fluxograma
Pseudocódigo ou Portugol
- Utiliza uma linguagem com regras definidas com uma estrutura formal também conhecido como português estruturado.
- Vantagem: Transcrição para programa (linguagem de computador) é praticamente imediata.
- Desvantagem: Necessário aprender regras.
Pseudocódigo ou Portugol

Regras para a construção de um algoritmo
-
Usar somente um verbo por frase.
-
Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática.
-
Usar frases curtas e simples.
-
Ser objetivo.
-
Procurar usar palavras que não tenham sentido dúbio.
Fases
-
É importante ressaltar que qualquer tarefa que siga determinado padrão pode ser descrita por um algoritmo.

Regras Básicas
-
Não utilizar espaços entre as letras ou caracteres especiais como acentos, símbolos (@#%&*?:/) entre outros.
-
Para identificar um algoritmo com duas palavras, por exemplo “calcular media“ usar o underline o correto ficaria calcular_media.
-
Não utilizar palavras reservadas como as que são utilizadas para representar ações especificas como ler, variavel, escrever no portugol ide as palavras reservadas são destacadas em negrito.
Regras Básicas
-
Não utilizar números no inicio da identificação do algoritmo como, por exemplo; “1exemplo” o correto seria “exemplo1”.
-
Usar nomes coerentes para identificação de algoritmos, nomes os quais possam identificar o que o algoritmo vai fazer.
Corpo do Algoritmo
-
No corpo do algoritmo deve ser escrito todos os passos para a resolução de problemas, como por exemplo;
-
Entrada de valores para as variáveis.
-
Operações de atribuição tais como lógicas e aritméticas.
-
Laços de repetição.
-
Exibição de resultados.
-
Varavéis
-
São os elementos básicos que um programa manipula. Uma variável é um espaço reservado na memória do computador para armazenar um tipo de dado determinado.
-
Estas devem receber nomes para poderem ser referenciadas e modificadas quando necessário. Um programa deve conter declarações que especificam de que tipo são as variáveis que ele utilizará e às vezes um valor inicial.
-
Tipos podem ser, por exemplo: inteiros, reais, caracteres, etc. As expressões combinam variáveis para calcular novos valores, na aula 6 iremos ver mais detalhes e a aplicação das mesmas em uma linguagem de programação.
Tamanho das Variaveis

Brincadeira de Algoritmo
- Escreva um algoritmo que receba 2 números e exiba o resultado da sua soma.
- Escreva um algoritmo que receba 2 números e ao final exiba o resultado da subtração, multiplicação e divisão dos números lidos.
- Escreva um algoritmo que receba o ano atual, ano de nascimento de uma pessoa e mostre a sua idade.
Aula 03
Fluxograma
Fluxograma
- É um tipo de diagrama, e pode ser entendido como uma representação esquemática de um processo ou algoritmo, muitas vezes feito através de gráficos que ilustram de forma descomplicada a transição de informações entre os elementos que o compõem, ou seja, é a sequência operacional do desenvolvimento de um processo, o qual caracteriza: o trabalho que está sendo realizado, o tempo necessário para sua realização, a distância percorrida pelos documentos, quem está realizando o trabalho e como ele flui entre os participantes deste processo.
Simbologia

Bricadeira com fluxograma
- Refaça os exercícios da aula passada no formato de fluxograma.
Aula 04
Conceitos de Programação
Linguagens de Baixo Nível
- São linguagens totalmente dependentes da máquina, ou seja, o programa que utiliza este tipo de linguagem não pode ser migrado ou utilizado em outras máquinas. Ao estar praticamente desenhado para aquele hardware, aproveitam ao máximo as características do mesmo.
Liguagem de Máquina
- Ordena à máquina as operações fundamentais para seu funcionamento. Consiste na combinação de 0's e 1's para formar as ordens entendíveis pelo hardware da máquina.
- Esta linguagem é muito mais rápida que as linguagens de alto nível.
- A desvantagem é que são bastante difíceis de manejar e usar, além de ter códigos fonte enormes onde encontrar uma falha é quase impossível.
Assembler

Linguagens de Alto Nível
- São aquelas que se encontram mais próximas à linguagem natural do que à linguagem de máquina. Estão dirigidas a solucionar problemas mediante o uso da Estruturas Dinâmicas de Dados.
- São estruturas que podem mudar de tamanho durante a execução do programa. Permitem-nos criar estruturas de dados que se adaptem às necessidades reais de um programa.
Linguagem de Programação
- É um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sobre várias circunstâncias.
Linguagem Web
Controle de fluxo
- As estruturas de controle definem a sequência de execução das instruções. Podem ser divididas em seleção, repetição e sequência.
Aula 11
JavaScript
JavaScript
- Desenvolvida pela NETSCAPE, a linguagem JavaScript foi criada para trabalhar com aplicações interativas nas páginas HTML. Originalmente batizada de LiveScript.
- Esta linguagem teve sua primeira versão desenvolvida para o browser Netscape Navigator 2.0 e em seguida, atribuído também ao Internet Explorer 3.0.
JavaScript
- Conhecida também como uma extensão da linguagem HTML (Linguagem de Marcação de Hipertexto), os comandos JavaScript são embutidos nas páginas HTML e interpretados pelo Browser, ou seja, o JavaScript não possui nenhum procedimento de compilação.
JavaScript
- Após 20 anos do seu lançamento, ela cresceu absurdamente na comunidade de desenvolvedores, tornou-se mais robusta, poderosa e é usada em uma infinidade de aplicações de alto nível, tanto no front-end quanto no back-end das aplicações. Ela é a tecnologia por trás de ferramentas, frameworks e bibliotecas consagradas no mercado, tais como: Angular, Ember, React, Backbone, jQuery, Grunt... A lista é
enorme. Atualmente, é essencial que um profissional de TI tenha domínio desta tecnologia, tanto para aplicações web, aplicativos mobile e/ou desktop.
Orientação à Objetos
- Diferente da Linguagem HTML, a linguagem JavaScript corresponde a programação orientada a objetos, isto significa que todos os elementos de uma página da Web são tratados como objetos.
Luz, Câmera , Interação
- HTML - Fornece Estrutura
- CSS - Adiciona o estilo
- JavaScript - Dinamiza sua página web
Hello World
<!DOCTYPE html>
<html lang="pt-br">
<head>
<title>
Hello, World
</title>
<head>
<meta charset="utf-8">
<script type="text/javascript">
alert("Hello, World!");
</script>
</head>
<body>
</body>
</html>
Hello World
<!DOCTYPE html>
<html lang="pt-br">
<head>
<title>
Hello, World
</title>
<head>
<meta charset="utf-8">
<script type="text/javascript">
function hello(){
var msg = "Hello, World!";
document.open();
document.write(msg);
document.close();
}
</script>
</head>
<body onload="hello()">
<h1>Hi</h1>
</body>
</html>

Criando funções
- Criar as próprias funções personalizadas ajudam o programador a poder reutilizar código com diversas partes do projeto e também entre projetos distintos.
- Uma função é um pedaço de código com um objetivo específico, encapsulado sob uma estrutura única que recebe um conjunto de parâmetros e retorna um dado. Uma função é declarada uma vez, mas pode ser usada diversas vezes.
Criando Funções
<?PHP
function calculaDobro($valor){
$dobro = $valor = 2;
return $dobro;
}
$i = 2;
echo("O dobro de $i é ".calculaDobro($i)."<br>");
echo("O valor original de \$i é ".$i);
?>Variáveis Globais
- Todas as variáveis declaradas dentro de um escopo de uma função são locais. Para acessar uma variável é necessária declará-la como global. Ela é acessada a partir de qualquer ponto da aplicação.
<?php
$total = 0;
function kmTomi($quilometros)
{
global $total;
$total += $quilometros;
return $quilometros * 0.6;
}
echo 'pecorreu '.kmTomi(100).' milhas \n';
echo 'pecorreu '.kmTomi(200).' milhas \n';
echo 'pecorreu no total '.$total.' quilometros \n';
?>Variáveis estáticas
- Dentro do escopo de uma função podemos armazenar variáveis de forma estática. Assim, elas mantêm o valor que lhes foi atribuído na última execução.
Atividade
- Desenvolva uma função no qual calcule a área de um quadrado
- Desenvolva uma função no qual calcule a área de retângulo.
- Desenvolva uma função que calcule a área de um circulo.
- Desenvolva uma função que calcule a área de um triângulo.
Programação Orientada a Objetos
PHP
Orientação a Objetos
- Ao trabalharmos com orientação a objetos é fundamental entender o conceito de classes e objetos. Uma classe é uma estrutura que define um tipo de dados, podendo conter atributos.
Orientação à Objetos
<?php
class Produto{
var $codigo;
var $Descricao;
var $Preco;
var $Quantidade;
}
?>Orientação à Objetos
<?php
class Produto{
var $codigo;
var $Descricao;
var $Preco;
var $Quantidade;
}
?>Iniciação a Programação - Turma UTD 2018.1
By pakato
Iniciação a Programação - Turma UTD 2018.1
- 231