Εισαγωγικό Εργαστήριο

Καλώς ήρθατε στο εισαγωγικό εργαστήριο του μαθήματος Δομές Δεδομένων και Τεχνικές Προγραμματισμού! Για οποιαδήποτε απορία προκύψει κατα την διάρκεια του εργαστηρίου, επικοινωνήστε με τον υπεύθυνο ή κάποιον απο τους βοηθούς. Καλή αρχή!

1. Κατεβάστε τον κώδικα του εργαστηρίου

Ο κώδικας κάθε εργαστηρίου δίνεται μέσω Git. Για να τον κατεβάσετε:

  1. Αν δεν έχετε ήδη, δημιουργήστε account στο https://github.com. Μπορείτε να χρησιμοποιήσετε όποιο username και email επιθυμείτε.

  2. Επισκεφτείτε τον παρακάτω σύνδεσμο: https://classroom.github.com/a/KWnPEowW

    • θα σας ζητηθεί να αντιστοιχήσετε το github account σας με το sdiXXXXXX account
    • ΠΡΟΣΟΧΗ: επιλέξτε το σωστό sdiXXXXXX account
      • Αν δεν υπάρχει επικοινωνήστε με τον υπεύθυνο του εργαστηρίου (όχι “skip”)
    • ΠΡΟΣΟΧΗ: ελέγξτε ξανά ότι επιλέγετε το σωστό sdiΧΧΧΧΧΧX account
      • Αν πάνω από 3 άτομα επιλέξουν λάθος, χάνουν μισή μονάδα στο μάθημα (χωρίς πλάκα, δεν είμαστε στο δημοτικό)
  3. Αφού ολοκληρώσετε το προηγούμενο βήμα, θα βρείτε το προσωπικό σας repository στο σύνδεσμο

    https://github.com/chatziko-k08/2022-lab-intro-<username>
    

    όπου <username> το username σας στο github.

2. Ρύθμιση του VS Code

  • Αν είστε στα Linux της σχολής (όχι σε προσωπικό υπολογιστή):

    • Κάνετε copy την παρακάτω εντολή
      curl https://k08.chatzi.org/vscode/config.sh | bash
      
    • Κλείστε το Firefox
    • Εκτελέστε (με paste) την εντολή στο τερματικό
  • Αν είστε σε προσωπικό υπολογιστή

    • Ακολουθήστε τις οδηγίες εγκατάστασης του VS Code που υπάρχουν εδώ
  • Συνδέστε το VS Code με τον github account σας. Πατήστε το εικονίδιο με το προσωπάκι πάνω από το γρανάζι στην αριστερή στήλη εικονιδίων, επιλέξτε Turn on Settings Sync, στη συνέχεια Sign in to Github και από εκεί και πέρα μην επιλέξετε Cancel στα παράθυρα που θα εμφανίζονται.

3. Χρήση του VS Code

  1. Κατεβάστε το repository τοπικά τρέχοντας
    git clone https://github.com/chatziko-k08/2022-lab-intro-<username> 
    

    Αυτό θα δημιουργήσει ένα directory 2022-lab-intro-<username> με τον κώδικα του εργαστηρίου

  2. Ανοίξτε το directory 2022-lab-intro-<username> με το VS Code (File / Open Folder)
  3. Ανοίξτε κάποια από τα αρχεία, εξοικειωθείτε με το πρόγραμμα
  4. Κάντε compile το πρόγραμμα welcome από το τερματικό του VS Code
    cd programs/welcome
    make
    make run
    
  5. Εκτελέστε το πρόγραμμα από το menu Terminal / Run Build Task
  6. Εκτελέστε την ίδια λειτουργία πατώντας Ctrl-Shift-B
    • Δοκιμάστε επίσης να κάνετε debug με F5

4. Commit και push

  1. Ρυθμίστε στο git το όνομα και το email σας (το ίδιο με αυτό του github account) εκτελώντας τα παρακάτω στο τερματικό του VS Code:

    git config --global user.name "Your Name"
    git config --global user.email "your-github@email.com"
    
  2. Τροποποιήστε το αρχείο programs/welcome/welcome.c (οποιαδήποτε αλλαγή θέλετε)

    • Κάντε compile και εκτελέστε το τροποποιημένο πρόγραμμα
  3. Από την περιοχή Source Control του VS Code, κάντε commit το τροποποιημένο αρχείο

  4. Από το ... menu στην ίδια περιοχή επιλέξτε Push

    • ελέγξτε στο github.com ότι το repository περιέχει τις αλλαγές σας

Η χρήση του git μπορεί να γίνει εξίσου εύκολα από το τερματικό:

  1. Δημιουργήστε ένα αρχείο programs/test/test.c (με οποιοδήποτε περιεχόμενο)
  2. Κάντε το commit και push από το τερματικό του VS Code
    Προσοχή: νέα αρχεία πρέπει να τα κάνουμε add πριν το πρώτο commit.
    cd programs/test
    git add test.c
    git commit test.c
    git push
    

    Ελέγξτε στο github.com ότι το repository περιέχει τις αλλαγές σας.

5. sample-project

Αν σας έχει μείνει χρόνος, κάντε git clone το παρακάτω repository, το οποίο περιέχει ένα παράδειγμα δομής ενός C project (για χρήση στις πρώτες 2 ενότητες του μαθήματος). Επιδεικνύει modules, Makefiles και tests, καθώς και τη χρήση των ADTs που διδάσκονται στο μάθημα.

Εξετάστε τη δομή και τα περιεχόμενά του, και δοκιμάστε να εκτελέσετε κάποια από τα προγράμματα που περιέχει. (Είναι φυσιολογικό αν κάποια πράγματα για την ώρα σας φαίνονται περίεργα!)

Παράδοση

Το εργαστήριο αυτό είναι εισαγωγικό, δεν χρειάζεται να παραδώσετε κάτι. Στα επόμενα εργαστήρια, θα παραδίδετε τις ασκήσεις κάνοντας commit και push στο github, όπως ήδη μάθατε.