AtYourService CY : Create a REST API - Χριστοδούλου, Δημήτρης (Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής, Σχολή Μηχανικής και Τεχνολογίας, Τεχνολογικό Πανεπιστήμιο Κύπρου, 2016)
Γενικά μιλώντας, ένα API είναι μία συλλογή από ρουτίνες, πρωτόκολλα και άλλα εργαλεία τα οποία χρησιμοποιούνται για την δημιουργία μοντέρνων εφαρμογών. Στο παγκόσμιο Ιστό είναι ευρέως διαδεδομένα τα WEB APIS, τα οποία χρησιμοποιούνται για την επικοινωνία μεταξύ των ιστοσελίδων με τρόπο ο οποίο μοιάζει πού με ένα κανονικό ανθρώπινο διάλογο. Οι υπηρεσίες ιστού, χρησιμοποιούν τα APIs για ανταλλαγή δεδομένων μεταξύ τους με εύκολο και αποδοτικό τρόπο. Στις μέρες μας παρουσιάζεται μία τεράστια και ταχεία εξέλιξη του διαδικτύου καθώς και των διαφόρων φορητών συσκευών όπως smartphones και tablets, smartwatches. Παράλληλα με την εξέλιξη αυτή παρουσιάζεται μεγάλη και συνεχώς αυξανόμενη χρήση των διαφόρων μέσων κοινωνικής δικτύωσης εντάσσοντας στην ζωή μας όλο και περισσότερο την τεχνολογία και καθιστώντας την σαν ένα αναπόσπαστο πλέον κομμάτι της καθημερινότητας. Η ανάγκη ύπαρξης ενός διαύλου επικοινωνίας, καθιστούν μεγάλη την αναγκαιότητα για χρήση της ανερχόμενης τεχνολογίας των APIs. Η χρησιμοποίηση των APIs, συναντιέται σε πολλές και μεγάλες κατηγορίες της τεχνολογίας τόσο σε ανάπτυξη εφαρμογών, τόσο και στην αμφίδρομη επικοινωνία μεταξύ τους. Τα τελευταία χρόνια πολλές εφαρμογές δημιουργήθηκαν χρησιμοποιώντας δικά τους ή εμπορικά (αγορασμένα) APIs. Πολλές από αυτές τις εφαρμογές ανήκουν στης κατηγορία των Web applications, και αφορούν κυρίως social media, όπως είναι το Facebook, Twitter κλπ. Ακόμα ένα είδος, είναι και τα λειτουργικά συστήματα, που μέσω του δικού τους API, προσφέρουν την δυνατότητα στους developers, να αναπτύξουν εφαρμογές με τεράστιες δυνατότητες, οι οποίες να είναι συμβατές με πολλές συσκευές, χωρίς να πρέπει να υλοποιήσουν το σύστημα ξανά από την αρχή. Με τη χρήση τεχνολογιών ΑΡΙ, η ανάπτυξη των εφαρμογών και η επικοινωνία μεταξυ τους, έγινε πλέον συνήθειο, ξεπερνώντας τον παλιομοδίτικο τρόπο ανάπτυξης, ο οποίος αν ήθελες να αναπτύξεις το ίδιο σύστημα σε 3 για παράδειγμα πλατφόρμες, τότε θα έπρεπε να το υλοποιήσεις αντίστοιχα 3 φορές, παρόλο που θα έκαναν ακριβώς την ίδια λειτουργία.
Keywords: ΑΡΙ; Web applications