Cocoapods : Les indispensables, Les Vôtres, Conseils etc...

Un nouveau sujet qui vient équilibrer un sujet plus (trop) conflictuel à  mon goût..


 


Un nouveau sujet dédié donc à  ceux qui aiment et utilisent cocoapods dont j'avoue eu du mal à  me dépêtrer lors des premières installations mais ce n'est pas le sujet ici.


 


Je souhaiterais que l'on aborde ici vos retour d'expériences sur les librairies disponibles. Libre ensuite à  chacun de les intégrer comme il le souhaite via cocoapods, carthage, git etc. mais ce n'est pas le sujet ici.


 


Dans ce  sujet  je vous demande d'échanger vos conseils dans le choix des librairies. Il n'est en effet pas toujours évident, pour moi, de trouver la bibliothèque la mieux adaptée, la plus à  jour et surtout celle qui dans le temps est maintenu. Bien sur il y a des informations sur le site de cocoapods qui nous mettent la puce à  l'oreille : la date de la dernière mà j, le nombre d'applications qui l'utilisent etc. mais ce n'est pas le sujet ici.


 


La question est donc :


Quels sont pour vous les librairies incontournables, les must have, celles que vous utilisez ou bien celles que vous avez amélioré ; voir celles que que vous avez créées ?


Mots clés:

Réponses

  • AliGatorAliGator Membre, Modérateur
    Lorsque tu fais une recherche sur cocoapods.org, par défaut on classe les resultats par ordre de "qualité", où le Quality Index est un calcul arbitraire qui prend en compte différents critères : popularité en nombre d'étoiles et de forks sur GitHub, nombre de téléchargements et d'installations du pod, nombre de tests et qualité de la documentation en particulier sont les différents points impactant ce "score".

    C'est aussi ce genre de données et référencement qui fait la différence avec CocoaPods plutôt qu'une gestion à  la main.

    Pour en savoir plus, lire les articles du blog CocoaPods sur le sujet, en particulier celui-ci qui explique le Quality Index qui nous sert à  mesurer la qualité d'un pod, et celui-ci sur les stats permettant de connaà®tre les pods les plus utilisés
  • AliGatorAliGator Membre, Modérateur
    Par exemple si tu cherches "HTTP" tu vois en haut à  droite le pop-up menu qui indique "Sort by:", sélectionné par défaut sur "Quality". Tu peux choisir un autre critère, comme "Popularity", "Stars", etc.
    Quality reflète plutôt bien en général la qualité d'un pod, qui n'est pas que son succès sur GitHub mais aussi s'il a une bonne documentation et est beaucoup utilisé dans bcp d'app, c'est pourquoi c'est l'ordre de tri par défaut.

    Une fois que tu es sur la fiche d'un pod tu as ensuite dans la colonne de droite tout un tas d'indicateurs qui vont te permettre de mieux connaà®tre le succès et la qualité de ce pod, comme par exemple le nombre de téléchargements et d'installations de ce pod au total ou ce mois-ci ou cette semaine, le nombre d'applications dans lesquelles il est utilisé, s'il a été mis à  jour récemment, s'il est bien couvert par des tests unitaires pour garantir sa qualité, ...

    Tu peux aussi cliquer sur le logo avec les pétales blancs ou rouges qui est en haut à  droite de la page
  • Merci Ali pour ces précisions. J'ai vu que l'on pouvait aussi télécharger la documentation du pod dans Dash que j'utilise depuis peux, c'est un vrai plus !


     


    J'attends le retour des utilisateurs finaux des pods ainsi que des créateurs de pods.


  • LeChatNoirLeChatNoir Membre, Modérateur

    moi j'utilise Magical Record. Un must have. Y en a qui disent que c'est dépassé et qu'il y a plein de nouveaux framework qui vont aussi bien voir mieux mais moi, j'en suis resté à  MR...


  • CéroceCéroce Membre, Modérateur

    C'est Core Data qui est dépassé.


  • Les pods que j'ai l'habitude d'utiliser se concentrent surtout sur les plus populaires comme Alamofire, SwiftyJSON.


     


    D'autres indispensables si on commercialise son application comme crashlytics, flurry ou google analytics.


     


    Personnellement comme j'aime bien apprendre j'essaye d'éviter d'utiliser des librairies tierces pour les faire moi même c'est plus sympa.




  • D'autres indispensables si on commercialise son application comme google analytics.




    >:(  >:(  >:(

  • Tu es dur !!  :'(


  • DrakenDraken Membre
    décembre 2015 modifié #10

    Quand j'entends parler de Google, je sors mon révolver.


     


    (Cette phrase est une légère déformation d'une citation provenant d'une pièce de théâtre nazie de 1933 - Quand j'entends parler de culture, je sors mon révolver -  )


  • LeChatNoirLeChatNoir Membre, Modérateur


    C'est Core Data qui est dépassé.




     


    Pourquoi tu dis ca ? Core Data est plutôt rapide et bien foutu non ? C'est quoi les alternatives du moment ?

  • CéroceCéroce Membre, Modérateur

    Pourquoi tu dis ca ? Core Data est plutôt rapide

    Non, Core Data n'est pas rapide. Il y avait un article d'un auteur d'un lecteur de RSS qui expliquait que pour que la recherche soit efficace, il allait faire la recherche directement dans la base SQLite, trouvait l'id de l'objet, puis ensuite lançait une requête avec Core Data.

    et bien foutu non ?

    Non, et c'est justement pour cela que Magical Record existe. Il simplifie la création d'une pile Core Data, simplifie les requêtes, permet un semblant de multi-threading.
    Je vois au moins deux autres bonnes raisons de ne pas utiliser Core Data: le système de migration, et la gestion de l'undo.

    Mais dans notre appli actuelle, si nous avons choisi de virer Core Data, c'est que nous parvenions pas à  maà®triser le cycle de vie des objets. C'est un problème habituel avec les ORM. Voir l'article argumenté de Martin Fowler à  ce sujet: http://martinfowler.com/bliki/OrmHate.html

    C'est quoi les alternatives du moment ?

    La première qui me vient à  l'esprit est Realm.io. Je trouve aussi qu'accéder directement à  SQLite par FMDatabase n'est pas si bête, même si l'investissement en début de projet est plus important.
    Tu as aussi les services comme Parse ou Microsoft Azure.
  • Realm.io a l'air pas mal mais de ce qu'on m'en a dit il a quelques inconvénients comme ses limites de stockage de données mentionnées sur leur site d'ailleurs et l'absence des notifications entre autre. 


    J'ai hésité (et j'hésite toujours d'ailleurs) à  l'intégrer dans un projet aussi parce qu'il n'est pas encore stable sur Swift. Ce qui en soit est une bonne chose au final puisqu'il évolue.


     


    Après niveau simplicité, notamment l'exemple qu'ils montrent est un peu dépassé parce que tout le code écrit en objective-c peut être réduit mais bon.


    Personnellement comme je n'utilise pas plusieurs context CoreData reste relativement simple je trouve mais la difficulté doit monter en fonction des usages qu'on en fait j'imagine.

  • Hello,


     


    Pour les pods, ça dépend des projets. Aussi, dans ma boite on a pas mal de petite librairies internes ( calendrier, slide menu,..). 


     


    Le choix de la librairie : Je regarde le repos github et voir l'état de la libraire et son évolution ( nombres d'issues, nombres d'étoiles, la réaction au pull request,....). 


     


    J'utilise presque à  chaque fois :


     


    AFNetworking


    FMDB ( si j'utilise SQLite)


    OHHTTPStubs ( si je fais des tests)

Connectez-vous ou Inscrivez-vous pour répondre.