Je ne connais qu'une façon de répondre à cette question, à savoir acquérir de l'expérience en matière de réglage des performances. Cela signifie - écrivez des programmes, et après les avoir écrits, trouvez-leur des accélérations et faites-le de manière itérative. Voici un exemple.
Voici l'erreur que la plupart des gens commettent: ils essaient d'optimiser le programme avant de l' exécuter. S'ils ont pris un cours de programmation , ils auront grand-O verres de couleur, et ils penseront (d'un professeur qui ne fait pas beaucoup d' expérience pratique) qui est ce qu'il est tout au sujet . C'est tout le même problème, l'optimisation préalable. **
Quelqu'un a dit: Commencez par faire les choses correctement, puis faites vite. Ils avaient raison.
Mais passons maintenant au kicker: si vous avez déjà fait cela à quelques reprises, vous reconnaissez les bêtises que vous avez commises précédemment qui causent des problèmes de vitesse, vous les évitez donc instinctivement. (Des choses comme rendre votre structure de classe trop lourde, être submergé de notifications, confondre taille des appels de fonction avec leur coût en temps, la liste s'allonge encore et encore ...) Vous les évitez instinctivement, mais devinez à quoi cela ressemble expérimenté: optimisation prématurée!
Donc, ces débats idiots continuent encore et encore :)
** Une autre chose qu'ils disent, c'est que vous n'avez plus à vous en soucier, car les compilateurs sont tellement bons et les machines sont si rapides de nos jours. (KIWI - Kill It With Iron.) Il n'y a pas d'accélération exponentielle du matériel ou du système (réalisée par des ingénieurs très intelligents et assidus) pouvant éventuellement compenser les ralentissements exponentiels des logiciels (effectuée par les programmeurs qui pensent de cette façon).