SlideShare une entreprise Scribd logo
1  sur  10
MkFramework
Présentation mode de navigation
Interprétation URL
● Index.php?:nav=article::list
● Index.php?:nav=article::list
index.php?:nav=article::list
● :nav= ● article::list
● Le couple module /
action séparé par
« :: »
● La variable «:nav »
stock le couple de
navigation
Le framework interprète
l’information ainsi :
● Ici, le framework va donc charger le module
« article » et l’action « list »
● Ceci correspond à instancier le module
module_article
● Puis d’appeler son action « list »
Note : les actions dans le framework correspondent à 
des pages, elles sont inscrites comme des méthodes 
publiques préfixées par un underscore « _ »
Schéma de navigation
Sur le site vous avez le schéma suivant pour expliquer la navigation :
Nous allons
expliquer
sur les
prochains
slides
L’appel du module en détail
● Quand on dit on
« charge le module »
module_article
● Cela signifie que l’on va
instancier un objet à
partir de la classe
module_article, située
dans le fichier
module/article/main.php
Appel du module
Module « article »
Action « list »
Instanciation de module_article
Appel de la méthode _list()
de cette instance du module
Méthode before()
Appel de la méthode before()
Méthode after()
Appel de la méthode after()
Appel explicite
Appel explicite
Appel implicite
Zoom sur before()● before()
Comme son nom
l’indique est appelé avant
chaque appel, il est
global au module, il sera
donc appelé peu importe
l’action
● Cette méthode est
généralement
utilisée pour
instancier le layout
qui sera utilisé
Par exemple :
public function before(){
 $this­>oLayout=new _layout('template1');
 //$this­>oLayout­>addModule('menu','menu::index');
}
Zoom sur _list()● _list()
Appelant l’action
« list », on appellera
la méthode publique
_list()
● Celle-ci contient le
code de la page
● Elle contiendra l’appel à notre
couche modèle, la création
d’une ou plusieurs vues, ainsi
que l’association de la vue à
un emplacement du layout
Par exemple :
public function _list(){
 $tArticle=model_article::getInstance()­>findAll();
 $oView=new _view('article::list');
 $oView­>tArticle=$tArticle;
 $this­>oLayout­>add('main',$oView);
}
Zoom sur after()● after()
Comme son nom
l’indique est appelé à la
fin de chaque appel, il est
également global au
module, il sera donc
appelé peu importe
l’action
● Cette méthode est
généralement
utilisée afficher le
layout
Par exemple :
public function after(){
 $this­>oLayout­>show();
}

Contenu connexe

Tendances

Cours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partieCours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partiekadzaki
 
Mkframework: 01 installation
Mkframework: 01 installationMkframework: 01 installation
Mkframework: 01 installationMichael Bertocchi
 
Javascript objet : que fait ce code ?
Javascript objet : que fait ce code ?Javascript objet : que fait ce code ?
Javascript objet : que fait ce code ?Ruau Mickael
 
Réu technodejs
Réu technodejsRéu technodejs
Réu technodejsnaholyr
 
AngularJS et autres techno frontend
AngularJS et autres techno frontendAngularJS et autres techno frontend
AngularJS et autres techno frontendyllieth
 
jQuery GTI780 & MTI780 ETS A09
jQuery   GTI780 & MTI780   ETS   A09jQuery   GTI780 & MTI780   ETS   A09
jQuery GTI780 & MTI780 ETS A09Claude Coulombe
 
Comment se charge WordPress ? Le loading du core.
Comment se charge WordPress ? Le loading du core.Comment se charge WordPress ? Le loading du core.
Comment se charge WordPress ? Le loading du core.Boiteaweb
 
Créez votre site web vous-même 2/2
Créez votre site web vous-même 2/2Créez votre site web vous-même 2/2
Créez votre site web vous-même 2/2pro-info.be
 
Créez votre site web vous-même 1/2
Créez votre site web vous-même 1/2Créez votre site web vous-même 1/2
Créez votre site web vous-même 1/2pro-info.be
 
Drupal - La puissance de Drush
Drupal - La puissance de DrushDrupal - La puissance de Drush
Drupal - La puissance de DrushAlexandre Marie
 

Tendances (20)

Cours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partieCours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partie
 
Mpdf 8
Mpdf 8Mpdf 8
Mpdf 8
 
Mkframework: 01 installation
Mkframework: 01 installationMkframework: 01 installation
Mkframework: 01 installation
 
Javascript objet : que fait ce code ?
Javascript objet : que fait ce code ?Javascript objet : que fait ce code ?
Javascript objet : que fait ce code ?
 
Mpdf 6
Mpdf 6Mpdf 6
Mpdf 6
 
Mpdf 10
Mpdf 10Mpdf 10
Mpdf 10
 
Réu technodejs
Réu technodejsRéu technodejs
Réu technodejs
 
AngularJS et autres techno frontend
AngularJS et autres techno frontendAngularJS et autres techno frontend
AngularJS et autres techno frontend
 
jQuery GTI780 & MTI780 ETS A09
jQuery   GTI780 & MTI780   ETS   A09jQuery   GTI780 & MTI780   ETS   A09
jQuery GTI780 & MTI780 ETS A09
 
Marzouk jsp
Marzouk jspMarzouk jsp
Marzouk jsp
 
Express1
Express1Express1
Express1
 
Slides de la
Slides de la Slides de la
Slides de la
 
04 zoom-classe-view
04 zoom-classe-view04 zoom-classe-view
04 zoom-classe-view
 
Comment se charge WordPress ? Le loading du core.
Comment se charge WordPress ? Le loading du core.Comment se charge WordPress ? Le loading du core.
Comment se charge WordPress ? Le loading du core.
 
Marzouk-HTTP-SESSION-JEE
Marzouk-HTTP-SESSION-JEEMarzouk-HTTP-SESSION-JEE
Marzouk-HTTP-SESSION-JEE
 
Créez votre site web vous-même 2/2
Créez votre site web vous-même 2/2Créez votre site web vous-même 2/2
Créez votre site web vous-même 2/2
 
01 installation
01 installation01 installation
01 installation
 
Créez votre site web vous-même 1/2
Créez votre site web vous-même 1/2Créez votre site web vous-même 1/2
Créez votre site web vous-même 1/2
 
Un navigateur, comment ça marche
Un navigateur, comment ça marche  Un navigateur, comment ça marche
Un navigateur, comment ça marche
 
Drupal - La puissance de Drush
Drupal - La puissance de DrushDrupal - La puissance de Drush
Drupal - La puissance de Drush
 

Similaire à 03 presentation-navigation

Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2dhugomallet
 
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)Café Numérique Arlon
 
Activity
ActivityActivity
Activitydido
 
FORMATION javascript.pdf
FORMATION javascript.pdfFORMATION javascript.pdf
FORMATION javascript.pdfOualidBelbrik
 
GWT : under the hood
GWT : under the hoodGWT : under the hood
GWT : under the hoodsvuillet
 
ENIB cours CAI Web - Séance 4 - Frameworks/Spring - Cours
ENIB cours CAI Web - Séance 4 - Frameworks/Spring - CoursENIB cours CAI Web - Séance 4 - Frameworks/Spring - Cours
ENIB cours CAI Web - Séance 4 - Frameworks/Spring - CoursHoracio Gonzalez
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJSAbdoulaye Dieng
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JSAbdoulaye Dieng
 
Introduction à Angularjs
Introduction à AngularjsIntroduction à Angularjs
Introduction à AngularjsRossi Oddet
 
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniterAtsé François-Xavier KOBON
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1Sem Koto
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1Sem Koto
 
Introduction à Symfony2
Introduction à Symfony2Introduction à Symfony2
Introduction à Symfony2Hugo Hamon
 
Cours j query-id1575
Cours j query-id1575Cours j query-id1575
Cours j query-id1575kate2013
 

Similaire à 03 presentation-navigation (20)

Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2d
 
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
 
Activity
ActivityActivity
Activity
 
Intro à angular
Intro à angularIntro à angular
Intro à angular
 
Spring MVC
Spring MVCSpring MVC
Spring MVC
 
FORMATION javascript.pdf
FORMATION javascript.pdfFORMATION javascript.pdf
FORMATION javascript.pdf
 
Tuto spring
Tuto springTuto spring
Tuto spring
 
GWT : under the hood
GWT : under the hoodGWT : under the hood
GWT : under the hood
 
ENIB cours CAI Web - Séance 4 - Frameworks/Spring - Cours
ENIB cours CAI Web - Séance 4 - Frameworks/Spring - CoursENIB cours CAI Web - Séance 4 - Frameworks/Spring - Cours
ENIB cours CAI Web - Séance 4 - Frameworks/Spring - Cours
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJS
 
Springioc
SpringiocSpringioc
Springioc
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Rapport tp3 j2ee
Rapport tp3 j2eeRapport tp3 j2ee
Rapport tp3 j2ee
 
Introduction à Angularjs
Introduction à AngularjsIntroduction à Angularjs
Introduction à Angularjs
 
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1
 
Introduction à Symfony2
Introduction à Symfony2Introduction à Symfony2
Introduction à Symfony2
 
Cours j query-id1575
Cours j query-id1575Cours j query-id1575
Cours j query-id1575
 
Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
 

Plus de Michael Bertocchi

Presentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afupPresentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afupMichael Bertocchi
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanshipMichael Bertocchi
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projetsMichael Bertocchi
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projetsMichael Bertocchi
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanshipMichael Bertocchi
 
05 builder-generation-module-crud
05 builder-generation-module-crud05 builder-generation-module-crud
05 builder-generation-module-crudMichael Bertocchi
 
04 builder-generation-couche-model
04 builder-generation-couche-model04 builder-generation-couche-model
04 builder-generation-couche-modelMichael Bertocchi
 
03 presentation-builder-normal
03 presentation-builder-normal03 presentation-builder-normal
03 presentation-builder-normalMichael Bertocchi
 
02 presentation-application-normal
02 presentation-application-normal02 presentation-application-normal
02 presentation-application-normalMichael Bertocchi
 
01 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 201701 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 2017Michael Bertocchi
 

Plus de Michael Bertocchi (11)

Presentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afupPresentation mkframework software craftsmanship a l'afup
Presentation mkframework software craftsmanship a l'afup
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projets
 
06 migration-anciens-projets
06 migration-anciens-projets06 migration-anciens-projets
06 migration-anciens-projets
 
01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship01 presentation-application-software craftsmanship
01 presentation-application-software craftsmanship
 
05 zoom-classe-layout
05 zoom-classe-layout05 zoom-classe-layout
05 zoom-classe-layout
 
05 builder-generation-module-crud
05 builder-generation-module-crud05 builder-generation-module-crud
05 builder-generation-module-crud
 
04 builder-generation-couche-model
04 builder-generation-couche-model04 builder-generation-couche-model
04 builder-generation-couche-model
 
03 presentation-builder-normal
03 presentation-builder-normal03 presentation-builder-normal
03 presentation-builder-normal
 
02 presentation-application-normal
02 presentation-application-normal02 presentation-application-normal
02 presentation-application-normal
 
01 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 201701 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 2017
 

03 presentation-navigation

  • 3. index.php?:nav=article::list ● :nav= ● article::list ● Le couple module / action séparé par « :: » ● La variable «:nav » stock le couple de navigation
  • 4. Le framework interprète l’information ainsi : ● Ici, le framework va donc charger le module « article » et l’action « list » ● Ceci correspond à instancier le module module_article ● Puis d’appeler son action « list » Note : les actions dans le framework correspondent à  des pages, elles sont inscrites comme des méthodes  publiques préfixées par un underscore « _ »
  • 5. Schéma de navigation Sur le site vous avez le schéma suivant pour expliquer la navigation : Nous allons expliquer sur les prochains slides
  • 6. L’appel du module en détail ● Quand on dit on « charge le module » module_article ● Cela signifie que l’on va instancier un objet à partir de la classe module_article, située dans le fichier module/article/main.php
  • 7. Appel du module Module « article » Action « list » Instanciation de module_article Appel de la méthode _list() de cette instance du module Méthode before() Appel de la méthode before() Méthode after() Appel de la méthode after() Appel explicite Appel explicite Appel implicite
  • 8. Zoom sur before()● before() Comme son nom l’indique est appelé avant chaque appel, il est global au module, il sera donc appelé peu importe l’action ● Cette méthode est généralement utilisée pour instancier le layout qui sera utilisé Par exemple : public function before(){  $this­>oLayout=new _layout('template1');  //$this­>oLayout­>addModule('menu','menu::index'); }
  • 9. Zoom sur _list()● _list() Appelant l’action « list », on appellera la méthode publique _list() ● Celle-ci contient le code de la page ● Elle contiendra l’appel à notre couche modèle, la création d’une ou plusieurs vues, ainsi que l’association de la vue à un emplacement du layout Par exemple : public function _list(){  $tArticle=model_article::getInstance()­>findAll();  $oView=new _view('article::list');  $oView­>tArticle=$tArticle;  $this­>oLayout­>add('main',$oView); }
  • 10. Zoom sur after()● after() Comme son nom l’indique est appelé à la fin de chaque appel, il est également global au module, il sera donc appelé peu importe l’action ● Cette méthode est généralement utilisée afficher le layout Par exemple : public function after(){  $this­>oLayout­>show(); }