Desenvolvimento web com CodeIgniter

4,390 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,390
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
125
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Desenvolvimento web com CodeIgniter

  1. 1. Desenvolvimento Web com CodeIgniter Não passe mais trabalho como feijão-com-arroz. Vá direto ao que interessa! Pedro Conrad Jr @pconradjunior
  2. 2. Vem cá... te conheço?Quem é o Pedro :)● Técnico em Processamento de Dados (1998) e Bacharel em Informática (2002) pela Universidade da Região da Campanha.● Atua há 10 anos na área de Informática, com desenvolvimento de software, utilizando software livre para desenvolvimento desde 1999.● Atualmente trabalha na Universidade Federal do Pampa (UNIPAMPA) como Analista de TI, basicamente com desenvolvimento de software PHP.
  3. 3. Agenda● Pré-requisitos: As panelas● Programação Orientada a Objetos● Frameworks: O feijão● MVC: Vamos parar com a bagunça!● CodeIgniter: O que é?● Estrutura do CodeIgniter● Funções Nativas● Suporte a Banco de Dados● Exemplos● Bibliotecas
  4. 4. Pré-requisitos: As panelas● Entender de Lógica de Programação● Ter noções de Orientação a Objetos● Ter noções de HTML/XHTML● Noções de Banco de Dados● Saber programar em PHP
  5. 5. Programação Orientada a ObjetosO que é? “A orientação a objetos é um paradigmabaseado na composição e interação entreunidades de software, chamadas de objetos.”(Wikipedia)
  6. 6. Frameworks: O feijão● Trabalho x Tempo de Desenvolvimento● Confiabilidade e Segurança● Programando “na unha”: E o tempo?● Estilo de Programação● Documentação;● Desempenho da Aplicação
  7. 7. MVC: Vamos parar com a bagunça!
  8. 8. O CodeIgniter: o que é? O objetivo do CodeIgniter é disponibilizarum framework de máxima performance ecapacidade, que seja flexível e o maisleve possível.Bases do framework: ● Instanciamento dinâmico. ● Junção de componentes. ● Singularidade dos componentes. ● Uso do MVC
  9. 9. Estrutura do CodeIgniter● Diretórios● Os 3 diretórios existentes na raiz da estrutura do CodeIgniter são:● application. Pasta onde os arquivos do aplicativo ficam.● system. Local destinado aos arquivos do framework.● user_guide. Contém o Guia do Usuário
  10. 10. Funções nativas do CodeIgniter● Geração de calendários;● Suporta vários bancos de dados;● E-mails;● Criptografia;● Formulários;● Manipulação de imagens;● FTP;● Compactação de arquivos;● Controle de cookies sessões PHP;● Roteamento de URL (com expressões
  11. 11. Suporte a Banco de Dados● Bancos Suportados: PostgreSQL, MySQL, MsSQL, Oracle, SQLite e outros (via ODBC)● ActiveRecord ○ Uma mãozinha (das grandes!)● Singleton
  12. 12. Comparando?Modo Tradicional// SQL no "braço"$ins = "insert into participantes(nome, email, rg, cpf, endereco,bairro, cidade, cep, estado,instituicao, departamento, curso,qualificacao, modalidade, situacao) values($nome, $email,$rg, $cpf, $endereco, $bairro, $cidade,$cep, $estado,$instituicao,$departamento, $curso,$qualificacao, $modalidade, $situacao);";conecta();$r = mysql_query($ins) or die(Erro inserindo dados!); // Execute ou morra!$sql = "select * from participantes where cpf=$cpf"; // me conta.. qual a ID do participante?$c = mysql_query($sql) or die(Erro na consulta!);$id = mysql_result($c,0,id);return $id; Com CI $dados = $_POST; $this->db->insert(participantes, $dados); return $this->db->insert_id();
  13. 13. Exemplos
  14. 14. BibliotecasBiblioteca para Envio de SMS usando Central VOIPUse assim:$this->load->library(Gerenciador_de_sms);$resultado = $this->gerenciador_de_sms->enviar(5599109105,Hello, Chuck Norris!!);
  15. 15. Quero aprender mais... Onde tem?● CodeIgniter - Open source PHP web application framework – www.codeigniter.com● CodeIgniter Brasil: Tutoriais, dicas, macetes, códigos... – www.codeigniterbrasil.com● Grupo CodeIgniter-BR – Grupo de discussão brasileiro hospedado no Google Groups - https: //groups.google.com/forum/#!forum/codeigniter- br
  16. 16. Perguntas?
  17. 17. Obrigado!Por hoje é só, pessoal!! Pedro Conrad Jr @pconradjunior

×