Terminologia OOP in Ruby e C ++


10

Sto seguendo un corso di C ++ nella mia scuola. Da quando ho programmato in Ruby conosco alcune cose OOP.

Ma in C ++ ci sono funzioni membro, variabili membro e funzioni statiche. In Ruby abbiamo metodi di istanza, variabili di istanza e variabili di classe. E ce ne sono altri ...

Qualche motivo per cui sono diversi? Sono livelli abbastanza diversi di OOP? O solo alcune differenze nella tradizione di questi ecosistemi?

Risposte:


4

L'istanza in Ruby e il membro in C ++ sono effettivamente la stessa cosa, quindi le variabili di istanza e le variabili del membro sono uguali, così come i metodi di istanza e le funzioni del membro.

Tuttavia, i membri statici sono in qualche modo diversi dalle variabili di classe in Ruby poiché il modello a oggetti Ruby è abbastanza diverso da C ++. In Ruby, le classi sono oggetti, quindi le variabili di classe sono variabili di istanza di un oggetto di classe.


6

Sono solo nomi diversi per la stessa cosa. Vedi la stessa cosa con l'ereditarietà: base contro genitore vs superclasse. Gli insegnanti e le persone che conoscono solo una lingua a volte saranno molto pedanti riguardo ai termini. Nell'industria troverai persone che mescolano e abbinano più spesso.


0

I concetti - o come li chiami tu, livelli - di OOP sono simili o uguali tra le lingue OO e molte differenze terminologiche derivano dalla storia e dalla tradizione delle lingue e dei loro ecosistemi. Ecco perché vedi termini diversi usati per descrivere concetti molto simili quando si confrontano le due lingue.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.