Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA
Al .NEXT 2026 di Chicago, Nutanix ha mostrato quanto sia cambiata: una piattaforma software che gestisce VM, container e carichi di lavoro IA ovunque, dall’on-premise al cloud pubblico. Con un’esecuzione rapidissima sulle partnership e sulla migrazione da VMware
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta
Xiaomi Pad 8 Pro adotta il potente Snapdragon 8 Elite all'interno di un corpo con spessore di soli 5,75 mm e pannello LCD a 144Hz flicker-free, per un tablet che può essere utilizzato con accessori dedicati di altissima qualità. Fra le caratteristiche esclusive, soprattutto per chi intende usarlo con la tastiera ufficiale, c'è la modalità Workstation di HyperOS 3, che trasforma Android in un sistema operativo con interfaccia a finestre
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-02-2007, 12:29   #1
fale
Senior Member
 
L'Avatar di fale
 
Iscritto dal: Jun 2005
Messaggi: 502
c++, classi e oggetti

sto leggendo il libro c++ di Shidth... e non ho capito una cosa... perchè usare le classi e gli oggetti??

nel senso:
le funzioni hanno molti vantaggi (decentralizzazione del sw, riutilizzabilità etc)... gli oggetti???


spero di essere stato chiarto, anche se non penso... perchè manco io ho le idee chiare sull'argomento

grazie a tutti coloro che mi risponderanno
__________________
F4l3.Net
abc@home CPDN rosetta@home seti@home simap
(BOINC WUDestroyer, ABC GaussianRider, CPDN Adept, Rosetta GaussianRider, Seti GaussianRider, SIMAP Harvester)
fale è offline   Rispondi citando il messaggio o parte di esso
Old 04-02-2007, 14:32   #2
jappilas
Senior Member
 
L'Avatar di jappilas
 
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4747
Quote:
Originariamente inviato da fale
sto leggendo il libro c++ di Shidth... e non ho capito una cosa... perchè usare le classi e gli oggetti??

nel senso:
le funzioni hanno molti vantaggi (decentralizzazione del sw, riutilizzabilità etc)... gli oggetti???


spero di essere stato chiarto, anche se non penso... perchè manco io ho le idee chiare sull'argomento

grazie a tutti coloro che mi risponderanno
per prima cosa ci si chieda... cos'è un realtà oggetto? un ' entità in cui chi progetta il SW, "condensa" dei campi dati che, pur vari e tra loro magari eterogenei, ne formano una rappresentazione completa (cioè i campi e i valori contenuti sono tutti quelli necessari a lavorare sul tipo di entità che rappresentano) e che a loro volta avranno bisogno di funzioni dedicate alla loro manipolazione - si ha quindi che la progettazione del sw prevederà di classificare le entità coinvolte, tipizzandole e identificandone le caratteristiche, nonchè le "responsabilità" (*)

detta in questo modo per facilitare la comprensione a chi provenga da linguaggi e paradigmi eclusivamente procedurali , perchè in effetti si può applicare il paradigma a oggetti anche programmando in C , progettando adeguatamente strutture dati e funzioni

ma in realtà una delle caratteristiche principali della programmazione a oggetti, anche se plausibilmente ostica da acquisire e padroneggiare all' inizio, prevede l' aggregazione, ai dati, delle funzioni che li manipolano (che diventano metodi di classe ): questo è detto incapsulazione(*) ed è importante per vari motivi:
da una parte la possibilità di limitare la visibilità dei dati membro, e quindi contingentarne l' accesso al codice esterno alla classe - ah per inciso, è buona norma limitare al minimo indispensabile i dati di classe con visibilità "pubblica", e prevedere piuttosto un metodo di modifica e uno di recupero;
dall' altra, rende disponibile il riuso del codice: altre classi possono riutilizzare i metodi implementate dalla prima, eventualmente in aggiunta a metodi propri, dichiarandosi sue "parenti" ( cioè "figlie", da cui il meccanismo noto come ereditarietà: nel senso concreto del termine, visto che le classi "figlie" ereditano -genericamente, poi ci sono delle considerazioni da fare- i dati e i metodi della classe "genitore")
inoltre, soprattutto quando si ha a che fare con classi già realizzate da sfruttare in un proprio progetto, rende apparente il modello in cui entità discrete (gli oggetti) comunicano tra loro tramite attraverso messaggi scambiati attraverso le loro interfaccie : è importante notare questo, perchè può capitare spesso e volentieri, di concentrarsi solo sullo sfruttamento corretto dell' interfaccia (in pratica, chiamata ai metodi della classe) ignorando l' implementazione e le strutture dati che la classe contiene (oggetti come "scatole nere")
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name
Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish
Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate

Ultima modifica di jappilas : 04-02-2007 alle 14:38.
jappilas è offline   Rispondi citando il messaggio o parte di esso
Old 04-02-2007, 15:17   #3
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Mi esercito in un'azzardata divinazione ma io credo che quando fale legga le frasi dove modularità, riuso e incapsulamento diventano grandiose conquiste dell'orientamento agli oggetti egli pensi tra sè e sè "ma io questa roba già la faccio in C, che è procedurale".

Se così fosse allora avrei la conferma di una mia personalissima teoria: ciò che oggi chiamiamo orientamento agli oggetti è una massi indistinta di paroloni tutti riferiti a scarti di produzione di quella che era l'idea originaria di oggetto. Molto curiosamente noi abbiamo perso nel tempo la parte significativa e comprensibile di quell'idea e ci siamo concentrati sulla porzione insignificante e afflitta da numerosi errori genetici (in primis i concetti di classe ed ereditarietà).
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 04-02-2007, 17:16   #4
fale
Senior Member
 
L'Avatar di fale
 
Iscritto dal: Jun 2005
Messaggi: 502
Quindi sono solo un evoluzioni delle funzioni (con i principi fondamentali sviluppati e il nuovo principio dell'ereditarietà?

@PGI-Bis: +o- 'ho pensato
__________________
F4l3.Net
abc@home CPDN rosetta@home seti@home simap
(BOINC WUDestroyer, ABC GaussianRider, CPDN Adept, Rosetta GaussianRider, Seti GaussianRider, SIMAP Harvester)
fale è offline   Rispondi citando il messaggio o parte di esso
Old 04-02-2007, 18:19   #5
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
Quote:
Originariamente inviato da fale
Quindi sono solo un evoluzioni delle funzioni (con i principi fondamentali sviluppati e il nuovo principio dell'ereditarietà?

@PGI-Bis: +o- 'ho pensato
pensala di più come all'evoluzione delle struct (almeno io la vedo così)
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 05-02-2007, 01:23   #6
TheKaneB
Member
 
L'Avatar di TheKaneB
 
Iscritto dal: Dec 2005
Città: Cinisello Balsamo (MI)
Messaggi: 163
Quote:
Originariamente inviato da fale
sto leggendo il libro c++ di Shidth... e non ho capito una cosa... perchè usare le classi e gli oggetti??

nel senso:
le funzioni hanno molti vantaggi (decentralizzazione del sw, riutilizzabilità etc)... gli oggetti???


spero di essere stato chiarto, anche se non penso... perchè manco io ho le idee chiare sull'argomento

grazie a tutti coloro che mi risponderanno
Quote:
Originariamente inviato da vizzz
pensala di più come all'evoluzione delle struct (almeno io la vedo così)
si in effetti la definizione "brutale" che viene più semplice da comprendere è quella della struct (RECORD per chi programma in pascal) + le funzioni (che dentro l'oggetto prendono il nome di methods o metodi)...

Ovviamente è qualcosa di più sofisticato di una struct+funzioni, però rende l'idea...
__________________
Software Failure: Guru Meditation
TheKaneB è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Ecovacs presenta la gamma 2026: paviment...
Efficienza energetica fino a 2.000 volte...
Lenovo 360: il programma di canale dell'...
Appena 10.000 qubit per rompere la critt...
Analisi dei transistor durante il funzio...
Attacco informatico a Booking.com: espos...
A quattro mesi dal divieto dei social ne...
NVIDIA GeForce RTX 5060 e 5060 Ti: in ar...
Rebellions, Arm e SK Telecom, nuova alle...
Modernizzazione delle app: Red Hat OpenS...
Nel mirino di Google c'è il back ...
PRAGMATA in bundle con GeForce RTX 5000:...
Le novità MOVA per il 2026: robot e impi...
Windows, stop all'attivazione telefonica...
ASUS porta la serie TUF nel formato Mini...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:09.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v