Η Microsoft κυκλοφόρησε τον τυπικό κώδικα βιβλιοθήκης C ++ που βρίσκεται στο Visual Studio

λογότυπο της Microsoft

Λογότυπο της Microsoft

Στο συνέδριο CppCon 2019 που γιορτάζεται αυτές τις μέρες, Οι εκπρόσωποι της Microsoft βρήκαν την ευκαιρία να κάνουν την ανακοίνωση ανοιχτού κώδικα για την εφαρμογή σας από την C++ Standard Library (γνωστό και ως STL), το οποίο αποτελεί μέρος του κιτ εργαλείων MSVC και του περιβάλλοντος ανάπτυξης του Visual Studio.

Η βιβλιοθήκη υλοποιεί τις δυνατότητες που περιγράφονται στα τρέχοντα πρότυπα C++14 και C++17, και αναπτύσσεται επίσης προς την κατεύθυνση της υποστήριξης του μελλοντικού προτύπου C++20, μετά τις αλλαγές στο τρέχον προσχέδιο εργασίας.

Με τους λόγους για τους οποίους οι άνθρωποι της Microsoft αποφάσισαν να κάνουν αυτή την κίνησηΣτην ανακοίνωση εξηγούν:

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

Καθώς η τυποποίηση της C++ επιταχύνεται και ψηφίζονται μεγαλύτερες δυνατότητες κάθε χρόνο, πιστεύουμε ότι θα είναι σημαντικό να αποδεχόμαστε βασικές λειτουργίες ως συνεισφορές ανοιχτού κώδικα. (Για παράδειγμα, οι βιβλιοθήκες μορφοποίησης και χρονολογικής C++20 είναι πιθανές υποψήφιες.) Θέλουμε επίσης να συνεισφέρουμε πίσω στην κοινότητα της C++, καθιστώντας δυνατή την υλοποίηση των βασικών χαρακτηριστικών μας. (Για παράδειγμα, charconv από C++17)

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

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

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

Σχετικά με την άδεια χρήσης του κώδικα αυτής της βιβλιοθήκης, Προτείνεται ως ανοιχτό με την άδεια Apache 2.0 με εξαιρέσεις για δυαδικά αρχεία που λύνουν το πρόβλημα της συμπερίληψης βιβλιοθηκών χρόνου εκτέλεσης στη σύνθεση των δημιουργούμενων εκτελέσιμων αρχείων.

Για να είμαι ξεκάθαρος, το MSVC STL δεν συγχωνεύεται με το libc++ καθώς εξακολουθούν να είναι ξεχωριστές βιβλιοθήκες.

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

Το MSVC STL διανέμεται υπό την άδεια Apache v2.0 με εξαιρέσεις LLVM, η οποία δημιουργήθηκε πρόσφατα από το έργο Clang/LLVM/libc++.

Οι εξαιρέσεις που προστέθηκαν στην άδεια χρήσης Apache καταργούν την απαίτηση αναφοράς της χρήσης του προϊόντος προέλευσης κατά την παράδοση δυαδικών αρχείων μεταγλωττισμένων με STL στους τελικούς χρήστες.

Αυτή η επιτρεπτή άδεια ανοιχτού κώδικα επιλέχθηκε επειδή έχει την ίδια άδεια με το libc++ που θα διευκολύνει την κοινή χρήση κώδικα μεταξύ βιβλιοθηκών. Για να είμαστε σαφείς, το MSVC STL δεν συγχωνεύεται με το libc++. εξακολουθούν να είναι ξεχωριστές βιβλιοθήκες που υποστηρίζουν διαφορετικές πλατφόρμες με διαφορετικές αναπαραστάσεις δομών δεδομένων.

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

Μεταξύ των περιοχών που Η Microsoft δεν ενδιαφέρεται να αναπτύξει τη μεταφορά σε άλλες πλατφόρμες και την προσθήκη προσαρμοσμένων επεκτάσεων.

Εάν θέλετε να μάθετε περισσότερα σχετικά με τη δήλωση της Microsoft, μπορείτε να τη συμβουλευτείτε Στον ακόλουθο σύνδεσμο.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: AB Internet Networks 2008 SL
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.