Trucs et astuces pour une application cocoa optimisée et rapide à  chargée

APAP Membre
Bonjour,

Je fais appel à  votre expérience pour regrouper les astuces et bonnes pratiques permettant de créer des applications sympa mais se lançant à  la vitesse de l'éclair et ne donnant pas à  l'utilisateur une impression de lourdeur.

Merci par avance pour vos idées :)

Réponses

  • AliGatorAliGator Membre, Modérateur
    14:48 modifié #2
    - Lazy Loading : ne charger les données que quand tu en as besoin (quitte à  utiliser UINib). Découper ses XIB au maximum, en particulier ne pas trop surcharger le MainWindow.xib qui est celui chargé automatiquement au lancement
    - Utiliser un cache pour tes données, pour ne pas avoir à  les charger du réseau à  chaque fois
    - Prévoir des HUD de loading, si vraiment il faut charger des données l'utilisateur préférera voir l'écran vierge de données (par exemple un écran avec les boutons et tout ce qu'il faut mais disons ta TableView vide)  mais avec un "Chargement des données en cours" et dès qu'elles sont chargées la TableView se remplit
    - Tout faire en asynchrone, ne surtout pas bloquer le Main Thread
    et j'en passe
  • LonGi3LonGi3 Membre
    14:48 modifié #3
    @AP Tu parles seulement du lancement de ton app? ou de toute ton app en générale?

    Pour optimiser le lancement, fais le moins de chose dans

    application:didFinishLaunchingWithOptions:
    


    (évite le plus que possible parsing, requête réseau, etc.).

    Tu peux aussi te servir de l'outil "Time Profiler" dans Instruments pour voir qu'est ce qui fait que ton app prend du temps a se lancer.

    Ne bloque pas le Main Thread.

    Aussi pour le chargement de tes vues, essayes de dessiner le moins de transparence possible ainsi que d'aligner tes pixels, c'est-à -dire, se servir des nombres entiers quand tu places tes éléments dans ton container/vue.

    Voilà  quelques autres idées en plus qui te permettront d'éviter cette lourdeur que l'on peut ressentir des fois sur nos apps.
  • DrakenDraken Membre
    14:48 modifié #4
    N'oublie pas de prévoir une image default.png, que iOS vas afficher avant de charger le corps de l'application, donnant ainsi l'illusion d'un chargement très rapide. Du moins pour iOS, je ne sais pas si cela existe sous OSX.

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