Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

Présentation du Kult Engine.

Par Théo SORRIAUX Publié le 24/10/2017 à 17:01:00 Noter cet article:
(0 votes)
Avis favorable du comité de lecture

Bonjour à tous, dans cet article un peu spécial je vais présenter mon propre framework web en PHP, le Kult Engine.

Il est disponible ici : https://github.com/Philiphil/Kult-Engine

Qu'est-ce qu'un Framework ?

Un framework, c'est un groupe de composant, de fonctions et d'objets dont le but est de servir de fondation pour des projets. On entend aussi le terme "lib" pour library ou encore bibliothèque en français, une lib c'est une poignée de composants dont le but est de fournir un service.

Par exemple :

SDL sert à faire de l'affichage en C/C++, c'est une lib

Symfony sert à faire des sites web en PHP et vous contraint à utiliser son architecture, c'est un framework.

Un framework peut être vu comme une collection de lib unifiée

Pourquoi pas Symfony ?

Alors une question tout à fait légitime qu'on peut me poser : Pourquoi créer un framework et pas utiliser un existant comme symphony, laravel ou un autre ?

Car je suis très mécontent de ces derniers.

  • Personne ne devrait pas avoir besoin de linux, composer, wget, docker, git et de lancer 11 lignes de commande afin de télécharger une archive qui contient des fichiers php ...

  • "use nom_du_framework\nom_du_composant\sous_nom_du_composant\nom_de_classe\nom_de_classe" ne devrait pas avoir à figurer 10 fois au début de chacun de mes fichiers.

  • Je ne devrais pas avoir à créer une nouvelle template, un fichier texte, une page et finalement une route, à chaque fois que je veux créer une nouvelle page

  • Je fais du php, pourquoi imposer une syntaxe semblable à nodejs, jee ou encore ruby ?

  • Je ne veux pas avoir à apprendre comment les 8 composants principaux, leurs 27 interfaces et les 14 helpers qui vont avec marchent pour être en mesure de faire un hello world

Ainsi, j'ai décidé de commencer un framework très différent de ce qui se fait.

Historique

La première version du Kult Engine remonte à 2015 et a sans cesse été amélioré à travers divers projets scolaires, personnels et professionnels.

Présentation

Le kult-engine est un framework full stack écrit en PHP 7/Javascript très simple à utiliser/installer/apprendre.

Respectant le modèle MVC, son but est d'être un set d'outil qui correspond à toutes les taches communes assurées par un site web.

Voici une liste non exhaustive de ses fonctionnalités :

  • Helper SQL

  • ORM

  • Mult langue

  • Helper ajax

  • Helper Webservice

  • Sessions

  • Templating

  • Logs

  • Rest

  • Buffer

  • Cache pour les input

  • Hook

  • Module d'E-Commerce

  • Importateur

  • Helper upload et image

  • Helper db clé-valeur

A quoi cela ressemble ?

Téléchargez l'archive, dezipez la, remplissez ./config.php, faites pointer apache sur le dossier /html/ et vous êtes prêt ! Voici un exemple de hello world.

include '../config.php';
use kult_engine as k;

k\invoker::require_basics();

k\page::standardpage_head();
k\page::standardpage_header();
k\page::standardpage_body_begin();

echo k\text::get_text('hello');

k\page::standardpage_body_end();
k\page::standardpage_footer();

Conclusion

Je vous ai présenter mon framework le kult-engine, j'écrirais bientôt une série de tutoriel sur ses diverses fonctionnalités.

J'espère vous avoir convaincu d'y jeter un coup d'œil ou encore mieux de l'essayer ou encore mieux de faire votre propre framework, merci de m'avoir lu !

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels