Scoubada bada badawok !

La base web de v3 à 5, récemment revue en framework a été refactorisée de manière à devenir un projet bien indépendant de ces utilisation (via un externals svn par exemple).

Son nom : Badawok pour BAse web de DAaboo frameWOrK.

Pourquoi pas Badawork ? Un peu dur à prononcer. Comme beaucoup de mes projet, ça doit sonner Ork mais pas devenir difficile à dire. Simple et amusant en gardant une signification, Badawok est un nom qui convient.

Comme annoncé sur mon blog dans ces articles :

http://blog.daaboo.net/2012/01/base-web-deviendra-framework/

http://blog.daaboo.net/2012/01/base-web-framework-badawok-6-0/

Badawok change pas mal de choses sans changer pour autant ce qui a fait sa force jusqu’ici, càd sa fiabilité, sa flexibilité, son côté « pour développeur/sysadmin » et son multilinguisme.

Jamais lâché, toujours amélioré !

Badawok est, comme à chaque sortie d’une nouvelle version, le chef d’oeuvre du moment, rassemblant la somme d’expériences et de retours concrets. Ainsi il est le même, en mieux !

La majeure partie des modifications viennent du coeur, un code procédural divisé en objet, objet qu’est devenu le framework. Jusque là juste l’appel change. L’index installé est vide et appelle Badawok.

Ensuite on a le traditionnel routeur. Lui a complètement été réécris. La langue devient obligatoire (avec fallback) pour prévenir le bon référencement en cas de changement du nombres de langues.

Celui-ci rend plus d’information que précédemment. Il envoie non seulement le module (page/système) demandé mais aussi son action au lieu de le faire en interne au module. Il est également capable de préparer de manière simple non-traitée les arguments supplémentaires qui lui sont parvenu par l’url (pas le querystring).

La suite est juste une mise en objet des différentes fonctions utilitaires ou de templates.

Badawok est à son étape de finitions. Bien que certaines partie peuvent encore changer de place la refactorisation est au point.

Un projet réel en cours sert de mise en situation pour les tests et corrections.

Base web, Framework : Badawok 6.0

Ça y est, la 6ème version refactorisée de ma base web est sortie sous le premier nom de Badawok.

Quelles sont les changements majeurs ?

Le système est Orienté Objet jusqu’à la moelle. Le procédural a été découpé en méthode d’un objet Badawok, ce qui ne change absolument rien au déroulement des opérations, juste la manière.

Le système n’appelle plus un module qui se débrouille mais le nouveau routeur cible directement une méthode de ce module, ce qui découpe de manière plus claire les modules (pages/système).

Les fonctions globales ont étés encapsulée par des objets : traduction, authentification (maintenant inclus d’office), templates réparti entre Badawok et la gestion individuelle des pages.

Certaines parties ont juste été affinée, autant en profiter. Tel que la classe existante de stockage ou la configuration globale.

Badawok bénéficie d’un installateur permettant de l’avoir en externals en versionning. Ainsi on peut le mettre facilement à jour et gérer sois-même la mise à jour des fichiers modifiés sans impacter d’office votre projet. Le but étant qu’on ne touche qu’au coeur de Badawok sans impacter le projet. Sauf si on refactorise pour un mieux et que cela rende incompatible tout projet de version antérieur, normal.

Typiquement l’utilisation reste la même, bien qu’éclaircie et plus facile à maîtriser. Badawok, c’est la base web frameworkée en mieux ! 🙂

La flexibilité et les auto-adaptations ont été améliorées, ce qui correspond mieux à l’idée type que nous désirons suivre, tel que le courant web moderne/à venir.

Dernier changement majeur est bien celui des urls. Le fichier pourra surement devenir un .htaccess standard au lieu de la version propre que nous avions mise au point, cependant une config apache personnelle (vhost) reste nécessaire. Nous restons dans une idée « pour développeur/sysadmin », avoir la main sur l’ensemble de son projet. Ceci impacte directement la manière de faire reconnaître les urls dans un idée multilingue mais augmente la facilité de rajouter ou modifier ces urls. Au lieu de les avoir en dur, elle se calcul par le nouveau routeur qui cherchera inversement le mot clef qui donnera les éléments à contacter automatiquement, avec fallback bien entendu.

Cette version est en cours de debug, finitions. Rien de tel qu’un projet réel pour le mettre à l’épreuve.

Tech aura bientôt une page consacrée au suivi de Badawok. Affaire à suivre 🙂 .

DosBox c’est hasbeen, vive html 5 !

Une idée farfelue en regardant les jeux géniaux auxquels ont a joué, tel Monkey Island, Loom, Indiana Jones etc…

Du coup, en regardant la technologie présente, est-ce faisable en html 5 ? Ainsi m’est venu l’idée de lancer ce projet ScummWeb (nom non définitif).

Évidemment je me doute que tout ne sera pas possible directement mais j’y travail.

Comme début on a une intro daaboo scriptée fonctionnelle avec un goto_stage sur lui-même. Les joyeusetés arrivent avec le fond, persos et images animées en tous genres.

On verra ce que ça va donner 🙂

Base web deviendra framework

La base web de daaboo.net qui est actuellement à la version 5.0 va passer à la 5.2 et devenir un framework, modeste mais bien 🙂 !

Pourquoi 5.2 et pas 6.0 si ce changement de type annonce une refactorisation importante ?

La base de cette base web sans nom fait exactement ce qu’elle est censé faire, càd interpréter l’url demandée, fournir les modules et rendre un résultat.

Cependant on en apprend tous les jours et il est bon de se remettre en question. Du coup des revues de mécanismes me semble une bonne chose, sans changer les fonctionnalités. Ainsi il me semble plus approprié de faire une 5.2 (incluant la 5.1 qui n’a pas été déclarée comme tel).

Côté versionnage cette version prendra son indépendance, elle pourra, je l’espère devenir une externals à part entière. Beaucoup plus facile de faire des mises à jours du coeur. Ceci entraînera l’apparition d’un installateur.

Côté concret de ce qui va changer, les actions ne seront plus un gros switch du constructeur mais un revue objet de la méthodologie.

Des détails comme la dépendance yml mieux gérée, une maj des js et de quelques aidant divers. LE tout accompagné d’un petit nettoyage générale.

On pourrait y voir un aboutissement plus mûr de cette base web pour développeur, moins de chipotage interne pour la mise en place et encore plus rapidement dans le concret du projet.

Cette 5.2 sera utilisée pour le site terragusto.be actuellement en préparation 🙂 !

Base web devient framework

Moi qui ai toujours défendu l’appellation base web, car framework ne convenait pas, vais devoir m’y faire. L’évolution de la version 5.0 à la version 5.2 fera de cette petite base web un modeste framework.

Comme tous on ne lui demande que de gérer la structure générale du site. Afficher la page demandée selon une url donnée, pour une langue donnée en appelant les modules demandés.

On va restructurer avec un peu plus d’objets l’existant, apporter l’une ou l’autre correction/amélioration et le stabiliser pour l’utiliser pour un nouveau site web client.

Cet upgrade impactera le projet Be a Buzz immanquablement et peut-être certains autres si besoin était.

Le ménage a été fait côté versionnage, reste à finaliser cette première version totalement indépendante du repository. Externals bonjour, faudra adapter.