Quote:
Originariamente inviato da Kleidemos
Concordo al 1000000%
|
Si ma questo non è una bazzecola però ...
Per esempio, bisogna sapere che tutto nei computer (nei sistemi unix) funziona a partire da sei chiamate principali di sistema definite dal sistema operativo. Su queste sei chiamate base, si implementano le librerie dei linguaggi di programmazione. Per esempio la libreria C. Sulla libreria C si costruiscono altre librerie, per esempio la STL C++, oppure la glib, sulla quale a sua volta, si basa GTK+, che a sua volta viene usata dalle API di GNOME...e così' via...
Quello che possiamo scrivere semplicemente in C con le GTK+, per esempio per costruire una semplice finestra con un bottone:
Codice:
/* -*-linux-c-*- */
#include <gtk/gtk.h>
gboolean
delete_event_callback(GtkWidget * widget,
gpointer user_data)
{
return FALSE;
}
int
main(int argc, char ** argv)
{
GtkWidget * top_window;
GtkWIdget * button;
gtk_init(&argc, &argv);
top_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
button = gtk_button_new_with_label("Hello, world!");
gtk_container_add(GTK_CONTAINER(top_window), button);
gtk_signal_connect(GTK_OBJECT(top_window), "delete_event",
GTK_SIGNAL_FUNC(delete_event_callback), NULL);
gtk_signal_connect(GTK_OBJECT(top_window), "destroy",
gtk_main_quit, NULL);
gtk_signal_connect(GTK_OBJECT(button), "clicked",
gtk_main_quit, NULL);
gtk_widget_show_all(top_window);
gtk_main();
return 0;
}
è in realtà tremendamente complesso, dietro le quinte, proprio per il fatto che il sistema operativo fornisce soltanto meccanismi semplici. E' più si va indietro con le dipendenze della libreria, più si vede che si procede con un livello più basso, fino ad arrivare alle famigerate 6 chiamate di sistema ...
Da non confondere, quindi, semplicità con facilità (anzi, molto spesso semplicità è proprio sinonimo di complessità) ...