1320

Sasume (./1313) :
Folco (./1305) :
C'est pour ça que jamais je coderai du web, je supporterais pas ce bourbier infame sick
C’est « en train » de s’arranger, mais c’est effectivement actuellement complètement scandaleux.

Bof, même si les différents navigateurs commencent à être normalisés, ça restera toujours galère de faire un truc un peu complexe en web... On passe son temps à contourner les limites du langages et à pallier l'absence de bibliothèque standard complète.
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

1321

C'est comme toutes les technologies en pleine évolution, si on veut utiliser les dernières nouveautés forcément on se retrouve à essuyer les plâtres... Aujourd'hui (= Firefox, Chrome, Opera, IE9...) faire des coins arrondis ne pose pas de problème, et on ne s'amuse pas à gérer les attributs "-moz-machin" ou "-webkit-bidule" qui étaient nécessaires au moment où cette partie de yAronet a été développée (ça fait combien, 5 ans ? plus ?).

Pas de surprise, ça s'est toujours passé comme ça, et il y a de grandes chances pour que ça continue à le faire. Testez les nouveautés d'HTML5 sur les navigateurs "modernes" et regardez ce que ça donne au niveau compatibilité, c'est aussi chaotique que ça l'était pour faire des bords arrondis il y a 5 ans. C'est comme ça que ça se stabilise, petit à petit.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

1322

flanker (./1320) :
Bof, même si les différents navigateurs commencent à être normalisés, ça restera toujours galère de faire un truc un peu complexe en web... On passe son temps à contourner les limites du langages et à pallier l'absence de bibliothèque standard complète.
Quel langage ? Je pense que peu importe les langages de toute façon, car il doit toujours être possible d’écrire des outils qui génère le code à notre place si celui-ci est trop bas niveau.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

1323

bah ce n'est valable que du coté client, niveau serveur tout va bien

maintenant coté client, des librairies comme jquery donne un niveau d'abstraction très correct pour ne plus se prendre la tête avec les incompatibilités entre navigateurs

pour html5 et les vieux navigateurs, des projets comme html5shiv, sans être parfaits, déclarent toute les nouvelles balises afin qu'elles soit parsés part ie6 et co

pour les vidéos, par exemple, videojs se démerde de voir les disponibilités du navigateur pour dans chaque cas celle ci s'affiche, que se soit par du flash ou du html5

le css 3 c'est une autre histoire, si on veut vraiment des coins arrondis partout sans galérer avec 8 div englobant le contenu à arrondir on peu prendre par exemple le plugin jquery "corner"

bon c'est sur que c'est et restera de la bidouille, mais de la bidouille organisé et aidé un minimum ^^"
et la le mec il le pécho par le bras et il lui dit '

1324

Tiens, tant qu'on en est là-dedans... je suis en train d'essayer de faire des classes d'objets PHP qui me permettraient d'éviter d'avoir à gérer plusieurs niveau de langage (css, html, javascript) et faire que tout soit fait directement en PHP. Avant que je réinvente la roue, est-ce que vous savez si ça existe déjà ?
avatar

1325

en php je crois pas (enfin j’en sais rien mais ça m’étonnerait), mais il y a eu plusieurs tentatives pour tout écrire dans un même langage oui (par exemple ça : http://opalang.org/ mais je ne sais pas si c’est le genre de chose que tu cherches)
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

1326

Essayer de réduire le web (html + css + javascript + ...) en un seul langage, c'est la raison d'être d'un paquet de technologies actuelles, mais à ma connaissance aucune n'a réussi à faire ça de façon agréable à utiliser smile

Récemment j'ai entendu parler d'Opa par exemple, mais je n'ai pas trop regardé à quoi ça ressemblait. Par contre en PHP, aucune idée :/
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

1327

Nil: tu peux faire un serveur en javascript, me souviens plus du nom trioui

1328

et la le mec il le pécho par le bras et il lui dit '

1329

Hum, tout ça ne m'a pas bien l'air de correspondre à ce que je veux (mais si ça se trouve, je découvrirai à l'usage que ce que je veux est en réalité impossible à faire).
avatar

1330

ben décris ce que tu veux
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

1331

Je pense pas que se soit exactement comparable a ce que tu fait mais GWT de Google permet de faire du tout Java (le Java coté client est compilé en JavaScript).
avatar

1332

tu veut quoi exactement ?

suivant ce que tu veut je peu faire mon lourd et te parler de mon moteur :- )


celui ci ne réduit pas tout en un seul langage loin de la, mais te permet d'avoir des bloc indépendant qui vont eux même déclarer le nécessaire à leur fonctionnement (insertion de fichier ou code js/jquery/css dans le head, insertion du nécessaire à leur fonctionnement dans le body, ...)

par exemple j'ai un plugin "editable" qui, si tu n'est pas admin va juste afficher du texte,
si tu est admin celui ci va afficher le même texte mais avec une bordure en plus, un crayon, les event jquery nécessaire aux clic sur le crayon, puis inclure jquery.tools et wymeditor et caler le nécessaire dans le body pour t'afficher un overlay avec l’éditeur à l’intérieur, et aussi rajouter les event ajax de sauvegarde etc ...

bref toi au final ta juste à mettre §editable|nom-de-la-zone-editable§ dans ton squelette de page ou autre, rien d'autre et tout se fera automatiquement sans te prendre la tête, le plugin analysera également l'url pour avoir un "editable" vraiment unique, ou bien il peu t'en faire des commun à une page ou au site complet

bref, il faut passer du temps à créer les petit plugins mais après fini la galère ^^

vue visiteur : mWdz vue admin : UJW3 l’éditeur : AYU4
et la le mec il le pécho par le bras et il lui dit '

1333

Ce que je veux ? Ben une classe d'abstraction qui me permette de faire un peu comme ce que je faisais en Delphi à l'époque (mais c'est la même chose en VB ou en n'importe quel langage objet qui a des classes primaires pour travailler dans un environnement graphique)...
Typiquement, je commence ma page en créant un objet htmlPage. A cet objet, j'ajoute des éléments qui sont eux-mêmes des objets. Chaque élément a des paramètres, qui sont en fait des attributs (principalement CSS) et des méthodes, qui sont des interactions directes (alors gérées par du javascript auto généré).
Je ne suis pas allé plus loin, donc je ne sais pas encore trop comment je vais gérer le js complexe. Par contre, de cette façon, je n'ai déjà plus à gérer de CSS et de HTML, puisque je ne fais plus que manipuler des objets en PHP.
avatar

1334

c'est pas la galère pour intégrer/changer le design ?
et la le mec il le pécho par le bras et il lui dit '

1335

Ben je ne sais pas, je verrais à l'usage, mais je pense au contraire que ça peut simplifier pas mal les choses au niveau intégration. Après, c'est sûr qu'on perd un des intérêts du CSS, mais il y a peut être quelque chose à inventer à ce niveau...
avatar

1336

Nil (./1324) :
des classes d'objets

Mais t'es puissant dis-moi Nil lovegrin

1337

Nil (./1324) :
Tiens, tant qu'on en est là-dedans... je suis en train d'essayer de faire des classes d'objets PHP qui me permettraient d'éviter d'avoir à gérer plusieurs niveau de langage (css, html, javascript) et faire que tout soit fait directement en PHP. Avant que je réinvente la roue, est-ce que vous savez si ça existe déjà ?
GWT et opa ont déjà été cité, sinon j’ai découvert récemment ça, c’est un projet permettant d’écrire du Javascript avec un DSL interne en Scala.

Mais sinon, je ne pense pas qu’il soit vraiment souhaitable de tendre vers un modèle de développement dans un seul langage tel que PHP. En fait l’utilisation de plusieurs langages prend du sens quand chacun sert à gérer des préoccupations différentes. Si tout ce qui concerne le visuel du site est géré par mon CSS, ça ne me dérange pas d’avoir à écrire du CSS, surtout qu’au final c’est plutôt un langage très pratique pour définir l’aspect visuel du contenu (bon il reste encore quelques lacunes, comme la possibilité de définir des mixins, mais on peut y remédier en passant par un système comme LESS). De même, HTML est adapté pour décrire le contenu de mes pages (même si, là encore, il est possible d’écrire un code moins verbeux avec HAML). Enfin, Javascript a aussi sa place pour gérer tous les aspects dynamiques de la page, même si c’est un langage mal foutu et non typé statiquement (mais là encore on peut contourner certaines limitations en utilisant CoffeeScript).

En fait, je ne vois aucun inconvénient à utiliser un langage spécifique pour chaque domaine spécifique de mon application Web. Après, si en changeant l’aspect visuel d’un composant je dois toucher mon Javascript, mon HTML et mon CSS c’est qu’il y a un problème. Il faut essayer de limiter au maximum les couplages entre le HTML, le CSS et le Javascript pour pouvoir tirer au maximum de leurs possibilités respectives. Sinon, avec ton modèle de développement, ton générateur de code à partir d’objets PHP se restreindra à un sous-ensemble probablement trop limité de CSS, Javascript et HTML.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

1338

Ben le sous-ensemble de CSS et de HTML, ça peut être simplement les spécifications du W3C pour l'xhtml 1.0 + CSS 3.
En fait, le plus problématique à mon sens en utilisant autant de langages/descripteurs est la perte de temps quand on doit manipuler des données (c'est à dire tout le temps, en fait). Les récupérer, les tester, les valider...
Ca, plus le fait que je trouve que le html est un bon outil pour décrire un document, mais qu'il n'est pas bon pour en construire un (trop verbeux - bob avait fait un sujet à ce propos, il me semble, d'ailleurs). Je trouve amusant qu'on ait quantité de classes pour construire du PDF, des fichiers Word, Excel et tutti quanti, mais rien pour construire du HTML, alors que c'est quand même bien pratique et que ça permet de bien voir les hiérarchies dans les balises.
L'autre gros problème vient du fait qu'on utilise quand même deux langages (PHP et Javascript) qui ont tous les deux des subtilités certaines, et qui demandent chacun des compétences précises (mais ma solution ne permet pas de venir à bout de se problème, c'est plus une constatation d'ordre général). On est obligé de jongler avec des structures de contrôle qui ne sont pas exactement les mêmes, avec des variables qui réagissent différemment, etc. Idéalement, avoir un même langage qui traiterait l'aspect client et l'aspect serveur (mais vraiment tout l'aspect serveur) permettrait de mieux organiser les scripts.
Folco (./1336) :
Mais t'es puissant dis-moi Nil love.gif biggrin.gif
vtff embarrassed tongue (en fait, j'ai pris l'habitude de toujours spécifier parce qu'en Pascal orienté objet il y a un énorme contresens : ce qui est appelé "object" est en fait une "class").
avatar

1339

pencil Sasume sauf pour ça
Il faut essayer de limiter au maximum les couplages entre le HTML, le CSS et le Javascript pour pouvoir tirer au maximum de leurs possibilités respectives.

je ne pense pas, car tout est fortement lié, ou disons presque tout lié sur le css, surtout en utilisant jquery à profusion, les sélecteur css sont ultra puissants, directement utilisés par jquery, et donc, si l'on s'éloigne d'une sélection classique (classique => je sélectionne t'elle classe ou t'el id)

par exemple avec un code comme ça :
[source=js]$("ul.admin-menu span").click(function()
{ var t = $(this);
var ul = t.siblings("ul");
if(ul.length)
{ ul.attr("data-click",1);
t.parent().parent().children("li").children("ul:visible").not("[data-click=1]").hide(500);
ul.attr("data-click",0).toggle(500);
}
});[/source](en gros au click sur un span contenu dans un ul li, on ferme les autre ul déjà ouvert du même niveau et on ouvre ou ferme celui sur lequel on à cliqué, avec gestion à n niveaux)

si demain tu change ta structure html et donc le php la générant, tu sera dans la mouise et il faudra aussi reprendre le js et css
par contre tu pourra faire des modif profondes dans le css sans conséquences

le html est justement assez bien structuré pour en faire faire au final ce que l'on veut via le css, limite il vaut mieux penser à google et donc aux données que l'on veut voir apparaitres, comment celles ci serons t'elle traitées et classées
et c'est la tout l’intérêt du html5 avec ses nouvelles balises section, article, hgroup, header, footer, image avec texte lié etc ..

la structure est fondamentale, après c'est au js et css de la "manipuler"

je pense que les choses en commun doivent être fortement liées, mais seulement celles ci, afin d'en faire des lego, facilement imbricables ensembles sans énorme effet de bord

d'ou l’intérêt que chaque brique puisse avoir des points d'entrée dans le style css, le js pur, le jquery, et le body, et aussi via les dépendances de librairies ou autre, via une api simple
ça permet donc de tout centraliser en un seul fichier php qui ira insérer chaque élément de ce "module", ou tout est lié ensemble, en utilisant chaque atout de chaque langage, sans restriction.
et la le mec il le pécho par le bras et il lui dit '

1340

Nil (./1333) :
Ce que je veux ? Ben une classe d'abstraction qui me permette de faire un peu comme ce que je faisais en Delphi à l'époque (mais c'est la même chose en VB ou en n'importe quel langage objet qui a des classes primaires pour travailler dans un environnement graphique)...
Typiquement, je commence ma page en créant un objet htmlPage. A cet objet, j'ajoute des éléments qui sont eux-mêmes des objets. Chaque élément a des paramètres, qui sont en fait des attributs (principalement CSS) et des méthodes, qui sont des interactions directes (alors gérées par du javascript auto généré).
Je ne suis pas allé plus loin, donc je ne sais pas encore trop comment je vais gérer le js complexe. Par contre, de cette façon, je n'ai déjà plus à gérer de CSS et de HTML, puisque je ne fais plus que manipuler des objets en PHP.

Ben, l'environnement Dot Net via Visual Studio fait exactement ça, non ?

1341

./1339 dans ton exemple justement ton code Javascript est super fragile car il pètera à la moindre modification du markup (genre sii on wrappe les éléments dans des div il faut ajouter un .parent()). Je pense qu'il faut écrire du code Javascript le moins couplé possible au markup, donc exit jQuery qui ne fonctionne que par sélecteurs susceptibles de casser à la moindre modification du markup. Cela dit, dans ton cas ça permet effectivement d'écrire un code plutôt concis (par rapport à écrire un vrai composant avec un état et tout et tout), donc je ne sais pas trop ce qui vaut le mieux...
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

1342

Pen^2 (./1340) :
Ben, l'environnement Dot Net via Visual Studio fait exactement ça, non ?
Possible, mais je n'ai pas utilisé d'outils MS depuis... longtemps grin (je sais qu'il y a d'autres environnements qui font ça, cela dit, comme Webdev, RadPHP XE...).
avatar

1343

1344

./1343 > lol c'est pas faux du tout, et le pire c'est que les mac se vendent bien mieux qu'avant, le design est l' iclef.
dans ton exemple justement ton code Javascript est super fragile car il pètera à la moindre modification du markup

c'est justement ce que je dit, et c'est aussi pour la même raison que ton html doit être réfléchi bien en avant pour ne pas devoir le changer à tout bout de champs, et qu'ensuite seulement tu fasse du js/css dédié

et si comme tu le suggère, subitement tu doit rajouter un wrap au dessus du span, il faudra alors revoir également le css pour y insérer ton div (sauf si bien sur tu est passé par un max de classe)

Après dans mon cas si je doit changer c'est pas la mort, le php générant ce html et celui insérant le js sont à 10 lignes d’écarts dans le même fichier
et la le mec il le pécho par le bras et il lui dit '

1345

Tiens j’ai une question, quelqu’un sait s’il y a un raccourci ou une extension firefox qui permet de figer complètement une page ? appuyer sur esc interrompt le chargement s’il est encore en cours et fige les gifs animés, ce qui est déjà pas mal, mais ça laisse tourner les timers javascript. Il n’y aurait pas un moyen de vraiment tout stopper ?
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

1346

En dehors de ctrl+w ? Je ne sais pas... Mais ça serait intéressant, effectivement.

1347

1348

hmmm je vais regarder, sinon j’ai trouvé ceci : http://netticat.ath.cx/RightToClick/RightToClick.htm qui permet (entre autres) de désactiver les timers sur une page, ça a l’air pas mal
edit : bon ça arrête effectivement tous les timers (d’un clic ou d’un raccourci), c’est parfait.
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

1349

adopté heart

mais je me demande si ça fait pas double usage avec noscript

1350