Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3418 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  1310  1311  1312  ..  1454  1455  1456  1457  1458  1459
Auteur Sujet :

blabla@web

n°2231653
koskoz
They see me trollin they hatin
Posté le 24-06-2014 à 10:13:11  profilanswer
 

Reprise du message précédent :

flo850 a écrit :

Alors c'est à l'api d'avoir ses propres tests, et normalement elle peut se tester elle meme,non?


 
Wut?
Oublie API, pense juste service, avec une partie publique et privée.


---------------
Twitter
mood
Publicité
Posté le 24-06-2014 à 10:13:11  profilanswer
 

n°2231654
flo850
moi je
Posté le 24-06-2014 à 10:18:29  profilanswer
 

ce module est une boite noire  
 
Donc  

  • soit tu testes de l’extérieur et tu ne testes que la partie public.  
  • soit ce module a ses propres tests privés, qui testent la partie privée


---------------

n°2231659
koskoz
They see me trollin they hatin
Posté le 24-06-2014 à 10:27:21  profilanswer
 

Donc j'écris directement les tests dans la partie privée du module ? Ca ne me plait pas du tout. Tous nos tests sont dans des fichiers séparés, dans une arbo différente. On les embarque pas non plus en prod.


---------------
Twitter
n°2231662
skylight
Made in France.
Posté le 24-06-2014 à 10:42:07  profilanswer
 

koskoz a écrit :

Donc j'écris directement les tests dans la partie privée du module ?


Ça me parait logique dans le sens ou la partie publique n'a pas accès à cette partie privée
Après, à toi de vérifier les I/O entre la partie publique et la partie privée

n°2231663
ratibus
Posté le 24-06-2014 à 10:48:46  profilanswer
 

koskoz a écrit :

Sur nos services Angular nous appliquons le module pattern afin de n'exposer que les "vrais" méthodes des services.
Le problème c'est qu'en suivant ce design pattern je ne vois pas comment tester les fonctions privées.
 
Hier après une petite discussion sur IRC deux types m'ont expliqués que dans une API il ne fallait tester que la partie publique et que normalement celle-ci testait implicitement la partie privée.
 
Sauf que pour moi, c'est la partie privée qui est la plus importante, c'est là où réside toute la logique des services. Les fonctions sont le plus unitaires possibles et réalise de nombreux calculs sensibles pour l'application.
 
Si je ne teste que la partie publique (qui en gros ne fait que setter et tester des variables pour appeler les différentes fonctions privées) je ne sais pas ce qui pète, je ne teste pas unitairement mes fonctions sensibles et mon code est selon moi moins robuste.
 
Qu'est-ce que vous en pensez ? Vous feriez quoi à ma place, virer le module pattern, tout rendre publique et testable ? J'ai choisi un mauvais design ?


Teste pas la partie privée.
Si tu la testes et que tu changes ton implem faudra changer tes tests.
Teste uniquement ce que tu exposes.

n°2231665
bixibu
Ca ... c'est fait!
Posté le 24-06-2014 à 11:05:44  profilanswer
 

Après... t'as une vraie API publique avec des utilisateurs et tout ? ou c'est juste un pattern appliqué comme ça sur tes services en croyant bien faire alors qu'il n'y a que toi qui utilise ces services ?


---------------
App Android NextGP : Store - TU | Makerworld
n°2231666
koskoz
They see me trollin they hatin
Posté le 24-06-2014 à 11:07:08  profilanswer
 

bixibu a écrit :

Après... t'as une vraie API publique avec des utilisateurs et tout ? ou c'est juste un pattern appliqué comme ça sur tes services en croyant bien faire alors qu'il n'y a que toi qui utilise ces services ?

 

La partie publique appelle la partie privée, donc si, elle y a accès.

 
ratibus a écrit :


Teste pas la partie privée.
Si tu la testes et que tu changes ton implem faudra changer tes tests.
Teste uniquement ce que tu exposes.

 

Ce qui veut dire qu'on ne fait aucun test unitaire.
Etant donné que toute la partie sensible est privée et très critique, ça me parait une très mauvaise idée d'uniquement tester une méthode publique qui elle repose sur une dizaine de méthodes privées.

Message cité 2 fois
Message édité par koskoz le 24-06-2014 à 11:07:32

---------------
Twitter
n°2231667
koskoz
They see me trollin they hatin
Posté le 24-06-2014 à 11:07:45  profilanswer
 

bixibu a écrit :

Après... t'as une vraie API publique avec des utilisateurs et tout ? ou c'est juste un pattern appliqué comme ça sur tes services en croyant bien faire alors qu'il n'y a que toi qui utilise ces services ?


 
C'est plutôt ça :jap:


---------------
Twitter
n°2231671
Proov
Art & Science
Posté le 24-06-2014 à 11:32:48  profilanswer
 

Yo!
 
Je suis en train d'intégrer un site sous Bootstrap 3.1, Vous savez si il y a moyen d'inverser l'ordre d'affichage des colonnes sur desktop ou mobile ?
 
j'ai :
 

Code :
  1. <div class="col-sm-3">sidebar</div>
  2. <div class="col-sm-8 col-sm-offset-1">produits</div>


 
 
J'aimerai avoir les produits d'abord sur mobile car si la sidebar est longue (suivant les modules), il faut scroller beaucoup pour avoir accès aux produits.
Y'avait pas une histoire de float right ferai arriver les produits d'abord seulement sur mobile ?
 
Thanks :)
 
edit: n00b h0st l4gg3r b4n kick
 
les push et pull  :o  
 

Code :
  1. <div class="col-sm-8 col-sm-push-4">produits</div>
  2. <div class="col-sm-3 col-sm-pull-8">sidebar</div>


 
désolé  [:tinostar]

Message cité 1 fois
Message édité par Proov le 24-06-2014 à 11:39:03
n°2231675
bixibu
Ca ... c'est fait!
Posté le 24-06-2014 à 11:41:29  profilanswer
 

koskoz a écrit :


 
C'est plutôt ça :jap:


 
J'adore une réponse "oui" à une question incluant deux choix :o


---------------
App Android NextGP : Store - TU | Makerworld
mood
Publicité
Posté le 24-06-2014 à 11:41:29  profilanswer
 

n°2231676
koskoz
They see me trollin they hatin
Posté le 24-06-2014 à 11:43:54  profilanswer
 

bixibu a écrit :


 
J'adore une réponse "oui" à une question incluant deux choix :o


 
Oui à la seconde :o


---------------
Twitter
n°2231677
Plam
Bear Metal
Posté le 24-06-2014 à 11:56:24  profilanswer
 

Proov a écrit :

Yo!
Thanks :)
 
edit: n00b h0st l4gg3r b4n kick
 
les push et pull  :o  
 

Code :
  1. <div class="col-sm-8 col-sm-push-4">produits</div>
  2. <div class="col-sm-3 col-sm-pull-8">sidebar</div>


 
désolé  [:tinostar]


 
Ouaip, le push pull ça déboite :love:


---------------
Spécialiste du bear metal
n°2231680
bixibu
Ca ... c'est fait!
Posté le 24-06-2014 à 12:37:15  profilanswer
 

koskoz a écrit :


 
Oui à la seconde :o


 
Dans ce cas, tu t'en tape que tes services soient accessibles non, tu veux juste bien "ranger" ton code ? Si c'est le cas, pouvoir tester 100% de ton code sans trop t'emmerder pourquoi tu créé pas un  service "interne/ privé" (module angular) appelé par ton service "public" (module angular) ?
 
sinon ya toujours la solution de convention de nommage : _privateFunction() en début de modules + publicFunction() ... mais bon c'est un peu moins sexy


---------------
App Android NextGP : Store - TU | Makerworld
n°2231694
ratibus
Posté le 24-06-2014 à 14:58:21  profilanswer
 

koskoz a écrit :


 
La partie publique appelle la partie privée, donc si, elle y a accès.
 


 

koskoz a écrit :


 
Ce qui veut dire qu'on ne fait aucun test unitaire.
Etant donné que toute la partie sensible est privée et très critique, ça me parait une très mauvaise idée d'uniquement tester une méthode publique qui elle repose sur une dizaine de méthodes privées.


Ben si tu testes ta méthode publique mais en travaillant bien tes jeux de données en entrée.

n°2231708
Youmoussa
Ecrou-vis
Posté le 24-06-2014 à 16:07:28  profilanswer
 

koskoz a écrit :

Sur nos services Angular nous appliquons le module pattern afin de n'exposer que les "vrais" méthodes des services.
Le problème c'est qu'en suivant ce design pattern je ne vois pas comment tester les fonctions privées.
 
Hier après une petite discussion sur IRC deux types m'ont expliqués que dans une API il ne fallait tester que la partie publique et que normalement celle-ci testait implicitement la partie privée.
 
Sauf que pour moi, c'est la partie privée qui est la plus importante, c'est là où réside toute la logique des services. Les fonctions sont le plus unitaires possibles et réalise de nombreux calculs sensibles pour l'application.
 
Si je ne teste que la partie publique (qui en gros ne fait que setter et tester des variables pour appeler les différentes fonctions privées) je ne sais pas ce qui pète, je ne teste pas unitairement mes fonctions sensibles et mon code est selon moi moins robuste.
 
Qu'est-ce que vous en pensez ? Vous feriez quoi à ma place, virer le module pattern, tout rendre publique et testable ? J'ai choisi un mauvais design ?


 
Si en appelant ton API publique tu n'arrives pas a avoir une couverture de 100%, c'est qu'il y a un soucis et que ta fonction privée n'est pas utilisée (intégralement).
 
Tu te moques des détails d'implementation dans un test, ce qui compte c'est garantir le résultat à l'utilisateur.


Message édité par Youmoussa le 24-06-2014 à 16:10:18

---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°2231711
Youmoussa
Ecrou-vis
Posté le 24-06-2014 à 16:12:02  profilanswer
 


koskoz a écrit :


 
Ce qui veut dire qu'on ne fait aucun test unitaire.
Etant donné que toute la partie sensible est privée et très critique, ça me parait une très mauvaise idée d'uniquement tester une méthode publique qui elle repose sur une dizaine de méthodes privées.


 
Test unitaire ne veut pas dire tester chaque fonction séparément.
 
Une fonction privée est la pour la séparation/lisibilité du code.


---------------
L'humain est celui « qui agit puis qui pense : ce n’est pas parce qu’il soutient telle position qu’il agit de telle manière, mais parce qu’il a agi (comme il a été amené à le faire) qu’il va adopter telle position
n°2231819
Proov
Art & Science
Posté le 25-06-2014 à 17:05:06  profilanswer
 

Yo!
 
Avis aux utilisateurs de SCSS/Compass. Admettons que j'ai ça:
 

Code :
  1. .products-cat{
  2.     margin: 0 0 .75em;
  3.     padding: 0 0 .6em;
  4.     border-bottom: 1px solid $gray-lighter;
  5.     font-family: 'proxima_nova_regular', sans-serif;
  6.     @include font-size(1.5);
  7.  
  8.     ul{
  9.         margin: 0;
  10.         padding: 0;
  11.         list-style: none;
  12.         text-align: justify;
  13.         
  14.     }
  15. }


 
si j'ai envi d'appliquer une règle sur mon <ul> avec une classe qui se situe sur le <html> par exemple .csstransforms3d. Y'a une règle pour l'écrire quand meme dans .products-cat ?
 
edit: ah ben j'ai trouvé finalement  [:tinostar]  
 

Code :
  1. @media (min-width: $screen-sm-min) {
  2.     .csscolumns &{
  3.         display: list-item;
  4.         padding: 0;
  5.     }
  6. }


Message édité par Proov le 25-06-2014 à 17:41:47
n°2231830
Plam
Bear Metal
Posté le 25-06-2014 à 18:13:00  profilanswer
 

En fait t'es spécialiste des questions ET des réponses :o C'est la classe :D


---------------
Spécialiste du bear metal
n°2231835
skylight
Made in France.
Posté le 25-06-2014 à 18:28:33  profilanswer
 

Stackoverflow ? :o

n°2231872
koskoz
They see me trollin they hatin
Posté le 26-06-2014 à 11:54:57  profilanswer
 

Quelqu'un a déjà rencontré un soucis avec Grunt et la tâche usemin qui ne prend pas en compte un JS déclaré entre les blocks de commentaire ?


---------------
Twitter
n°2231895
xtof_83
Freeride Spirit
Posté le 26-06-2014 à 17:00:42  profilanswer
 

Les gars petite question Angular
 
j'ai ajouté un composant bower dans mon architecture :  
https://www.npmjs.org/package/sha-1
 
Mon archi charge le fichier à la suite de tous les autres fichier angular(route, cookies, etc...)
 
Ensuite je dois faire quoi pour l'utiliser proprement dans un controleur angular ?
 
car là si j'appelle sha1(....) directement ça marche si le projet tourne, mais si je redémarre grunt et donc la validation JsHint, il me dit que sha1 est pas défini.
 
Je trouve rien sur le net pour faire ça :whistle:  
 
:pt1cable:  

n°2231899
Proov
Art & Science
Posté le 26-06-2014 à 17:16:06  profilanswer
 

Plam a écrit :

En fait t'es spécialiste des questions ET des réponses :o C'est la classe :D


 
Vous me manquez c'est pour ça :p

n°2231900
bixibu
Ca ... c'est fait!
Posté le 26-06-2014 à 17:25:12  profilanswer
 

xtof_83 a écrit :

Les gars petite question Angular

 

j'ai ajouté un composant bower dans mon architecture :
https://www.npmjs.org/package/sha-1

 

Mon archi charge le fichier à la suite de tous les autres fichier angular(route, cookies, etc...)

 

Ensuite je dois faire quoi pour l'utiliser proprement dans un controleur angular ?

 

car là si j'appelle sha1(....) directement ça marche si le projet tourne, mais si je redémarre grunt et donc la validation JsHint, il me dit que sha1 est pas défini.

 

Je trouve rien sur le net pour faire ça :whistle:

 

:pt1cable:

 

Pour la validation JShint, faut que tu configure jshint via un fichier .jshintrc à la racine de ton projet contenant genre :

Citation :

{
    // Custom Globals
    "globals" : {
        "sha1"      : false,
 }
}

 

Pour l'utilisation dans angular, vu que cette lib est "globale" et donc non-injecté proprement the-angular-way :
- #1 soit tu trouve l'equivalent en module angular (ca existe souvent)
- #2 soit tu crée toi même un module angular injectant la lib .. que les gens du #1 seront content de trouver (mais bon faut assurer la maintenance ...)
- #3 soit tu fais gaffe à l'ordre de chargement/minification/execution de tes fichiers JS pour être certain que l'objet global "sha1" existe quand t'en as besoin ...

Message cité 1 fois
Message édité par bixibu le 26-06-2014 à 17:29:40

---------------
App Android NextGP : Store - TU | Makerworld
n°2231901
Proov
Art & Science
Posté le 26-06-2014 à 17:25:27  profilanswer
 

Sinon vous utilisez quoi pour détecter mobile/desktop en JS ? c'est solide Modernizr.touch ?

n°2231902
xtof_83
Freeride Spirit
Posté le 26-06-2014 à 17:38:12  profilanswer
 

bixibu a écrit :


 
Pour la validation JShint, faut que tu configure jshint via un fichier .jshintrc à la racine de ton projet contenant genre :

Citation :

{
    // Custom Globals
    "globals" : {
        "sha1"      : false,
 }
}


 
Pour l'utilisation dans angular, vu que cette lib est "globale" et donc non-injecté proprement the-angular-way :
- #1 soit tu trouve l'equivalent en module angular (ca existe souvent)
- #2 soit tu crée toi même un module angular injectant la lib .. que les gens du #1 seront content de trouver (mais bon faut assurer la maintenance ...)
- #3 soit tu fais gaffe à l'ordre de chargement/minification/execution de tes fichiers JS pour être certain que l'objet global "sha1" existe quand t'en as besoin ...


 
 :jap:  :jap:  
 
Je venais de tomber sur "globals"
Je vais regarder du côté de tes 3 autres suggestions. Merci  

n°2231904
koskoz
They see me trollin they hatin
Posté le 26-06-2014 à 17:41:23  profilanswer
 

Proov a écrit :

Sinon vous utilisez quoi pour détecter mobile/desktop en JS ? c'est solide Modernizr.touch ?


 
Modernizr de manière générale c'est très solide oui :D


---------------
Twitter
n°2231956
Proov
Art & Science
Posté le 27-06-2014 à 09:06:14  profilanswer
 

koskoz a écrit :


 
Modernizr de manière générale c'est très solide oui :D


 
Oui je sais, c'est fait par des pointures ^^
 
Mais apparement pas le "Modernizr.touch". J'ai lu quelques articles hier sur la détection du touch / touchevents / pointerevents, ça va devenir un vrai casse tête de le détecter. Enfin c'est juste qu'il faudra faire attention dans ses designs à la conception afin d'implémenter des trucs qui passent sur tous les devices pour pas que vous chers développeurs vous vous arrachez les cheveux :D
 


Message édité par Proov le 27-06-2014 à 09:06:28
n°2231964
flo850
moi je
Posté le 27-06-2014 à 09:46:03  profilanswer
 

J'ai arreté , surtotu avec l'arrivée de matos hybride, avec souris et tatile ( type tablettes windows8 )
 
Mais ça ne simplifie pas le design


---------------

n°2231982
Proov
Art & Science
Posté le 27-06-2014 à 11:43:07  profilanswer
 

il faut du design hybride aussi, plus gros boutons, plus gros tout en fait :p
 
certes ça ne simplifie pas le design :D

n°2231984
flo850
moi je
Posté le 27-06-2014 à 11:48:43  profilanswer
 

sauf l'écran, qui lui devient plus petit :/


---------------

n°2232017
Proov
Art & Science
Posté le 27-06-2014 à 14:38:45  profilanswer
 

va falloir une réévaluation du statut de webdesigner :o

n°2232070
nraynaud
lol
Posté le 27-06-2014 à 20:27:53  profilanswer
 

Bon c'est grave si je laisse traimoo en vrac jusqu'à mi-août ? Y'a plus de thunes dans le cochon et l'interface est une horreur sous iPhone.


---------------
trainoo.com, c'est fini
n°2232096
Alekusu2
Posté le 28-06-2014 à 16:19:24  profilanswer
 

Je comprends po:
 
Je mets un
 

Code :
  1. <p  style="width: 100%; text-align: center; font-style: italic; font-size: 16px;">C'est super</p>


 
Tout est OK.
 
Je passe dans la feuille de style la même chose avec une id sur le p, toutes les propriétés s'appliquent sauf le text-align: center....
 
J'ai honte de poster tellement ça parait idiot :D


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2232097
flo850
moi je
Posté le 28-06-2014 à 16:52:24  profilanswer
 

clikck droit -> inspecter dans chrome et tu regardes les règles qui s'appliquent à cet élément


---------------

n°2232100
Alekusu2
Posté le 28-06-2014 à 17:18:11  profilanswer
 

flo850 a écrit :

clikck droit -> inspecter dans chrome et tu regardes les règles qui s'appliquent à cet élément


 
Han génial j'avais jamais utilisé ça pour ça :p
Merki :p


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2232102
Proov
Art & Science
Posté le 28-06-2014 à 17:28:38  profilanswer
 

(noob inside), je dois faire passer ce truc à un script:
 

Code :
  1. [
  2. {
  3.     url: 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6.jpg',
  4.     options: {
  5.         thumbnail : 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6-150x113.jpg'
  6.     },
  7. }, {
  8.     url: 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6.jpg',
  9.     options: {
  10.         thumbnail : 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6-150x113.jpg'
  11.     },
  12. }
  13. ],{
  14.     thumbnails: 'vertical',
  15.     overflow: 'y'
  16. }


 
si j'ai bien compris c'est un tableau avec "2 cases" (je ne sais pas comment on dis :o), dont la premiere comprend un ensemble d'objets ?
je dois le reconstruire en fait.. évidemment je sais pas comment on fait mais je vais essayer :D

Message cité 1 fois
Message édité par Proov le 28-06-2014 à 17:29:04
n°2232125
xtof_83
Freeride Spirit
Posté le 29-06-2014 à 22:43:40  profilanswer
 

Proov a écrit :

(noob inside), je dois faire passer ce truc à un script:
 

Code :
  1. [
  2. {
  3.     url: 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6.jpg',
  4.     options: {
  5.         thumbnail : 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6-150x113.jpg'
  6.     },
  7. }, {
  8.     url: 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6.jpg',
  9.     options: {
  10.         thumbnail : 'http://192.168.5.23/collection-iconic-wp/wp-content/uploads/2014/06/Calque-6-150x113.jpg'
  11.     },
  12. }
  13. ],{
  14.     thumbnails: 'vertical',
  15.     overflow: 'y'
  16. }


 
si j'ai bien compris c'est un tableau avec "2 cases" (je ne sais pas comment on dis :o), dont la premiere comprend un ensemble d'objets ?
je dois le reconstruire en fait.. évidemment je sais pas comment on fait mais je vais essayer :D


 
On dit 2 dimensions.  
Après en fonction des libs JS que tu utilises tu as souvent un "parsejson"  
 

Code :
  1. var obj = jQuery.parseJSON( '{ "name": "John" }' );
  2. alert( obj.name === "John" );


 
Dans ton cas faudra boucler sur objs, mais ça revient au même.

n°2232253
flo850
moi je
Posté le 30-06-2014 à 22:25:25  profilanswer
 

des nouveautés intéressante dans chrome : http://www.cnet.com/news/with-fast [...] ternative/  
 
dont les notif , y compris lorsque la page n'a pas le focus


---------------

n°2232294
Jubijub
Parce que je le VD bien
Posté le 01-07-2014 à 11:40:07  profilanswer
 

vous utilisez des frameworks genre Bootstrap 3, Foundation, Skeleton, ou autre ?
Bootstrap a l'air sympa, mais disons que ça force pas mal ton look&feel


---------------
Jubi Photos : Flickr - 500px
n°2232301
Plam
Bear Metal
Posté le 01-07-2014 à 12:30:54  profilanswer
 

Bootstrap 3 est vraiment bien, et tu peux quand même bien customiser proprement (variables). Je trouve pas que ça force tant que ça le look and feel, il y a beaucoup de thème trouvables qui donnent un aspect entièrement différent.


Message édité par Plam le 01-07-2014 à 12:31:07

---------------
Spécialiste du bear metal
n°2232302
skylight
Made in France.
Posté le 01-07-2014 à 12:39:28  profilanswer
 

+1, tu prends le framework de base, (pour le systeme responsive + grid), et tu stylise comme tu veux tous tes éléments.
Ya pas mal de thèmes gratuits, d'autres premium qui ajoutent pas mal de fonctionnalités sympa pour des back-offices.
Genre : http://bootswatch.com

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  1310  1311  1312  ..  1454  1455  1456  1457  1458  1459

Aller à :
Ajouter une réponse
 

Sujets relatifs
blabla 3blabla 2
PUTAIN HARKO TU AS FERM2 BLABLA ![Beaucoup de blabla pour rien : post à effacer] Compiler .bat
variable1="blabla + variable2 +blala : c'est possible ??[PHP & regex] "blabla blabla file.ext?point=444 blabla" Recupérer 444
mail("celine@hotmail.com"," sujet","blabla"); pose une err ! Help[MySQL] WHERE 'blabla' compris dans le champ truc
[blabla@olympe] Le topic du modo, dieu de la fibre et du monde[PHP / BlaBla - limite]
Plus de sujets relatifs à : blabla@web


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)