Deutsch   English   Français   Italiano  
<uftt3o$30nq2$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: =?UTF-8?B?U3TDqXBoYW5lIFJpdmnDqHJl?= <stef@genesix.org>
Newsgroups: fr.comp.lang.ada
Subject: =?UTF-8?Q?Re=3A_Question_structure_de_donn=C3=A9es?=
Date: Sun, 8 Oct 2023 11:34:48 +0200
Organization: La Maison
Lines: 114
Message-ID: <uftt3o$30nq2$1@dont-email.me>
References: <ufcalc$i3v$1@rasp.pasdenom.info> <ufr2f8$28d89$1@dont-email.me>
 <ufshr8$p80$1@rasp.pasdenom.info>
Reply-To: stef@genesix.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 8 Oct 2023 09:34:48 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1ab90d3898745bc5832d1fa1f789ac2a";
	logging-data="3170114"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+jNyRLmsfUhhS7ry4JV/XJhi4P+fJPHH8="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:PRp8ImatgzrIS9mwoqIx+8U/AUI=
Content-Language: fr
In-Reply-To: <ufshr8$p80$1@rasp.pasdenom.info>
Bytes: 5161


> Mon problème se situe au niveau du 3eme conteneur. Je ne sais pas
> quels "éléments" mettre dans les classes.

Des classes sont-elles nécessaires ? Le premier conteneur contient le
type du second conteneur qui contient lui-même le type du troisième
conteneur.

Tu peux faire toutes les recherches que tu souhaites en itérant à la
vitesse de la ram, vu que ça va pas faire de gros volumes...

Le premier conteneur peut contenir des capacités (si j'ai bien compris) :

hardisk
ram
network
....
printers
scanners
....
details : type du second conteneur


le second conteneur pourrait contenir

name (sda1, eth0, <printer-name>, ...)
extended name
state (ready, up, down, not connected, etc.
caps : 1To, 64Go, 1Gbps, etc...
extended caps : NVMe, SSD, DDR5, copper, fiber, satellite, B&W printer,
Duplex scanner, etc...
....
extended caps : type du troisième conteneur


le troisième conteneur pourrait contenir

key
value

Et là, tu mets le fourre-tout des caps particulières de ton hardware,
périphérique, pilote magique, etc...


Une classe pour l'ensemble pourquoi pas (quoique un paquetage standard
me semblerait suffisant, à moins que tu souhaites manipuler plusieurs
ensembles à la fois) mais pourquoi plusieurs classes pour chaque niveau
de conteneur ?


PS

J'ai été voir ton site, 1) j'aime bien la résistance en 'macramé' (une 
22 ohms 5% a priori :) 2) et la réflexion de... "mais y'a pas mieux que
le C dans ma vie de dev ?

Une remarque très juste : "La courbe d'apprentissage est vraiment
raide. Le langage est vraiment complet. Du coup, ça rend son
apprentissage plus long. Et chaque version d'Ada en rajoute une couche.
Mais plus j'avance dans mon apprentissage, plus je trouve le langage
intéressant."

J'ai appris Ada ainsi : d'abord comme une sorte de 'Super Pascal', puis 
ensuite, j'ai lu le RM (super lecture, la mère de toutes les lectures, 
on y découvre des perles) et aussi tout ce qu'à produit Jean-Pierre 
(beaucoup de communications) et l'autre mère de toutes les lectures :

https://fr.wikibooks.org/wiki/M%C3%A9thodes_de_g%C3%A9nie_logiciel_avec_Ada

J'ai eu la chance de trouver une version papier, d'occasion, en très bon
état, planquée tout en haut d'une étagère, à peine visible (mais je
connaissais la couverture) dans un coin poussiéreux de l'ancien Gibert
Jeunes. Celle-là, elle m'attendait !

J'ai appris "bout par bout", sans me soucier de tout comprendre
d'un coup, en fonction de mes besoins (et je n'ai toujours pas tout 
compris, loin de là).

Et puis la communauté Ada est extrêmement bienveillante. Ça aide pour
progresser.

Enfin, la productivité de Ada est simplement phénoménale. Et le nombre
de lignes actives pour un problème donné étonnamment faible. Ada est,
sur la totalité d'une application) beaucoup moins verbeux que le C ou le
C++ :)

Rust, j'ai regardé la syntaxe, regardé à nouveau, puis j'ai... euh... 
écarquillé les yeux façon hiboux (chercher rust ugly syntax, y'a du lourd)


Tu peux pratiquer Ada également sur AVR¹ ou STM32, ainsi que plein
d'autres microcontrôleurs... Une soluce ici avec gnatstudio et le 
débuggueur intégré fonctionnel (dev sur uP sans debugger, je sais pas 
faire).

¹https://github.com/sowebio/adam-doc


Étant électronicien à la base (numérique, radio, microcontrôleurs), au
niveau FPGA/VHDL (que je connais pas), j'aimerai bien savoir sur quelle
base (raisonnablement économique) je pourrais me fonder pour m'initier
(en VHDL impérativement, pas du chinois, préférablement de l'européen
mais je sais que je rêve, avec un environnement de préférence libre et,
à défaut, sans procédure de licence de dingue. Et sous Linux pour
"simplifier" le choix :)

L'idée serait de pouvoir me composer un FPGA avec un bloc
"microprocesseur" compatible avec un compilo Ada et du hardware rapide
(décodeur I/Q, PLL et autre blocs fonctionnels ou coder ne suffit plus).

-- 
Stéphane Rivière
Ile d'Oléron - France