Μάθετε Ncurses: Ξεκινήστε την ανάπτυξη διεπαφών κειμένου

Αποκάλυψη: Η υποστήριξή σας βοηθά στη διατήρηση της λειτουργίας του ιστότοπου! Κερδίζουμε ένα τέλος παραπομπής για ορισμένες από τις υπηρεσίες που προτείνουμε σε αυτήν τη σελίδα.


Το Ncurses είναι μια βιβλιοθήκη που χρησιμοποιείται κυρίως σε λειτουργικά συστήματα που βασίζονται σε Linux και Unix και παρέχει οπτική διεπαφή βασισμένη σε κείμενο για μια ποικιλία εργαλείων. Αυτό σημαίνει ότι ένα πρόγραμμα που χρησιμοποιεί ncurses μπορεί να εμφανίσει μια διεπαφή τύπου GUI μέσα σε ένα παράθυρο τερματικού που υποστηρίζει πλοήγηση πληκτρολογίου και ποντικιού. Με άλλα λόγια, παρέχει λειτουργίες για τη μετακίνηση του δρομέα, τη δημιουργία παραθύρων, την παραγωγή χρωμάτων και πολλά άλλα χωρίς να γράφεται απευθείας για οποιονδήποτε συγκεκριμένο τύπο τερματικού.

Είναι ως κλώνος των καταραμάτων System V Release 4.0 και διανέμεται ελεύθερα σύμφωνα με την άδεια Permissive Free Software, παρόμοια με την άδεια MIT.

Σύντομη Ιστορία των Νοσηλευτών

Το Ncurses έχει μια εξελιγμένη ιστορία που χρονολογείται από κατάρες. Η πρώτη βιβλιοθήκη κατάρρων αναπτύχθηκε στο Πανεπιστήμιο της Καλιφόρνια στο Μπέρκλεϋ και χρησιμοποίησε τη βάση δεδομένων termcap, η οποία τεκμηρίωσε τον τρόπο ελέγχου των διαφορετικών τερματικών. Μετά την επιτυχία της νέας βιβλιοθήκης, η Bell Labs κυκλοφόρησε μια βελτιωμένη βιβλιοθήκη κατάρες στο System V Release 2 που χρησιμοποίησε τη βάση δεδομένων terminfo. Ωστόσο, λόγω των περιορισμών αδειοδότησης, αυτή η βιβλιοθήκη δεν είχε μεγάλη αποδοχή στην κοινότητα BSD.

Στις αρχές της δεκαετίας του ’80, ο Pavel Curtis άρχισε να εργάζεται σε έναν δωρεάν κλώνο της βιβλιοθήκης Bell Labs που ονομάζεται pcurses και διατηρήθηκε μέχρι το 1986. Αυτή η νέα βιβλιοθήκη βελτιώθηκε περαιτέρω όταν ο Zeyd Ben-Halim ανέλαβε την ανάπτυξη και τελικά κυκλοφόρησε ως ncurses το Νοέμβριο του 1993. Κατά τη διάρκεια των επόμενων ετών, δεκάδες άτομα συνέβαλαν σε ncurses που οδήγησαν στην ενεργή ανάπτυξη και βελτίωση του. Από το 1996, το nursurs διατηρείται από τον Thomas E Dickey.

Το Ncurses έχει μεταφερθεί σε πολλά συστήματα και χρησιμοποιείται σχεδόν σε όλα τα συστήματα που βασίζονται στον πυρήνα του Linux, καθώς το σύστημα καταδικάζει τη βιβλιοθήκη σε OpenBSD, FreeBSD και OSX και σε περιβάλλοντα όπως το Cygwin και το MinGW.

Γιατί νοσηλεύεται?

Η βιβλιοθήκη ncurses παρέχει ένα ισχυρό πλαίσιο που επιτρέπει στους προγραμματιστές να δημιουργούν οπτικά ελκυστικές διεπαφές χρήστη σε λειτουργία κειμένου. Οι λειτουργίες του επιτρέπουν στους προγραμματιστές και προγραμματιστές να δημιουργούν εφαρμογές που περιέχουν πολλά παράθυρα, φόρμες, μενού και πίνακες που διευκολύνουν την επιλογή εντολών, την εισαγωγή δεδομένων και την αντιμετώπιση αλληλεπικαλυπτόμενων και στοιβαγμένων παραθύρων.

Μερικά από τα πλεονεκτήματα του ncurses περιλαμβάνουν:

  • Η δυνατότητα να παρέχει στους χρήστες μια διεπαφή βάσει μενού
  • Η δυνατότητα χρήσης πλαισίων ελέγχου, πολλαπλών υπομενού και ακόμη και εισαγωγής κειμένου για την επιλογή επιλογών και εντολών
  • Ένα πιο φιλικό προς το χρήστη περιβάλλον για χρήστες που είναι άνετοι με γραφικές διεπαφές.

Παραδείγματα προγραμμάτων που χρησιμοποιούν Ncurses

Ορισμένα προγράμματα που χρησιμοποιούν ncurses περιλαμβάνουν:

  • GNU Midnight Commander: ένας οπτικός διαχειριστής αρχείων.
  • Aptitude: ένα οπτικό frontend για το εργαλείο διαχείρισης πακέτων APT που χρησιμοποιείται στο Debian και σε άλλα λειτουργικά συστήματα.
  • Lynx: το πρόγραμμα περιήγησης Διαδικτύου που βασίζεται σε κείμενο.
  • Nvi: νέο vi, μια εκ νέου εφαρμογή του κλασικού επεξεργαστή vi που διανέμεται παραδοσιακά με συστήματα BSD και Unix.
  • Emacs: Ένας άλλος επεξεργαστής κειμένου που βρέθηκε σε πολλά συστήματα Unix.

Πόροι

Οι παρακάτω πόροι καλύπτουν τα πάντα κάτω από τον ήλιο που σχετίζονται με ncurses: από την ιστορία έως πρακτικά παραδείγματα και εφαρμογές σε διάφορες γλώσσες προγραμματισμού όπως C, Python και PHP.

  • Επίσημος ιστότοπος: ο επίσημος ιστότοπος για ncurses με λεπτομερή επισκόπηση και συνδέσμους λήψης.
  • Ένας οδηγός χάκερ για Ncurses: αυτός ο οδηγός συζητά τη φιλοσοφία σχεδιασμού, τις μεθόδους εφαρμογής και τις συμβάσεις που χρησιμοποιούνται για την κωδικοποίηση και την τεκμηρίωση. Απευθύνεται σε όσους θέλουν να συνεισφέρουν, να μεταφέρουν ή να τροποποιούν το πακέτο.
  • Ncurses FAQ: ένα λεπτομερές FAQ που παρέχεται από τον Thomas Dickey, ο οποίος είναι υπεύθυνος για τη συντήρηση των νοσηλευτών.
  • Ncurses: μια πολύ λεπτομερής και λεπτομερής επισκόπηση των ncurses, της ιστορίας, της ανάπτυξης και των χαρακτηριστικών της.
  • Ncurses Programming How To: Αυτό το σεμινάριο παρέχει ολοκληρωμένες πληροφορίες σχετικά με τη χρήση του ncurses και σας καθοδηγεί από τη σύνταξη ενός απλού «Hello World!» πρόγραμμα για πιο περίπλοκο χειρισμό μορφών. Δεν προϋποθέτει προηγούμενη εμπειρία και περιλαμβάνει πολλές λεπτομέρειες και παραδείγματα.
  • Πώς να εγκαταστήσετε τη βιβλιοθήκη Ncurses σε Linux: βασικός οδηγός για το σημείο που εξηγεί πώς να εγκαταστήσετε ncurses σε πολλές διανομές Linux.
  • Προγραμματισμός παιχνιδιών σε C με τη βιβλιοθήκη ncurses: ελαφρώς πιο προηγμένος οδηγός που σας καθοδηγεί στη δημιουργία μιας απλής προσομοίωσης μιας μπάλας που αναπηδά μπρος-πίσω στην οθόνη.
  • Ncurses Terminal Screen Control: πλήρες εγχειρίδιο για τη χρήση ncurses με PHP.
  • Ncurses Library Tutorial for Beginners: αυτό το σεμινάριο σας καθοδηγεί στη δημιουργία μιας απλής διεπαφής για ένα πρόγραμμα επεξεργασίας κειμένου.
  • Code Project: Build a Ncurses UI With Python: ένα άλλο ελαφρώς πιο προηγμένο σεμινάριο που εξηγεί πώς να χρησιμοποιήσετε το Python και το ncurses για να δημιουργήσετε μια διεπαφή χρήστη.
  • Παραδείγματα Ncurses: αυτή η σελίδα έχει πολλά παραδείγματα απλών προγραμμάτων και παιχνιδιών που χρησιμοποιούν ncurses.
  • Δημιουργία μενού με Ncurses In C: ένα σεμινάριο που εστιάζει στη χρήση της γλώσσας προγραμματισμού C και των βασικών λειτουργιών ncurses για τη δημιουργία ενός απλού μενού.

Βιβλία

Αρκετά βιβλία καλύπτουν τις ασκήσεις με μεγάλη λεπτομέρεια και παρέχουν χρήσιμες αναφορές και παραδείγματα.

  • Οδηγός προγραμματιστή για NCurses (2007) του Dan Gookin: αυτό το βιβλίο χρησιμεύει ως ένας απλός οδηγός για τη βιβλιοθήκη ncurses και περιλαμβάνει μια πλήρη αναφορά σε περισσότερες από 175 λειτουργίες που παραπέμπουν παραστατικά και απεικονίζονται με παραδείγματα.
  • Guile NCurses Library (2015) από την ομάδα NCurses: αυτό το βιβλίο παρέχει μια σε βάθος επισκόπηση διαφορετικών τερματικών και εξηγεί πώς η βιβλιοθήκη ncurses συμβάλλει στην απλοποίηση της αποστολής προγραμματισμού για τερματικά κυττάρων χαρακτήρων.
  • Termcap & Terminfo (O’Reilly Nutshell) (1988) από τους Mui, O’Reilly και Strang: ενώ το βιβλίο δεν ασχολείται ειδικά με ncurses, παρέχει χρήσιμες πληροφορίες σχετικά με τις βάσεις δεδομένων termcap και terminfo. Το Terminfo χρησιμοποιείται από τους ncurses, οπότε αυτό το βιβλίο είναι ένας καλός σύντροφος για τα βιβλία που αναφέρονται παραπάνω καθώς παρέχει παραδείγματα δυνατοτήτων και σύνταξης για termcap και terminfo, συγγραφή και εντοπισμός σφαλμάτων περιγραφής τερματικού και αρχικοποίηση τερματικού.

Μην ορκίζεστε, χρησιμοποιήστε νοσηλευτές

Παρόλο που σχεδόν κάθε εφαρμογή, λογισμικό και gadget που χρησιμοποιούμε σήμερα διαθέτει γραφικό περιβάλλον εργασίας χρήστη, γνωρίζοντας πώς να δουλεύουμε με ένα περιβάλλον εργασίας κειμένου έχει και τις εφαρμογές και τα πλεονεκτήματά του. Είναι χρήσιμο αν ενδιαφέρεστε να εργαστείτε με απομακρυσμένους διακομιστές ή να χρησιμοποιήσετε υλικό με περιορισμένες δυνατότητες. Οι παραπάνω πόροι θα σας καθορίσουν στο σωστό δρόμο για την εξάσκηση του ncurses.

Περαιτέρω ανάγνωση και πόροι

Έχουμε περισσότερους οδηγούς, σεμινάρια και γραφήματα που σχετίζονται με την κωδικοποίηση και την ανάπτυξη:

  • Mantis Hosting: μάθετε ποιες εταιρείες φιλοξενίας ιστοσελίδων προσφέρουν καλές προσφορές που περιλαμβάνουν αυτό το δημοφιλές πρόγραμμα εντοπισμού σφαλμάτων.
  • Ubuntu Primer: μάθετε τα πάντα για μία από τις πιο δημοφιλείς διανομές Linux.
  • Αντικειμενοστραφής προγραμματισμός: μάθετε για το ευρύ φάσμα αντικειμενοστρεφών γλωσσών προγραμματισμού – μερικές μπορεί να σας εκπλήξουν.

Θα μπορούσε το Διαδίκτυο να επιβιώσει στο τέλος του κόσμου?

Αναρωτηθήκατε ποτέ τι θα έκανε μια μεγάλη καταστροφή στο Διαδίκτυο; Ρίξτε μια ματιά στο γράφημα μας, Θα επιβιώσει το Διαδίκτυο στο τέλος του κόσμου; Είναι πιθανό να μπορούσαμε όλοι να καταστραφούμε αλλά το Διαδίκτυο θα συνεχίσει να λειτουργεί.

Θα επιβιώσει το Διαδίκτυο στο τέλος του κόσμου;
Θα μπορούσε το Διαδίκτυο να επιβιώσει στο τέλος του κόσμου?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map