Τι Είναι το GitHub και Πώς Λειτουργεί

Αποφάσισες να ασχοληθείς με προγραμματισμό και τώρα ψάχνεις ποια γλώσσα προγραμματισμού είναι η καλύτερη και θα σου προσφέρει περισσότερη ευκολία.

Λοιπόν, δεν είναι τόσο η γλώσσα αυτή καθαυτή που θα σε διευκολύνει, αλλά τα εργαλεία με τα οποία θα τη συνοδεύσεις.

Αναρωτιέσαι πώς ένας προγραμματιστής δεν χάνεται μέσα σε ένα project, γεμάτο προσθήκες και αλλαγές;

Όχι δεν τα κρατάει όλα στο μυαλό του και σίγουρα δεν στηρίζεται στη δύναμη της μνήμης του.

Το GitHub είναι το δεξί του χέρι σε όλη αυτή την διαδικασία.

Σήμερα λοιπόν θα μιλήσουμε για:

 Το τι είναι το GitHub 

 Πώς λειτουργεί

 Ποια είναι τα πλεονεκτήματά του

Ας ξεκινήσουμε με τα βασικά.

 Τι Είναι το GitHub

Όπως αναφέραμε και παραπάνω το GitHub είναι το δεξί χέρι του προγραμματιστή.

Αποτελεί μία cloud-based υπηρεσία, που δημιουργήθηκε το 2008, η οποία χρησιμοποιείται για την αποθήκευση κώδικα, όσο και για την αποθήκευση αλλαγών που πραγματοποιούνται σε ένα project, καθώς και την κοινοποίηση του εκάστοτε project σε άλλα άτομα.

Το GitHub, εκτός από υπηρεσία αποτελεί και μία κοινότητα, ένα social network προγραμματιστών, το οποίο δίνει την ευκαιρία σε προγραμματιστές από όλο τον κόσμο να επικοινωνούν μεταξύ τους.

Αυτή η δυναμική της κοινότητας, δίνει την ευκαιρία στους προγραμματιστές, να προωθήσουν και οι  ίδιοι την δουλειά τους, φτιάχνοντας στην ουσία ένα portfolio με τα projects τους, το οποίο έχει παγκόσμια ορατότητα, άρα και πιθανές επαγγελματικές ευκαιρίες σε όλο τον κόσμο.

 Πώς λειτουργεί το GitHub

Το GitHub λειτουργεί σε δύο διαστάσεις:

  1. Στο version control
  2. Στο Git

Ας δούμε αυτά τα δύο λίγο πιο αναλυτικά

   Version Control

Όσο δουλεύει ένα προγραμματιστής πάνω σε ένα project και αυτό μεγαλώνει, οι αλλαγές στον κώδικα είναι πολλές.

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

Αντί γι’ αυτό οι προγραμματιστές χρησιμοποιούν δύο άλλες τεχνικές, το branching και το merging.

Μέσα από το branching στην ουσία ο προγραμματιστείς δημιουργεί ένα διπλότυπο του κώδικα που θέλει να επεξεργαστεί και έτσι κάνει ό,τι αλλαγή χρειάζεται.

Μέσω του merging τοποθετεί των κώδικά στο σημείο του project όπου ανήκει.

   Git

Το Git αποτελεί ένα σύστημα ελέγχου του version control.

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

Για παράδειγμα, μία πλατφόρμα την οποία ίσως χρησιμοποιούμε πολλοί από εμάς και περιέχει version control, είναι το Google Docs. Στο Google Docs, έχουμε την δυνατότητα να δούμε το ιστορικό των αλλαγών μας.

Βέβαια το παράδειγμα αυτό είναι αρκετά απλοϊκό, αν αναλογιστούμε το πόσο σημαντικός είναι αυτό ο έλεγχος στον προγραμματισμό, αφού εντός ενός project συμβαίνει ένας πολύ μεγάλος αριθμός αλλαγών, καθώς οι προγραμματιστές ανανεώνουν συνεχώς τον κώδικά και διορθώνουν bugs.

 Πλεονεκτήματα του GitHub

Ας δούμε λίγο πιο αναλυτικά, ορισμένα από τα βασικότερα πλεονεκτήματα ενός εργαλείου όπως το GitHub.

   Πλεονέκτημα #1: Εύκολο project management

Σε ένα project που εμπεριέχει κώδικά, εμπλέκονται τόσο προγραμματιστές όσο και project managers. Η συνεργασία των δύο, κάποιες φορές μπορεί να έχει δυσκολίες. 

Μέσω του GitHub, τα πράγματα γίνονται πιο εύκολα.

  Πλεονέκτημα #2: Αποτελεσματικότητα Ομάδας

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

   Πλεονέκτημα #3: Ασφαλείς Αλλαγές

Μέσω του GitHub, δεν χρειάζεται να συμβαίνουν αλλαγές άμεσα στον επίσημο κώδικα. 

Έτσι, δεν τίθεται σε κίνδυνο το project όποτε συμβαίνει μία διόρθωση.

Τώρα που είδαμε τα βασικότερα πράγματα σχετικά με το GitHub, ας συνοψίσουμε.

 Με Λίγα Λόγια

Με όποια λοιπόν γλώσσα προγραμματισμού και αν ασχοληθείς, είτε για να χτίσεις μία εφαρμογή, είτε για να πραγματοποιήσεις κάποιο άλλο project, το GitHub θα σου φανεί εξαιρετικά χρήσιμο και θα οργανώσει με ασφάλεια την όλη διαδικασία.

Αν λοιπόν η Python είναι μια από τις γλώσσες που επιθυμείς να μάθεις, τότε ανακάλυψε το Python for Data Science Course μας, στο οποίο θα μάθεις όχι μόνο πώς να γράφεις κώδικα σε Python, αλλά και πώς να μαθαίνεις να αποθηκεύεις, να έχεις πρόσβαση και να χειρίζεσαι δεδομένα από λίστες και dictionaries.

Big Blue Data Academy