Η Microsoft ανοιχτού κώδικα προέρχεται από την τυπική βιβλιοθήκη C++ που περιλαμβάνεται στο Visual Studio

Στο συνέδριο CppCon 2019 που πραγματοποιείται αυτές τις μέρες, η Microsoft ανακοινώθηκε σχετικά με το άνοιγμα του κώδικα της εφαρμογής του της C++ Standard Library (STL, C++ Standard Library), η οποία αποτελεί μέρος της εργαλειοθήκης MSVC και του περιβάλλοντος ανάπτυξης του Visual Studio. Η βιβλιοθήκη υλοποιεί τις δυνατότητες που περιγράφονται στα τρέχοντα πρότυπα C++14 και C++17 και εξελίσσεται επίσης προς την υποστήριξη του μελλοντικού προτύπου C++20, μετά από αλλαγές στο τρέχον προσχέδιο εργασίας. Κώδικας Άνοιξε υπό την άδεια Apache 2.0 με εξαιρέσεις για δυαδικά αρχεία που επιλύουν το πρόβλημα της συμπερίληψης βιβλιοθηκών χρόνου εκτέλεσης στα εκτελέσιμα αρχεία που δημιουργούνται.

Η ανάπτυξη αυτής της βιβλιοθήκης στο μέλλον σχεδιάζεται να πραγματοποιηθεί ως ανοιχτό έργο που αναπτύχθηκε στο GitHub, δεχόμενο αιτήματα έλξης από τρίτους προγραμματιστές με διορθώσεις και εφαρμογή νέων χαρακτηριστικών (η συμμετοχή στην ανάπτυξη απαιτεί την υπογραφή συμφωνίας CLA για τη μεταφορά των δικαιωμάτων ιδιοκτησίας στον μεταβιβαζόμενο κωδικό). Σημειώνεται ότι η μεταφορά της ανάπτυξης STL στο GitHub θα βοηθήσει τους πελάτες της Microsoft να παρακολουθούν την πρόοδο της ανάπτυξης, να πειραματιστούν με τις τελευταίες αλλαγές και να βοηθήσουν στην εξέταση των εισερχόμενων αιτημάτων για προσθήκη καινοτομιών.

Ο ανοιχτός κώδικας θα επιτρέψει επίσης στην κοινότητα να χρησιμοποιεί έτοιμες υλοποιήσεις λειτουργιών από τα νέα πρότυπα σε άλλα έργα. Για παράδειγμα, η άδεια χρήσης κώδικα επιλέγεται για να παρέχει τη δυνατότητα κοινής χρήσης κώδικα με τη βιβλιοθήκη libc++ από το έργο LLVM. Το STL και το libc++ διαφέρουν ως προς την εσωτερική αναπαράσταση των δομών δεδομένων, αλλά εάν είναι επιθυμητό, ​​οι προγραμματιστές του libc++ μπορούν να μεταφέρουν λειτουργίες που ενδιαφέρουν από το STL (για παράδειγμα, charconv) ή και τα δύο έργα μπορούν να αναπτύξουν από κοινού ορισμένες καινοτομίες. Οι εξαιρέσεις που προστέθηκαν στην άδεια χρήσης Apache καταργούν την απαίτηση αναφοράς της χρήσης του αρχικού προϊόντος κατά την παράδοση δυαδικών αρχείων που έχουν μεταγλωττιστεί με το STL στους τελικούς χρήστες.

Οι βασικοί στόχοι του έργου περιλαμβάνουν την πλήρη συμμόρφωση με τις απαιτήσεις προδιαγραφών, τη διασφάλιση υψηλής απόδοσης, την ευκολία χρήσης (εργαλεία εντοπισμού σφαλμάτων, διαγνωστικά, ανίχνευση σφαλμάτων) και συμβατότητα σε επίπεδο πηγαίου κώδικα και ABI με προηγούμενες εκδόσεις του Visual Studio 2015/2017. Μεταξύ των τομέων που η Microsoft δεν ενδιαφέρεται να αναπτύξει είναι η μεταφορά σε άλλες πλατφόρμες και η προσθήκη μη τυπικών επεκτάσεων.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο