par Stéphane Bernabé » ven. mai 07, 2004 10:49 am
Bon, je vous explique encore une fois cette histoire de temporisation, vous n'avez visiblement pas compris comment elle fonctionne.
Nous interceptons les touches tapées par nos clients "à la volée", et fabriquons la clé de recherche sur l'index du fichier au fur et à mesure. Dès qu'il s'est écoulé plus d'1 seconde après la frappe d'une touche, nous lançons la recherche et l'affichage qui sont instantanés.
Pourquoi cette seconde ? C'est simple et programmé comme ça dans toutes les "bonnes" recherches "au mieux", comme on les appelle dans mon métier.
Imaginez que nous lancions la recherche/affichage de la liste au fur et à mesure de la frappe : après chaque lettre tapée Vega rafficherait la totalité de son écran, ce qui n'est pas très efficace ni élégant. En théorie ça correspondrait à un affinage de la recherche visible sur l'écran (J'affiche tous les noms commençant par "B", puis tous ceux commençant par "BE", puis tous ceux commençant par "BER", etc. Autant de raffichage que de lettres tapées = procédé peu ergonomique et peu agréable à utiliser, très déroutant pour l'utilisateur.
Au lieu de ça, nous avons arbitrairement décidé de temporiser la recherche/affichage, en considérant qu'après cette tempo, il était vraisemblable que l'utilisateur avait cessé de taper sur le clavier. Alors quand quelqu'un comme vous ou moi tappe "BERNABE" en 1/2 seconde sur le clavier, sans voir ce qu'il tappe, et en discutant avec un interlocuteur, un client moyen aura à peine trouvé le "B" sur son clavier. Généralement, il lui faudra moins d'une seconde pour trouver le "E", et ainsi de suite. On n'aura donc au final qu'un seul affichage de la liste, qui semblera automatique à notre client, mais un peu trop retardé à un habitué du clavier. Une tempo plus longue crée de l'impatience même chez un néophyte, une tempo plus courte rend le mécanisme inutilisable pour la plupart des usagers : il suffit qu'ils mettent un peu de temps à trouver une lettre du nom (ou du début de nom) de leur patient pour que la liste affiche "tous les noms commençant par "NABE" au lieu de "BERNABE"...)
On apprend ce genre de considérations en école d'informatique, parmi les nombreux cours qui sont délivrés. SQL est une façon d'attaquer une BDD, mais ce n'est ni la seule, ni la meilleure : tout dépend de l'usage qu'on a à faire de la BDD, du système ciblé (l'OS), de la clientèle visée, du budget concerné, etc.
Bon, je vous explique encore une fois cette histoire de temporisation, vous n'avez visiblement pas compris comment elle fonctionne.
Nous interceptons les touches tapées par nos clients "à la volée", et fabriquons la clé de recherche sur l'index du fichier au fur et à mesure. Dès qu'il s'est écoulé plus d'1 seconde après la frappe d'une touche, nous lançons la recherche et l'affichage qui sont instantanés.
Pourquoi cette seconde ? C'est simple et programmé comme ça dans toutes les "bonnes" recherches "au mieux", comme on les appelle dans mon métier.
Imaginez que nous lancions la recherche/affichage de la liste au fur et à mesure de la frappe : après chaque lettre tapée Vega rafficherait la totalité de son écran, ce qui n'est pas très efficace ni élégant. En théorie ça correspondrait à un affinage de la recherche visible sur l'écran (J'affiche tous les noms commençant par "B", puis tous ceux commençant par "BE", puis tous ceux commençant par "BER", etc. Autant de raffichage que de lettres tapées = procédé peu ergonomique et peu agréable à utiliser, très déroutant pour l'utilisateur.
Au lieu de ça, nous avons arbitrairement décidé de temporiser la recherche/affichage, en considérant qu'après cette tempo, il était vraisemblable que l'utilisateur avait cessé de taper sur le clavier. Alors quand quelqu'un comme vous ou moi tappe "BERNABE" en 1/2 seconde sur le clavier, sans voir ce qu'il tappe, et en discutant avec un interlocuteur, un client moyen aura à peine trouvé le "B" sur son clavier. Généralement, il lui faudra moins d'une seconde pour trouver le "E", et ainsi de suite. On n'aura donc au final qu'un seul affichage de la liste, qui semblera automatique à notre client, mais un peu trop retardé à un habitué du clavier. Une tempo plus longue crée de l'impatience même chez un néophyte, une tempo plus courte rend le mécanisme inutilisable pour la plupart des usagers : il suffit qu'ils mettent un peu de temps à trouver une lettre du nom (ou du début de nom) de leur patient pour que la liste affiche "tous les noms commençant par "NABE" au lieu de "BERNABE"...)
On apprend ce genre de considérations en école d'informatique, parmi les nombreux cours qui sont délivrés. SQL est une façon d'attaquer une BDD, mais ce n'est ni la seule, ni la meilleure : tout dépend de l'usage qu'on a à faire de la BDD, du système ciblé (l'OS), de la clientèle visée, du budget concerné, etc.