π
<-

Appli graphique de RPN (en Python !)

Re: Appli graphique de RPN (en Python !)

Message non lude cent20 » 07 Fév 2025, 08:37

23.4 ko, on se rapproche des records en terme de taille de script.
Pour limiter les plantages, il faut souvent réduire la taille des objets en mémoire et éviter les objets qui changent de taille, c'est ce que j'ai compris de mes nombreux tests / échanges sur ce forum.

La fonction display() est vraiment (trop?) longue.
La reproduction de l'interface de l'application calcul est une idée tout à fait intéressante :)
Image
Enseignant Maths & NSI : Projets, tutos & ressources NumWorks.
📙 Mes 3 livres : Apprendre avec l'IA | Découvrir la NumWorks | Discovering the NumWorks.
Soutenez l'évolution de la NumWorks (un 👍 suffit) : #2292 & #1680.
Avatar de l’utilisateur
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 51.4%
 
Messages: 1128
Images: 67
Inscription: 17 Mai 2012, 09:49
Localisation: Avignon
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: nsi_xyz

Re: Appli graphique de RPN (en Python !)

Message non lude XanderLeaDaren » 07 Fév 2025, 14:17

Quelques améliorations de code m’ont permis de finaliser des fonctionnalités, et de pouvoir me remettre au développement dans les jours à venir.

Pour ceux qui suivent ce petit projet, on a maintenant :
– un menu « finance » quand on appuie sur [%] avec [shift], qui propose diverses utilisations de ce symbole ;
– la possibilité de ROLL down la pile en sélectionnant avec [↑] et [↓] le niveau le plus haut qu’on souhaite ;
– une correction à l’affichage des fameux 000000001 ou 9999999 propres à Python pour les nombres décimaux

@cent20 : tu suggères que je découpe display() en une succession de petites fonctions, pour la lisibilité, ou tu penses que je rafraichis trop de choses à chaque passage, et qu’il y a de l’optimisation à faire de ce côté-là ?
Avatar de l’utilisateur
XanderLeaDaren
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Prochain niv.: 24%
 
Messages: 11
Inscription: 26 Nov 2024, 19:07
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Enseignant
GitHub: XanderLeaDaren

Re: Appli graphique de RPN (en Python !)

Message non lude cent20 » 07 Fév 2025, 17:43

XanderLeaDaren a écrit:
@cent20 : tu suggères que je découpe display() en une succession de petites fonctions, pour la lisibilité, ou tu penses que je rafraichis trop de choses à chaque passage, et qu’il y a de l’optimisation à faire de ce côté-là ?


J'ai en effet vu des lags de refresh, mais ce n'était pas l'objet de ma remarque.

Quand cette fonction est appelé, un "objet" se crée en mémoire.
Plus ta fonction est grosse, plus l'objet sera gros.
Dans un monde idéal, les fonctions sont les plus petites possibles, elles consomment ainsi le moins de mémoire possible (cela dépend aussi de ce qu'elle font, evidemment)
Image
Enseignant Maths & NSI : Projets, tutos & ressources NumWorks.
📙 Mes 3 livres : Apprendre avec l'IA | Découvrir la NumWorks | Discovering the NumWorks.
Soutenez l'évolution de la NumWorks (un 👍 suffit) : #2292 & #1680.
Avatar de l’utilisateur
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 51.4%
 
Messages: 1128
Images: 67
Inscription: 17 Mai 2012, 09:49
Localisation: Avignon
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: nsi_xyz

Re: Appli graphique de RPN (en Python !)

Message non lude XanderLeaDaren » 04 Mar 2025, 14:44

Grosse mise à jour :

- utilisation de tuples au lieu de listes quand c’est possible
- utilisation de valeurs numériques pour keydown au lieu de charger les constantes KEY_⋯ du module ion ;
- retrait des calculs statistiques (l’appli NumWorks fait mieux) ;
- affichage redessiné : ligne de saisie exactement de la même taille que l’appli Calculs NumWorks, et lignes d’affichage des niveaux de la pile qui font donc désormais exactement le double de la taille dynamique en mode fixe ;
- diverses fonctions optimisées pour rafraichir seulement les parties de l’écran qui le nécessitent plutôt que l’ensemble ;
- curseur qui forced-clignote en suivant la saisie de caractères dans la ligne de saisie ;
- corrections de bogues de comportement, pour être parfaitement conforme au comportement de machines en Entry RPN, cf. l’excellent tuto de Hans Klaver https://klaverscholten.nl/rpn/
Avatar de l’utilisateur
XanderLeaDaren
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Prochain niv.: 24%
 
Messages: 11
Inscription: 26 Nov 2024, 19:07
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Enseignant
GitHub: XanderLeaDaren

Re: Appli graphique de RPN (en Python !)

Message non lude Adriweb » 04 Mar 2025, 15:03

Bien joué :)

Tu aurais des captures (voire gif/video?)

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80%
 
Messages: 14845
Images: 1133
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Appli graphique de RPN (en Python !)

Message non lude XanderLeaDaren » 04 Mar 2025, 17:04

C’est prévu de filmer des petites vidéos de tuto, dès que le code ne bougera plus trop (et on approche de ce que je vise). Ce sera soit avec la machine, soit via capture d’écran de Thonny (ion et kandinsky ont été portés sur desktop), en fonction de ce que j’arriverai le plus rapidement à produire. :)
… ou ça peut arriver plus rapidement, si NumWorks met à jour l’émulateur en ligne pour prendre en compte toutes les touches (ils bossent dessus, mais c’est pas pour tout de suite)
Avatar de l’utilisateur
XanderLeaDaren
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Prochain niv.: 24%
 
Messages: 11
Inscription: 26 Nov 2024, 19:07
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Enseignant
GitHub: XanderLeaDaren

Précédente

Retourner vers Programmation Python

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2313 utilisateurs:
>2286 invités
>20 membres
>7 robots
Record simultané (sur 6 mois):
29271 utilisateurs (le 11/07/2025)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)