Un an après la sortie de la première version utilisable, voici venir la première version stable de Movicon.
Pour rappel, Movicon est un framework (ou cadriciel) implémentant l'architecture Modèle-Vue-Contrôleur (MVC) en PHP. Il a la particularité d'être très simple et entièrement programmé de façon fonctionnelle.
Il est très facile d'installation et ne nécessite que l'extraction d'un zip où de nombreux autres frameworks demandent l'emploi d'une ligne de commande. Dès lors, on peut commencer à travailler sur son application avec très peu de paramétrages. Il dispose en outre d'un système d'abstraction de base de données permettant l'usage quasi-transparent d'une base ou d'une autre.
De nombreuses améliorations ont fait leur apparition depuis la version 0.2. Ainsi, Movicon dispose à présent d'un nouveau pilote de base de données pour Oracle et de la base de donnée locale en PHP PHPtextDB, faite sur mesure pour Movicon.
Un système de composants (plug-in) sérieux a également émergé, donnant naissance à un composant d'authentification intelligent. D'autres composants sont en cours de développement.
Il est maintenant possible de charger plusieurs contrôleurs à la fois, le standard de nommage des fonctions ayant changé afin d'éviter les collisions de noms autant que faire se peut.
Le coeur de l'application a subit maintes corrections de bugs, et a enfin atteint un niveau stable. L'utilisation de Movicon sur serveur de production est donc désormais possible.
Le développement de l'application est passé sous git et est hébergé sur gitorious.
Enfin, la documentation a été mise à jour et une documentation technique générée par Doxygen accompagne le tout.
Pour faire plaisir au sieur Octabrain, je n'ai pas mis de tutoriel vidéos cette fois!
Liens:
Site de Movicon: [http://movicon.dyndns.org/]
Documentation: [http://movicon.dyndns.org/bookhtml/movicon_toc.html]
Référence technique: [http://movicon.dyndns.org/reference/files.html]
Page gitorious du projet: [http://gitorious.org/movicon]
# Cadriciel & Preums FTW!!!
Posté par Frank-N-Furter . Évalué à 9.
Et pour revenir dans le sujet, tu as quoi contre les vidéos ? :)
Depending on the time of day, the French go either way.
[^] # Les vidéos
Posté par Brioche4012 (site web personnel) . Évalué à 2.
http://linuxfr.org/~Brioche4012/28768.html
[^] # Re: Les vidéos
Posté par Anonyme . Évalué à 4.
[^] # Re: Les vidéos
Posté par téthis . Évalué à 2.
The capacity of the human mind for swallowing nonsense and spewing it forth in violent and repressive action has never yet been plumbed. -- Robert A. Heinlein
[^] # Re: Les vidéos
Posté par Frank-N-Furter . Évalué à 2.
Toi même ? C'est quoi?
Depending on the time of day, the French go either way.
[^] # Re: Les vidéos
Posté par téthis . Évalué à 4.
Et le braviciel, connais-tu ? C'est la forme informatique de la bravitude, forme politique de la bravoure. Ex : « On a réussi à finir le programme cette nuit grâce à des litres de café et la méthode la rache, c'est un braviciel. »
The capacity of the human mind for swallowing nonsense and spewing it forth in violent and repressive action has never yet been plumbed. -- Robert A. Heinlein
[^] # Re: Les vidéos
Posté par Frank-N-Furter . Évalué à 7.
Depending on the time of day, the French go either way.
[^] # Re: Cadriciel & Preums FTW!!!
Posté par Alexandre COLLIGNON (site web personnel) . Évalué à 3.
chez BP on en boucherait des conduits !
Alexandre COLLIGNON
# Retour vers le futur !
Posté par Nicolas Blanco (site web personnel) . Évalué à 2.
On est bien retourné au 20ème siècle Marty !
[^] # Re: Retour vers le futur !
Posté par Brioche4012 (site web personnel) . Évalué à 2.
Même si ma Deloréane est en double file, je sais que nous sommes au 20eme siecle. Ce projet est uniquement fonctionnel parce que c'était pour moi un challenge de faire un programme en PHP sans utiliser de code orienté objet.
Quant aux tests unitaires, je n'ai jamais été très fort pour ça. Si tu t'y connais et que ça t'intéresse, je serais fort honoré si tu écrivais quelques tests unitaires pour Movicon.
Enfin, non, il n'est pas compatible PHP3. Il contient certaines choses uniquement compatibles PHP5.
[^] # Re: Retour vers le futur !
Posté par RB . Évalué à 2.
Par contre PHP comme language fonctionnel pour moi ce n'est tout simplement pas possible (proprement), car il n'a pas les prérequis de base pour cela (les fonctions comme manipulables comme données, ...).
[^] # Re: Retour vers le futur !
Posté par jeffcom . Évalué à 10.
Justement, on y est plus depuis quelques années…
[^] # Re: Retour vers le futur !
Posté par pasScott pasForstall . Évalué à -1.
Autant je comprends le cote challenge, autant si tu veux diffuser ton projet et le mener qq part, c'est un peu dommage d'utiliser des techniques de 1975. Surtout que dans le milieu du dev web, l'objet est tres largement dominant (et ya de bonnes raisons a ca), tu vas te couper a la fois de contributeurs et d'utilisateurs.
Bon après, ca m'empechera pas de dormir la nuit, et loin de moi l'idee de te saper le moral, mais ta reponse fait lever un sourcil comme disent nos amis anglophones.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Retour vers le futur !
Posté par ɹǝıʌıʃO . Évalué à 2.
[^] # Re: Retour vers le futur !
Posté par pasScott pasForstall . Évalué à 1.
Toujours est il que c'est loin d'etre la meilleure solution et que ca va probablement en rebuter plus d'un.
Le fonctionnel a ses avantages dans certains cas tres precis, je suis parfaitement d'accord avec toi, mais dans le cas qui nous interesse ici, un framework web qui implement mvc donc, l'imperatif n'a strictement aucun interet, plutot des inconvenients en fait.
Bon apres, on pourrait diverger sur la necessite d'avoir un framework pour implementer mvc.
Je suis loin d'etre convaincu de la chose, dans le web ce qui est reellement interessant c'est un framework pour s'abstraire des couches basses du web (ces conneries de sessions, url et tout le tralala qu'on a rajoute pour rendre http stateful) et, aussi important si ce n'est plus, un framework UI oriente composant.
Le premier a pas franchement grand chose a voir avec MVC.
Le deuxieme, indirectement.
Une fois que t'as ca, c'est a dire une bonne implementation de V, le C vient tout seul faire la glue avec le M (qui est a la charge du dev quoi qu'il en soit). Un coup d'autowiring de tes controlleurs dans les vues, un coup d'autowiring de tes services/assemblers dans tes controlleurs et paf, ton mvc il vient tout seul comme un grand.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Retour vers le futur !
Posté par Brioche4012 (site web personnel) . Évalué à 3.
[^] # Re: Retour vers le futur !
Posté par pasScott pasForstall . Évalué à 1.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Retour vers le futur !
Posté par Brioche4012 (site web personnel) . Évalué à 3.
Si tu trouve de vrais problèmes concrets dans le code, je t'en prie fais-nous en part. En attendant, quel que soit le paradigme choisi, impératif, fonctionnel ou objet, l'application reste faisable et utilisable.
Après si _toi_ tu n'aime pas, parce que t'aime l'objet et que le fonctionnel t'ennuie, ça n'apporte pas grand chose ni au projet, ni aux programmeurs qui lisent ton commentaire.
[^] # Re: Retour vers le futur !
Posté par pasScott pasForstall . Évalué à -1.
esoterique?
Demander pourquoi utiliser un paradigme qui a montre ses limites ya 20 ans plutot qu'un paradigme qui fait l'unanimite dans la communaute depuis 20 ans, c'est une raison esoterique?
Surtout quand la reponse a cette question c'est "pour le fun, c'est rigolo", ca inspire pas confiance.
J'ai pas besoin d'aller voir dans le code pour trouver un probleme concret, le probleme concret commence par le choix du paradigme.
Ca a beau marcher tres bien, faut etre un peu farfelu quand tu fais du dev objet pour aller choisir un framework imperatif, tu crois pas?
Partant de la, ca va pas etre evident de trouver des utilisateurs...
Apres, si ca te deplait que je dise ca, ne pose pas des questions dont tu ne veux pas entendre la reponse, autrement dit ne cherche pas a diffuser ton projet si tu ne vuex pas qu'on te pose la premiere question qui vient a l'esprit de tout le monde en entendant "framework MVC imperatif ecrit comme ca parce que c'est rigolo".
C'est tout ce que je dit.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
# Commentaire dans le code
Posté par Glorf . Évalué à 1.
// Starting the session.
?session_start();
Autant pour des trucs comme
// Defining the base path, essential to load system libs.
je comprends, mais là un simple session_start();, c'est quand même pas très compliqué ...define('SYSPATH', dirname(__FILE__) . '/');
[^] # Re: Commentaire dans le code
Posté par Brioche4012 (site web personnel) . Évalué à 2.
[^] # Re: Commentaire dans le code
Posté par pasScott pasForstall . Évalué à 3.
C'est meme une grosse source de troll.
Le pb avec trop de commentaires, c'est qu'il faut le maintenir ce trop de commentaires.
En pratique, ce qui se passe, c'est que tu vas ecrire une tartine, puis l'oublier cette tartine.
Ensuite, toi ou quelqu'un d'autre va venir, regler un probleme, refactorer ou autre, et va laisser le commentaire inchange (forcement, il influe pas sur le build, et on est presse, faut que ca marche la maintenant).
Et paf, pasteque. Tu te retrouves avec un commentaire qui potentiellement dit le contraire de ce qu'il se passe, au pire, au mieux tu te retrouves avec un commentaire qui veut pas dire grand chose.
Et quand tu reviens encore plus tard (ou qq1 d'autre), tu te dis "mais merde, ca fait pas du tout ce que c'est cense faire... Qui qu'a tord? Qui qu'a raison?" Et hop la, t'es parti pour une demi journee de "bon, on va d'abord voire ce que ca fait precisement, et apres on va faire le tour du bureau pour trouver qui sait pourquoi le commentaire et le code sont desynchronises".
C'est un peu le meme probleme avec les jean jean qui unit testent des getters et setter, tu change un attribut, et t'es parti pour une journee dans une jungle de classes de test de 4000 lignes qui au final ne font que unit tester la fonction "generate getters/setters..." d'eclipse.
Quoi, ca se voit que je suis sur ce genre de probleme a la con depuis ce matin, que j'ai a peine avance d'un poil, et que ca me gonfle ces test unitaires aussi debiles qu'inutiles?
Sans meme parler de la pollution du code. Un commentaire qui dit // iteration variable i c'est juste du bruit. Tout le monde sait ce que i veut dire.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.