SlideShare una empresa de Scribd logo
1 de 20
Rafael Oliveira
Bruna Cultienski
MC-028 | MC-056
Visão Geral do CodeIgniter
•O Code Igniter é um framework de aplicações, um conjunto
de ferramentas pra quem desenvolve aplicações WEB.
•Seu objetivo é facilitar a vida do desenvolvedor web, com
suas bibliotecas voltadas pra tarefas comuns, com uma
lógica simples possibilitando o de desenvolver projetos
mais rapidamente do que se estivesse codificando do 0.
O Code Igniter tem algumas vantagens :
•Gratuito
•disponibilizado sob uma licença de código aberto
• podendo ser utilizado de qualquer maneira.
•Fácil aprendizado
Visão Geral do CodeIgniter
O Code Igniter usa a abordagem Model-View-Controller,
que permite a ótima separação entre a lógica a
apresentação. Isto é particularmente bom para projetos em
que designers estão trabalhando com seus arquivos
template, já que o código nestes arquivos será mínimo. Nós
explicamos a abordagem MVC em mais detalhes em sua
própria página.
Visão Geral do CodeIgniter
As URLs geradas pelo Code Igniter são limpas e amigáveis aos motores
de busca. No lugar de usar a abordagem padrão "query string" para as
URLs que é sinônimo de sistemas dinâmicos, Code Igniter usa uma
abordagem baseada em segmentos:
Query string:
http://unoeste.br/site/CursoGraduacao/ExibeCurso.aspx?codigo=26
Seguimentos:
http://unoeste.br/site/CursoGraduacao/ExibeCurso/26
Controller Parâmetro 1 Parâmetro 2
Visão Geral do CodeIgniter
O Code Igniter vem Recheado de Coisas
Ele vem com uma grande variedade de bibliotecas que abrange a
maioria das tarefas do desenvolvimento web, como acesso a um
banco de dados, mandar e-mail, validar dados de um formulário,
manter sessões, manipular imagens, trabalhar com dados XML-RPC e
muito mais.
Code Igniter é Extensível
O sistema pode ser facilmente estendido através de bibliotecas de
plugins e assistentes, ou através de extensões de classes ou ganchos
de sistema.
Visão Geral do CodeIgniter
Arquitetura MVC
Model View Controller ou Modelo-Visão-Controlador é um padrão de
arquitetura de aplicações que visa separar a lógica da aplicação
(Model), da interface do usuário (View) e do fluxo da aplicação
(Controller). Permite que a mesma lógica de negócios possa ser
acessada e visualizada por várias interfaces.
MVC também é utilizado em padrões de projetos de software,
entretanto, MVC abrange mais da arquitetura de uma aplicação do que
é típico para um padrão de projeto.
Tenha uma coisa em mente: quando pensar em Model, pense
em estruturas de dados! Num software baseado em MVC, é o Model
que tem o contato com as informações armazenadas e que são
mostradas, estejam elas em um banco de dados, arquivo XML, ou
onde quer que estejam. É no Model e somente no Model que as
operações de CRUD devem acontecer.
MODEL
Arquitetura MVC
class Model_name extends Model
{
function Model_name()
{
parent::Model();
}
}
MODEL
Estrutura:
Arquitetura MVC
VIEW
É a apresentação, é o que aparece, é o que é visualizado por quem
usa o sistema. É no View que as informações, sejam elas quais forem
e de de qual lugar tenha vindo, serão exibidas para a pessoa –
logicamente acompanhadas de um bomdesign, uma boa estrutura
organizacional, um ambiente agradável para quem está vendo, e
muitos outros.
Arquitetura MVC
<html>
<head>
<title>Meu Blog</title>
</head>
<body>
<h1>Bem-vindo ao meu
Blog!</h1>
</body>
</html>
VIEW
Estrutura:
Arquitetura MVC
CONTROLLER
Como sugere o nome, é responsável por controlar todo o fluxo do
programa. É o “cérebro” e o “coração” do aplicativo; é no Controller
que se decide “se”, “o que”, “quando”, “onde” e tudo o mais que faz
com que a lógica funcione. Desde o que deve ser consultado no
banco de dados à tela que vai ser exibida para quem usa o
programa/sistema, é no Controller que tudo isso deve ser definido.
Arquitetura MVC
<?php
class Blog extends Controller {
function index()
{
echo 'Hello World!';
}
}
?>
CONTROLLER
Estrutura:
Arquitetura MVC
O Code Igniter tem uma abordagem mais solta em relação ao MVC, já
que Models não são obrigatórios. Se você não precisa desta facilidade,
ou acha que manter models gerará mais complexidade que você quer,
pode ignorá-las e construir sua aplicação apenas usando Controllers e
Views. Code Igniter também proporciona que você incorpore seus
próprios scripts, ou mesmo desenvolva bibliotecas para o sistema, lhe
possibilitando trabalhar de um jeito que faça mais sentido para você.
Arquitetura MVC
Fluxograma da aplicação
O index.php serve como um controlador primário, iniciando os recursos básicos necessários para rodar o Code Igniter.
O roteador examina a requisição HTTP para determinar o que deve ser feito com ela.
Se já existem o arquivo 'cacheado', ele é enviado diretamente ao browser, pulando as outras etapas de execução.
Segurança. Antes da controller de aplicação ser carregado, a requisição HTTP e qualquer dado submetido pelo usuário é
filtrado por segurança.
O Controller carrega o model as bibliotecas principais, plugins, assisntes e qualquer outro recurso necessário para processar
a requisição específica.
A View finalizada é renderizada e então enviada ao browser para ser vista. Se o cache está habilitado, a view é 'cacheada'
primeiro para que seja servida em requisições subseqüentes.
Arquitetura MVC
Todas as bibliotecas disponíveis estão localizadas em seu diretório
system/libraries. Na maioria dos casos, usar uma dessas classes envolve
inicializá-la dentro de um controller utilizando a seguinte função:
$this->load->library('classe');
Bibliotecas
Onde classe é a classe que você deseja chamar. Por exemplo,
para carregar a classe de validação, você deverá fazer o seguinte:
$this->load->library('validation');
Arquitetura MVC
Desenvolvimento Aplicação
•Cadastro/Alteração/Exclusão/Listagem de Noticias
•Uso de sessões para autenticação de usuários.
•Uploads de Imagens (Redimensionamento, Conversão e geração
de miniaturas)
•Integração com Framework Bootstrap (Front-End) para criações de
interfaces
•Criação do site (Listagem de noticias, paginações, mostra de uma
noticias)
•Uso de Bibliotecas do Framework (Email, gmaps, xml) **de
acordo com o tempo
Desenvolvimento Aplicação
Desenvolvimento Aplicação
DESENVOLVIMENTO

Más contenido relacionado

La actualidad más candente

Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorAllyson Barros
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendThiago Sinésio
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks phpIgor Moura
 
Apostila Java Web com JSF, JPA e Primefaces
Apostila Java Web com JSF, JPA e PrimefacesApostila Java Web com JSF, JPA e Primefaces
Apostila Java Web com JSF, JPA e PrimefacesRosicleia Frasson
 
Entendendo Framework Web com Python
Entendendo Framework Web com PythonEntendendo Framework Web com Python
Entendendo Framework Web com PythonPythOnRio
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeansSliedesharessbarbosa
 
Desenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend FrameworkDesenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend FrameworkDomingos Teruel
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaEduardo Bregaida
 
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCCriando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCFlávio Lisboa
 
Desenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsDesenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsIgo Coelho
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPSérgio Vilar
 
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2Cezar Souza
 
Começando com Zend Framework 2
Começando com Zend Framework 2Começando com Zend Framework 2
Começando com Zend Framework 2Cezar Souza
 
Dicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSFDicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSFDr. Spock
 
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E JpaDominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E JpaAna Albert
 
Criando websites a jato com Django
Criando websites a jato com DjangoCriando websites a jato com Django
Criando websites a jato com DjangoMarcos Petry
 

La actualidad más candente (20)

Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks php
 
Apostila Java Web com JSF, JPA e Primefaces
Apostila Java Web com JSF, JPA e PrimefacesApostila Java Web com JSF, JPA e Primefaces
Apostila Java Web com JSF, JPA e Primefaces
 
Frameworks em Java
Frameworks em JavaFrameworks em Java
Frameworks em Java
 
Entendendo Framework Web com Python
Entendendo Framework Web com PythonEntendendo Framework Web com Python
Entendendo Framework Web com Python
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeans
 
Desenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend FrameworkDesenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend Framework
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCCriando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
 
Desenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsDesenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e Servlets
 
Java Web Fácil com VRaptor
Java Web Fácil com VRaptorJava Web Fácil com VRaptor
Java Web Fácil com VRaptor
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
 
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
 
Começando com Zend Framework 2
Começando com Zend Framework 2Começando com Zend Framework 2
Começando com Zend Framework 2
 
Framework web 02 - 2016
Framework web 02 - 2016Framework web 02 - 2016
Framework web 02 - 2016
 
Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2
 
Dicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSFDicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSF
 
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E JpaDominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
 
Criando websites a jato com Django
Criando websites a jato com DjangoCriando websites a jato com Django
Criando websites a jato com Django
 

Similar a Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)

Minicurso code igniter aula 2
Minicurso code igniter   aula 2Minicurso code igniter   aula 2
Minicurso code igniter aula 2lfernandomcj
 
ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifaguestea329c
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosRodolfo Fadino Junior
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1César Augusto Pessôa
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsCloves Moreira Junior
 
Slide 02 introdução ao code igniter, utilização do bootstrap
Slide 02   introdução ao code igniter, utilização do bootstrap Slide 02   introdução ao code igniter, utilização do bootstrap
Slide 02 introdução ao code igniter, utilização do bootstrap Raniere de Lima
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Daniel Makiyama
 
Apresentação mvc
Apresentação mvcApresentação mvc
Apresentação mvcleopp
 
Treinamento Básico Sobre ASP.NET MVC
Treinamento Básico Sobre ASP.NET MVCTreinamento Básico Sobre ASP.NET MVC
Treinamento Básico Sobre ASP.NET MVCMichael Costa
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixNatanael Fonseca
 
Ebook AngularJS | Guia Introdutório
Ebook AngularJS | Guia Introdutório Ebook AngularJS | Guia Introdutório
Ebook AngularJS | Guia Introdutório Portal GSTI
 
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...anybalrocha
 
Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010Alexandre Tarifa
 
Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Vinícius de Paula
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 

Similar a Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP) (20)

Minicurso code igniter aula 2
Minicurso code igniter   aula 2Minicurso code igniter   aula 2
Minicurso code igniter aula 2
 
ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifa
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São Carlos
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
 
Slide 02 introdução ao code igniter, utilização do bootstrap
Slide 02   introdução ao code igniter, utilização do bootstrap Slide 02   introdução ao code igniter, utilização do bootstrap
Slide 02 introdução ao code igniter, utilização do bootstrap
 
Palestra ASP.NET MVC
Palestra ASP.NET MVCPalestra ASP.NET MVC
Palestra ASP.NET MVC
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
Apresentação mvc
Apresentação mvcApresentação mvc
Apresentação mvc
 
Treinamento Básico Sobre ASP.NET MVC
Treinamento Básico Sobre ASP.NET MVCTreinamento Básico Sobre ASP.NET MVC
Treinamento Básico Sobre ASP.NET MVC
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Microservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud NetflixMicroservices com Spring Boot e Spring Cloud Netflix
Microservices com Spring Boot e Spring Cloud Netflix
 
Ebook AngularJS | Guia Introdutório
Ebook AngularJS | Guia Introdutório Ebook AngularJS | Guia Introdutório
Ebook AngularJS | Guia Introdutório
 
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
ASM.NET MVC 5 + Entity Framework - Explorando conceitos e criando um projeto ...
 
Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010Palestra MVC - Online tech day 2010
Palestra MVC - Online tech day 2010
 
Desvendando ASP.NET MVC
Desvendando ASP.NET MVCDesvendando ASP.NET MVC
Desvendando ASP.NET MVC
 
Desvendando ASP.NET MVC
Desvendando ASP.NET MVCDesvendando ASP.NET MVC
Desvendando ASP.NET MVC
 
Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.Desenvolvimento Web com Simfony Framework.
Desenvolvimento Web com Simfony Framework.
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 

Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)

  • 2. Visão Geral do CodeIgniter •O Code Igniter é um framework de aplicações, um conjunto de ferramentas pra quem desenvolve aplicações WEB. •Seu objetivo é facilitar a vida do desenvolvedor web, com suas bibliotecas voltadas pra tarefas comuns, com uma lógica simples possibilitando o de desenvolver projetos mais rapidamente do que se estivesse codificando do 0.
  • 3. O Code Igniter tem algumas vantagens : •Gratuito •disponibilizado sob uma licença de código aberto • podendo ser utilizado de qualquer maneira. •Fácil aprendizado Visão Geral do CodeIgniter
  • 4. O Code Igniter usa a abordagem Model-View-Controller, que permite a ótima separação entre a lógica a apresentação. Isto é particularmente bom para projetos em que designers estão trabalhando com seus arquivos template, já que o código nestes arquivos será mínimo. Nós explicamos a abordagem MVC em mais detalhes em sua própria página. Visão Geral do CodeIgniter
  • 5. As URLs geradas pelo Code Igniter são limpas e amigáveis aos motores de busca. No lugar de usar a abordagem padrão "query string" para as URLs que é sinônimo de sistemas dinâmicos, Code Igniter usa uma abordagem baseada em segmentos: Query string: http://unoeste.br/site/CursoGraduacao/ExibeCurso.aspx?codigo=26 Seguimentos: http://unoeste.br/site/CursoGraduacao/ExibeCurso/26 Controller Parâmetro 1 Parâmetro 2 Visão Geral do CodeIgniter
  • 6. O Code Igniter vem Recheado de Coisas Ele vem com uma grande variedade de bibliotecas que abrange a maioria das tarefas do desenvolvimento web, como acesso a um banco de dados, mandar e-mail, validar dados de um formulário, manter sessões, manipular imagens, trabalhar com dados XML-RPC e muito mais. Code Igniter é Extensível O sistema pode ser facilmente estendido através de bibliotecas de plugins e assistentes, ou através de extensões de classes ou ganchos de sistema. Visão Geral do CodeIgniter
  • 7.
  • 8. Arquitetura MVC Model View Controller ou Modelo-Visão-Controlador é um padrão de arquitetura de aplicações que visa separar a lógica da aplicação (Model), da interface do usuário (View) e do fluxo da aplicação (Controller). Permite que a mesma lógica de negócios possa ser acessada e visualizada por várias interfaces. MVC também é utilizado em padrões de projetos de software, entretanto, MVC abrange mais da arquitetura de uma aplicação do que é típico para um padrão de projeto.
  • 9. Tenha uma coisa em mente: quando pensar em Model, pense em estruturas de dados! Num software baseado em MVC, é o Model que tem o contato com as informações armazenadas e que são mostradas, estejam elas em um banco de dados, arquivo XML, ou onde quer que estejam. É no Model e somente no Model que as operações de CRUD devem acontecer. MODEL Arquitetura MVC
  • 10. class Model_name extends Model { function Model_name() { parent::Model(); } } MODEL Estrutura: Arquitetura MVC
  • 11. VIEW É a apresentação, é o que aparece, é o que é visualizado por quem usa o sistema. É no View que as informações, sejam elas quais forem e de de qual lugar tenha vindo, serão exibidas para a pessoa – logicamente acompanhadas de um bomdesign, uma boa estrutura organizacional, um ambiente agradável para quem está vendo, e muitos outros. Arquitetura MVC
  • 12. <html> <head> <title>Meu Blog</title> </head> <body> <h1>Bem-vindo ao meu Blog!</h1> </body> </html> VIEW Estrutura: Arquitetura MVC
  • 13. CONTROLLER Como sugere o nome, é responsável por controlar todo o fluxo do programa. É o “cérebro” e o “coração” do aplicativo; é no Controller que se decide “se”, “o que”, “quando”, “onde” e tudo o mais que faz com que a lógica funcione. Desde o que deve ser consultado no banco de dados à tela que vai ser exibida para quem usa o programa/sistema, é no Controller que tudo isso deve ser definido. Arquitetura MVC
  • 14. <?php class Blog extends Controller { function index() { echo 'Hello World!'; } } ?> CONTROLLER Estrutura: Arquitetura MVC
  • 15. O Code Igniter tem uma abordagem mais solta em relação ao MVC, já que Models não são obrigatórios. Se você não precisa desta facilidade, ou acha que manter models gerará mais complexidade que você quer, pode ignorá-las e construir sua aplicação apenas usando Controllers e Views. Code Igniter também proporciona que você incorpore seus próprios scripts, ou mesmo desenvolva bibliotecas para o sistema, lhe possibilitando trabalhar de um jeito que faça mais sentido para você. Arquitetura MVC
  • 16. Fluxograma da aplicação O index.php serve como um controlador primário, iniciando os recursos básicos necessários para rodar o Code Igniter. O roteador examina a requisição HTTP para determinar o que deve ser feito com ela. Se já existem o arquivo 'cacheado', ele é enviado diretamente ao browser, pulando as outras etapas de execução. Segurança. Antes da controller de aplicação ser carregado, a requisição HTTP e qualquer dado submetido pelo usuário é filtrado por segurança. O Controller carrega o model as bibliotecas principais, plugins, assisntes e qualquer outro recurso necessário para processar a requisição específica. A View finalizada é renderizada e então enviada ao browser para ser vista. Se o cache está habilitado, a view é 'cacheada' primeiro para que seja servida em requisições subseqüentes. Arquitetura MVC
  • 17. Todas as bibliotecas disponíveis estão localizadas em seu diretório system/libraries. Na maioria dos casos, usar uma dessas classes envolve inicializá-la dentro de um controller utilizando a seguinte função: $this->load->library('classe'); Bibliotecas Onde classe é a classe que você deseja chamar. Por exemplo, para carregar a classe de validação, você deverá fazer o seguinte: $this->load->library('validation'); Arquitetura MVC
  • 18. Desenvolvimento Aplicação •Cadastro/Alteração/Exclusão/Listagem de Noticias •Uso de sessões para autenticação de usuários. •Uploads de Imagens (Redimensionamento, Conversão e geração de miniaturas) •Integração com Framework Bootstrap (Front-End) para criações de interfaces •Criação do site (Listagem de noticias, paginações, mostra de uma noticias) •Uso de Bibliotecas do Framework (Email, gmaps, xml) **de acordo com o tempo