So di scrivere programmi (usando C) che hanno:
-
Valori dei dati, che sono manipolati. Ad esempio: numero intero, valori float ecc.
-
funzioni (regole), tramite cui vengono manipolati i valori dei dati.
object è un'astrazione coerente di rappresentare qualcosa che racchiuda le sue proprietà (valori dei dati) + interazioni (funzioni) & processi (funzioni) che possono manipolare quei valori di dati.
Come principiante di Python, mi piacerebbe sapere perché i valori dei dati (come interi e float) e i processi (come le funzioni) sono considerati oggetti?
Dal blog di Guido come indicato di seguito, potrei trovare alcune informazioni pertinenti ma non risponde perché?
The internal implementation of Python made this simple to do. All of Python's objects were based on a common C data structure that was used everywhere in the interpreter. Variables, lists, functions, and everything else just used variations of this one data structure---it just didn't matter if the structure happened to represent a simple object such as an integer or something more complicated such as a class.
In che modo un processo di calcolo (funzione) può essere un oggetto come in qualsiasi progettazione linguistica?