Monseignor, il est l'or, l'or de se réveiller

Démarré par LSCC, Janvier 27, 2013, 13:09:13

« précédent - suivant »

remyphoto75

L'autonomie des batteries est un problème matériel qui n'a pas à impacter directement le software. Des progrès sont constamment fait au niveau des cpu pour qu'ils soient plus performant en consommant moins, les batteries deviennent plus grosse sans forcément transformer l'appareil en grosse brique (motorola razr max, galaxy s3,...), les écrans qui consomment moins,...
Quand l'autonomie ne sera plus un soucis par le jeu combiné de ces progrès, Apple devra revoir en profondeur iOS s'ils veulent offrir ce qu'Android offre déjà actuellement.
Ce propos peut faire bondir mais la logique de Google est tout à fait respectable, ils développent un OS avec une vision sur le futur, ils ne développent pas un produit final pour l'utilisateur (la gamme Nexus n'a pas d'autre volonté que d'aider montrer aux constructeurs la voie qu'ils jugent la meilleur pour leur OS).
Personnellement je suis comme toi, j'attend des progrès majeur dans le domaine des batteries. Ca fait des années que les fabricants nous parlent de leur super projets de batteries à recharge ultra rapide ou autre et on ne voit toujours rien arriver.

Mais, en prenant tes exemples un utilisateur peut vouloir privilégier la fluidité et la longévité de son terminal mobile en limitant les widgets (très consommateurs de ressources pour parfois pas grand chose on est bien d'accord). Ou si ce n'est pas un soucis pour lui (je connais beaucoup de gens que ça ne dérange pas de devoir recharger quotidiennement voir 2 fois par jour son portable) lui coller plein de widgets qui sont super cools (actualité FB, tweeter, météo,...) mais ralentissent leur bousin. Mais leur argument c'est que même si le scroll de page est un peu plus lent ça sera toujours plus rapide que d'ouvrir une application pour relever le contenu ce qui est loin d'être faux.

Pascal Méheut

Citation de: remyphoto75 le Février 13, 2013, 21:48:27
Quand l'autonomie ne sera plus un soucis par le jeu combiné de ces progrès, Apple devra revoir en profondeur iOS s'ils veulent offrir ce qu'Android offre déjà actuellement.

Celle là aussi est excellente. "Revoir en profondeur" voudra simplement dire activer pour toutes les applis ce qui existe déjà pour un grand paquet : celles du système, l'audio, les GPS... Toutes choses cités d'ailleurs dans l'article dont il a donné lui-même le lien...

Bref, "changer un bit" comme le disait Lictor.

Encore, encore.

remyphoto75

Lis donc l'article, non faire d'iOS un OS vraiment multitâche ne revient pas à changer un bit. Ca ne revient pas à "activer" des applis c'est plus complexe que ça

Pascal Méheut

Citation de: remyphoto75 le Février 13, 2013, 22:35:20
Lis donc l'article, non faire d'iOS un OS vraiment multitâche ne revient pas à changer un bit. Ca ne revient pas à "activer" des applis c'est plus complexe que ça

Encore, encore... Sans déconner, tu ne te rends vraiment pas compte que tu parles d'un sujet dont tu ne comprends pas le 1er mot à des pros ?

remyphoto75

T'es un pro de quoi toi en dehors de la tchatche sérieux ? Désolé mais quand je lis des trucs comme Java est un langage de bas niveau, iOS est multitâche, ça ne m'évoque pas l'avis d'un pro.

Pascal Méheut

Bon, passons sur le fait que tu m'attribues des paroles qu'a prononcé Lictor en les déformant complètement...

Pour le reste, histoire de rigoler :

ton copain du lien plus haut :

http://www.macworld.com/article/1164616/how_ios_multitasking_really_works.html

Bizarre non ? Il explique comment ca marche vraiment alors qu'il n'y a pas de multitache. Il en a fait d'autre si tu cherches un peu.

Autre exemple :

http://en.wikipedia.org/wiki/IOS#Multitasking

Mince alors, le complot est mondial. Eux aussi expliquent comme le multitache est supporté.

Mais bon, c'est comme l'iPad 3 qui n'est pas Retina et tout le reste. Même quand tu as tort, tu as raison. Alors, je te laisse continuer à expliquer tout et son contraire. Mais tu m'auras bien fait rire.

remyphoto75

Merci de confirmer mes dires avec ton lien wiki :
"multitasking is supported through seven background APIs"
Alors je vais te traduire en langage plus clair ce qui est expliqué, comme tu es un pro du brassage de vent mais clairement pas un pro de l'informatique. Le multitâche SELON iOS n'est disponible qu'au travers de 10 API (ce sont des interfaces de programmation) très précises. Tout ce qui n'est pas dans ces API ne peut donc être exécuté en multitâche. En informatique le multitâche ne se limite pas aux seules actions autorisée par ces API donc comme je le disais plus haut. En informatique lorsqu'on parle de multitâche on entend par là que n'importe quelle application à tourner constamment en tâche de fond et non pas se limiter à quelques fonctionnalités définie par Apple. Il ne suffit pas de changer un bit mais repenser toute la gestion de la mémoire pour qu'elle prenne en compte les spécificités du multitâche. En l'occurence comme iOS n'implémente pas de vrai GC il leur faudra revoir ARC pour éviter que la mémoire explose.
En tout cas merci de nous faire rêver de l'informatique où il suffit de changer un bit pour changer le monde.

Pascal Méheut

Citation de: remyphoto75 le Février 14, 2013, 08:08:58
En l'occurence comme iOS n'implémente pas de vrai GC il leur faudra revoir ARC pour éviter que la mémoire explose.

Encore, encore. Se faire insulter par un type qui croit qu'il faut un garbage collector pour faire du multi-tâche, c'est excellent.

C'est dingue de penser que tous les Unix, Windows, VMS, MVS et autres n'ont jamais pu être multi-tâche tant qu'on programmait en C, C++, Pascal, Fortran, Cobol...
Bon, c'est vrai qu'on a fait du multi-tache avec quelques centaines de Ko à quelques Mo de mémoire donc c'est beaucoup plus que ce qu'on a sur un téléphone aujourd'hui sans doute ?

Bon, j'arrête définitivement de te parler, tu es réellement trop con. Mais à ce point là, ca faisait un bout de temps que je n'en avais pas vu un.

Lictor

Je ne vois pas en quoi ces articles montreraient qu'iOS n'est pas multitâche. Au contraire, le premier signale explicitement un exemple d'application multitâche : Mail. Les deux articles énumèrent également tous les moyens qu'on les applications pour s'exécuter en tâche de fond.
Il y a surtout une confusion entre iOS et le SDK iPhone. iOS est parfaitement multitâche : il suffit d'avoir un iPhone sous jailbreak pour consulter la liste des nombreux process qui s'exécutent en tâche de fond. Simplement, Apple a choisit d'en limiter l'usage via son SDK. Il ne s'agit pas d'un manque de capacité technique ou d'innovation d'Apple, le multitâche d'OSX et d'iOS est de très bonne qualité, mais bien d'une décision architecturale consciente au niveau du SDK de ne l'exposer qu'à travers certains modèles.
Les différentes possibilités d'exécution en tâche de fond offertes par le SDK permettent déjà pas mal d'usages, tout en étant plus économe que l'alternative Android qui consiste à laisser l'application entière en tâche de fond. Il y a très peu de cas d'utilisation sur mobile où il faudrait avoir un multitâche complet et illimité. Le prix à payer pour pouvoir couvrir ces quelques cas d'utilisation est assez élevé en terme d'utilisation des ressources.

Et sur mobile, les ressources sont bien limitées :
- la batterie, effectivement - par exemple, sur Nexus 7, je me retrouve parfois avec les batteries à plat en fin de journée à cause de quelques applications qui sont parties en vrille en tâche de fond.
- le CPU. Il est certes *relativement* puissant, mais on demande de plus en plus aux plateformes mobiles, notamment via le jeux. Lancer un jeu quand on a quinze applications qui tournent en tâche de fond reste un problème !
- le réseau. En 3G il est soit payant soit limité en volume. Une application qui pompe en permanence du réseau en tâche de fond pour des raisons triviales (charger des pubs alors qu'elle n'est plus visible par exemple) pose un vrai problème.
- la RAM reste restreinte, typiquement 256 Mo à 1 Go. Ce n'est pas si énorme que ça. Par exemple, tous les bouquins de programmation mobile insistent pour la mise en place de certaines bonnes pratiques, comme l'usage de pool d'objets, pour économiser la mémoire. Pourquoi s'embêter à ça si à côté on a des veaux qui bouffent la mémoire en tâche de fond pour rien ?
- la stabilité est également une "ressource" critique : on accepte beaucoup moins bien un téléphone qui plante qu'un ordinateur de bureau...

Et à part ça, je ne vois toujours pas ce que le multitâche d'Apple aurait de faux - il n'y a pas de vrai ou de faux multitâche, il y a juste différents modèles. Par exemple, on revient à la possibilité d'avoir un multitâche coopératif entre les thrads (celui de Windows 3.0) dans les prochaines versions de Java - tout simplement parce qu'il n'est pas plus faux que le multitâche préemptif mais qu'il est utile dans certains cas.
Sur iPhone, je peux écouter Qobuz en tâche de fond tout en ayant Runtastic qui trace au GPS mon parcours et me donne des alertes vocales pendant que j'ai Map au premier plan... C'est bien du multitâche.

"Mais dire que les développeurs ne savent pas développer des applications multitache c'est quand même exagéré. Les programmeurs qui ne sont pas à l'aise dans ce domaine sont quand même en général assez intelligent pour ne pas s'y risquer."

C'est basé sur l'observation. Beaucoup de développeurs ne sont pas à l'aise avec tout ce qui est multithreading. A voir les crash ou la lourdeur de certaines applications sous Android, ils ne sont pas non plus à l'aise avec la gestion mémoire d'ailleurs (un gros problème chez les jeunes programmeurs habitués à la gestion "transparente" de la mémoire).
Surtout que s'y risquer n'est pas compliqué : il suffit de l'activer. C'est comme le multitâche, lancer un thread est facile voire trivial. Eviter les race conditions ou les deadlocks l'est moins. Exploiter correctement les ressources en multithreading l'est encore moins.

Lictor

Citation de: remyphoto75 le Février 13, 2013, 22:35:20
Lis donc l'article, non faire d'iOS un OS vraiment multitâche ne revient pas à changer un bit.

Ben si en fait. Tout simplement parce qu'iOS EST un vrai OS multitâche. La limitation n'est pas au niveau de l'OS, mais est volontaire au niveau du SDK.

Sur un iPhone jailbreaké, il y a une application qui s'appelle backgrounder qui permet d'avoir les applications en tâche de fond comme sur Android. Cette application ne réécrit pas tout iOS, elle se contente de flagger correctement les applications (ce qui est impossible hors jailbreak). En fait, si tu regardes le code source sur GitHut, l'essentiel du code est destiné à gérer les préférences, le passage d'une version à l'autre et l'appel de l'application ! L'activation du multitâche se limite à quelques lignes de code - lignes de code qu'il suffirait à Apple d'autoriser dans le SDK officiel pour avoir un multitâche illimité.

Backgrounder existe depuis iOS4, j'avais un peu joué avec à l'époque avant de laisser tomber avec l'implémentation propre du multitâche par Apple qui évitait de vider ma batterie à vitesse grand V...

Absolument tout est en place sur iOS pour avoir un multitâche complet, y compris un système d'enregistrement pour lancer les applications au démarrage de l'OS (daemons). Simplement, Apple a choisit de ne pas autoriser les applications à y accéder. Si Apple décide d'autoriser les applications à faire n'importe quoi avec le multitâche, le gros du travail se fera en réunion et en conférence de presse, techniquement il n'y a quasiment rien à faire...

Lictor

Citation de: Anc le Février 13, 2013, 21:28:17
Rien que ça, y'a de quoi bondir. L'autonomie est le problème crucial de TOUTES les plates-formes mobiles actuelles, ordinateurs portables compris.
Les gains actuels d'autonomie sont essentiellement faits sur la consommation machine. C'est tout le point fort des gammes i5 - i7 pour laptop par exemple, qui font varier leur fréquence voire le nombre de coeur actif en fonction de la demande.

C'est même crucial au point qu'Intel est en train de changer son fusil d'épaule pour passer d'une course à la puissance (de plus en plus difficile à vendre, la plupart des gens ne stressant plus leur CPU à une course à l'efficacité (puissance/consommation). En effet, la consommation est un problème crucial sur toutes les plateformes. Sur les mobiles pour des raisons d'autonomie, sur les PC de bureau pour des préoccupations écologiques et sur les serveurs pour des préoccupations économiques (double consommation électrique : celle du CPU + celle de la clim, qui pose de gros problème dans les datacenters). La baisse de consommation permet également une meilleure miniaturisation (voire par exemple le dernier boitier d'Intel qui permet de monter un HTPC complet dans 0,5 litre).

Sur une plateforme où l'autonomie est critique, il est évident que les applications doivent coopérer ! Sur Android ou iOS, une application qui consomme sans compter peut intégralement vider la batterie en moins d'une heure...

Lictor

Citation de: remyphoto75 le Février 13, 2013, 23:18:08
T'es un pro de quoi toi en dehors de la tchatche sérieux ? Désolé mais quand je lis des trucs comme Java est un langage de bas niveau, iOS est multitâche, ça ne m'évoque pas l'avis d'un pro.

Personnellement ? J'ai débuté pendant mon service en Modula/2 sur une application de simulation militaire - le tout fonctionnaire avec une douzaine de VAX en serveur et le double de PC en clients pour l'affichage, donc je suppose que je faisais déjà un peu de parallélisme. Ensuite j'ai travaillé comme développeur C++ (traitement vidéo temps réel et envoie sur réseau ATM natif, comme on gérait jusqu'à 32 cartes et flux vidéo par serveur, je suppose que je faisais un peu de multitâche à l'époque). J'ai ensuite été développeur Java J2EE et je suis actuellement architecte sur les technologies web.

Je n'ai pas dit que Java est un langage de bas niveau, j'ai dit que le traitement du multitâche en Java était de bas niveau. Il était relativement moderne lors de la sortie de Java, mais il a depuis été dépassé par des langages comme Scala (ou même Erlang pour les amateurs). Le problème de Java, c'est qu'il donne une fausse impression de facilité. Du genre, on saupoudre de synchronized et hop, on est devenu un pro du de la programmation parallèle...
Java est de bas niveau, parce qu'il n'impose aucune architecture pour gérer le multithread : c'est au développeur de construire sa propre architecture (ou de ne pas le faire et de se planter). Scala est de haut niveau parce qu'il propose directement un modèle éprouvé pour faire fonctionner tout ça.
C'est pareil entre Android et iOS. Android reprend l'approche Java : c'est au développeur de se débrouiller. iOS propose un framework pour gérer le multitâche qui implémente des patterns éprouvés. C'est plus contraignant, mais c'est aussi plus efficace.

L'argument sur le garbage collector est idiot. La plupart des OS et applications multitâches sont écrits dans des langages qui n'ont pas de garbage collector. A commencer par Android d'ailleurs : Linux est codé essentiellement en C et donc avec une gestion manuelle de la mémoire.
Au passage, dans les dernières version d'iOS, l'ARC se débrouille pas mal pour gérer la mémoire.
Et de toute façon, le Garbage Collector n'est pas là pour gérer la mémoire à la place d'un développeur paresseux, il est là pour résoudre les problèmes d'appartenance et de transfert des objets (qui doit désalouer les objets retournés, qui doit désalouer les exceptions...). Quand on a une application critique (comme toutes les applications mobiles), ont finit de toute façon par gérer à la main l'allocation des objets complexes (via des pools), y compris en Java.
Le GC n'est de toute façon pas un miracle qui corrige les conneries des développeurs. Une application en tâche de fond sous Android peut parfaitement avoir un leak mémoire monumental et bouffer toutes les ressources du système, GC ou pas. Et ce n'est malheureusement pas rare...

Et je maintiens, ouvrir le multitâche sous iOS est complètement trivial. Si vous pensez réellement qu'iOS est incapable de faire du multitâche, est que vous pourriez m'expliquer comment une application de quelques ko parvient à l'activer sur cet OS - vous pensez réellement que backgrounder patche des millions de lignes de l'OS pour le rendre multitâche ? Est-ce que vous pourriez également m'expliquer comment font les nombreuses applications systèmes Apple qui tournent en daemon pour le faire ?

Zaphod


Pascal Méheut

Citation de: Zaphod le Février 14, 2013, 23:10:34
En tous cas, il y a des constructeurs qui eux, savent innover (au moins sur le design), comme Archos :
http://www.frandroid.com/actualites-generales/128835_archos-annonce-officiellement-la-gamme-platinium-avec-trois-formats-de-tablettes/

J'ai du mal à voir où est l'innovation. Le look et la couleur sont tous sauf originaux et sortir 3 tailles "classiques" ne me semble pas spécialement nouveau non plus...


Nicolas Meunier

Citation de: Zaphod le Février 14, 2013, 23:10:34
En tous cas, il y a des constructeurs qui eux, savent innover (au moins sur le design), comme Archos :
http://www.frandroid.com/actualites-generales/128835_archos-annonce-officiellement-la-gamme-platinium-avec-trois-formats-de-tablettes/

dans la même page : "Une des dernières polémiques à propos de ces tablettes, c'est le fait que ces tablettes seraient fabriquées et commercialisées par un fabricant chinois nommé Onda puis « rebadgées » par Archos." Pas le symbole absolu de l'innovation.

Zaphod

Je ne vois pas pourquoi une polémique... Archos fait comme d'autres (comme wiko par exemple ), il commande à une marque chinoise qui fait du pas cher correct et il met son nom dessus.

Sinon j'avais mis le lien justement parce que je trouve le design totalement pompé sur l'ipad...
Autant je trouve que pour les appareils pour lesquels samsung a été condamné aux US, la notion de plagiat est abusive, autant là, je trouve que la copie est difficile à cacher.
Venant d'un constructeur chinois, ça ne m'étonne pas, en revanche, qu'archos ait choisi ce modèle pour mettre son nom dessus... Je trouve ça étrange.

Pascal Méheut

Citation de: Zaphod le Février 15, 2013, 22:37:27
Autant je trouve que pour les appareils pour lesquels samsung a été condamné aux US, la notion de plagiat est abusive

Tu veux dire ceux pour lesquels au procès ont été produits les documents où le marketing Samsung expliquait comment ressembler encore plus aux produits Apple tout en faisant attention à laisser qques différences pour pouvoir prétendre que ca n'était pas de la copie ?


Zaphod

C'est le principe de tas de trucs oui, s'inspirer du concurrent qui marche en prenant garde de ne pas trop y ressembler.
Je ne vois pas en quoi c'est illégal.
Les rayons de tous les magasins regorgent de produits de ce style.

Si on ne veut pas être source d'inspiration pour les autres, il ne faut pas sortir de bons produits.

Pascal Méheut

Citation de: Zaphod le Février 16, 2013, 09:44:22
C'est le principe de tas de trucs oui, s'inspirer du concurrent qui marche en prenant garde de ne pas trop y ressembler.
Je ne vois pas en quoi c'est illégal.

C'est illégal quand on pousse la ressemblance tellement loin qu'un tribunal le dit...

Citation de: Zaphod le Février 16, 2013, 09:44:22
Si on ne veut pas être source d'inspiration pour les autres, il ne faut pas sortir de bons produits.

Logique imparable en effet  ::)

Zaphod

Citation de: Pascal Méheut le Février 16, 2013, 10:23:23
C'est illégal quand on pousse la ressemblance tellement loin qu'un tribunal le dit...
Là dessus tu n'as pas tort...
Mais c'est illégal seulement aux US alors... Puisqu'ils n'ont été condamnés que là bas.

Après la notion de ressemblance est subjective... Là preuve la tablette archos ne vous a pas fait réagir alors que je trouve que c'est totalement abusé.
Et pour samsung c'est l'inverse, je n'ai jamais trouvé de ressemblance choquante...

Pascal Méheut

Citation de: Zaphod le Février 16, 2013, 10:56:50
Mais c'est illégal seulement aux US alors... Puisqu'ils n'ont été condamnés que là bas.

Les différents procès dans différents pays ont donné différents résultats. Mais du point de vue d'Apple, le procès américain est le plus important : c'est leur marché domestique et c'est là que les dommages et intérêts sont les plus élevés.

Citation de: Zaphod le Février 16, 2013, 10:56:50
Après la notion de ressemblance est subjective... Là preuve la tablette archos ne vous a pas fait réagir alors que je trouve que c'est totalement abusé.
Et pour samsung c'est l'inverse, je n'ai jamais trouvé de ressemblance choquante...

C'est ton droit. Mais comme je le disais, Samsung avait écrit dans un mémo interne que leur but était de ressembler le plus possible à l'iPhone, que c'était déjà pas mal mais qu'il fallait aller plus loin en faisant attention à ne pas se faire piquer. Donc ils ne sont pas totalement d'accord avec toi.
Et en cherchant un peu, on trouve ce genre de choses :

Zaphod

Je connais cette image qui bien que partisane n'est pas convaincante.
On ne voit pas bien les produits dessus... Et ce qu'on voit ne ressemble pas tant que ça.
Les proportions sont différentes, le placement des boutons aussi etc... Etc...

Pour la grille d'app j'avais le même genre de trucs sur mon vieux palm.

Que samsung se soit inspiré d'apple c'est évident, mais regarder la concurrence et tenter de s'inspirer de ce qu'elle fait de bien... C'est quand même hyper courant.
Moi je bosse dans l'aéronautique, et c'est ce qu'on fait tout le temps...

Mais les brevets techniques sont beaucoup plus limités que les brevets logiciels ou l'équivalent pour le design (et beaucoup plus objectifs)

Zaphod

Tout ça pour dire, prendre un produit concurrent, l'etudier pour voir ce qu'il y a de mieux que le tien et pour savoir comment t'en servir pour améliorer ton produit à toi, c'est une des bases de l'industrie...

Ca n'est même pas caché.
Il y a quelques années j'avais visité le technocentre d'un constructeur automobile français... Un des premiers trucs qu'ils te montrent, c'est le centre d'analyse de la concurrence où ils démontent les voitures des autres.

Pascal Méheut

On va dire que tu as raison : copier les produits d'un de ses principaux clients, faire des mémos interne où on explique que c'est ce qu'il faut faire et se faire condamner pour ca, c'est une pratique courante.

Et quiconque montre une image le prouvant est partisan.

Parfaitement logique.

LSCC

Citation de: Zaphod le Février 16, 2013, 11:15:34
Je connais cette image qui bien que partisane n'est pas convaincante.
On ne voit pas bien les produits dessus... Et ce qu'on voit ne ressemble pas tant que ça.
Les proportions sont différentes, le placement des boutons aussi etc... Etc...
....
Ah bon !!!

Faut vite aller voir l'ophtalmo ;D ;D ;D
Écran tout tactile, bouton central en bas, forme rectangulaire plus que copiée et fonction en rappel en bas. Si ce n'est pas de la "pompe odieuse", moi je marche sur l'eau.

Regarde donc les Sony (Xperia), eux au moins ils ont chercher à faire autre chose.