Δημοσιεύτηκε: 03 Ιουν 2011, 09:40
Θα ήθελα να προσθέσω ότι ο χωρισμός ενός προγράμματος σε επιμέρους αρχεία γίνεται και για δύο ακόμα λόγους.
Ο πρώτος και κυριότερος είναι η επαναχρησιμοποίηση, ή αλλιώς δημιουργία βιβλιοθηκών. Στο παραπάνω παράδειγμα το αρχείο module.c μπορεί να χρησιμοποιηθεί και σε άλλο πρόγραμμα που ίσως να χρειάζεται πχ το παραγοντικό. (Με αυτό το σκεπτικό η συνάρτηση main_interface δεν "κολλάει" στο module.c αν θέλουμε να το έχουμε σαν βιβλιοθήκη μας. Μπορεί σε άλλο πρόγραμμα που θα φτιάξουμε να μην έχουμε επαφή με τον χρήστη αλλά να θέλουμε τον παραγοντικό υπολογισμό.). Φανταστείτε τι θα μπορούσες να κάνεις σε C αν δεν υπήρχαν οι βιβλιοθήκες. Τίποτα. Η γλώσσα αυτή καθ' αυτή είναι πολύ λιτή. Όλες οι δυνατότητες της έρχονται από τις βιβλιοθήκες της.
Ένας δεύτερος λόγος είναι η δημιουργία του προγράμματος από διάφορους ανθρώπους. Στο παραπάνω παράδειγμα μπορεί ο ένας να φτιάξει το user interface και ο άλλος τους υπολογισμούς.
Τώρα, κατά πόσο είναι χρήσιμα όλα αυτά όταν φτιάχνεις ένα πρόγραμμα για προσωπική χρήση, εύκολο και μιας χρήσης - δεν ξέρω. Είναι μάλλον προσωπική επιλογή.
Ο πρώτος και κυριότερος είναι η επαναχρησιμοποίηση, ή αλλιώς δημιουργία βιβλιοθηκών. Στο παραπάνω παράδειγμα το αρχείο module.c μπορεί να χρησιμοποιηθεί και σε άλλο πρόγραμμα που ίσως να χρειάζεται πχ το παραγοντικό. (Με αυτό το σκεπτικό η συνάρτηση main_interface δεν "κολλάει" στο module.c αν θέλουμε να το έχουμε σαν βιβλιοθήκη μας. Μπορεί σε άλλο πρόγραμμα που θα φτιάξουμε να μην έχουμε επαφή με τον χρήστη αλλά να θέλουμε τον παραγοντικό υπολογισμό.). Φανταστείτε τι θα μπορούσες να κάνεις σε C αν δεν υπήρχαν οι βιβλιοθήκες. Τίποτα. Η γλώσσα αυτή καθ' αυτή είναι πολύ λιτή. Όλες οι δυνατότητες της έρχονται από τις βιβλιοθήκες της.
Ένας δεύτερος λόγος είναι η δημιουργία του προγράμματος από διάφορους ανθρώπους. Στο παραπάνω παράδειγμα μπορεί ο ένας να φτιάξει το user interface και ο άλλος τους υπολογισμούς.
Τώρα, κατά πόσο είναι χρήσιμα όλα αυτά όταν φτιάχνεις ένα πρόγραμμα για προσωπική χρήση, εύκολο και μιας χρήσης - δεν ξέρω. Είναι μάλλον προσωπική επιλογή.