ForgeΤεκμηρίωση
el

Τεκμηρίωση

Συμβάσεις Total.js 5 για βοηθούς προγραμματισμού

Total.js 5 · total5@0.0.19 aiconventionsguidelinescontextnativeactions Εκτελέστηκε με το Total.js 5

Χρησιμοποιήστε αυτόν τον οδηγό μαζί με τις κατευθυντήριες γραμμές του Total.js και το Total.js AI Context. Τα ελεγμένα commits τους καταγράφονται στο ai-sources.json. Είναι διαφορετικά είδη τεκμηρίων: οι οδηγίες ύφους περιγράφουν συμβάσεις· η συμπεριφορά κατά την εκτέλεση πρέπει να συμφωνεί με το εγκατεστημένο framework και ένα εκτελέσιμο παράδειγμα. Αυτή η σελίδα δεν πιστοποιεί κάθε παράδειγμα σε κανένα από τα εξωτερικά αποθετήρια.

Κρατήστε τον κώδικα της εφαρμογής εγγενή

Αφού το bootstrap φορτώσει το total5, το runtime εκθέτει τα καθολικά του και φορτώνει τα αρχεία της εφαρμογής από τους καταλόγους του framework. Χρησιμοποιείτε τα MAIN, FUNC, MODS, CONF και PATH σύμφωνα με τους τεκμηριωμένους ρόλους τους. Προτιμήστε μια υπάρχουσα δυνατότητα του framework πριν προσθέσετε αντικαταστάτη ή εξάρτηση. Μην εισάγετε τους ελεγκτές και τους ορισμούς της εφαρμογής ο ένας στον άλλο απλώς για να μιμηθείτε τη δομή project άλλου framework. Τα αυτόνομα scripts και οι πραγματικά εξωτερικές εξαρτήσεις έχουν διαφορετικό όριο εισαγωγής.

Ακολουθήστε το ύφος του οικοσυστήματος στον νέο κώδικα της εφαρμογής: ονόματα αρχείων με πεζά, tabs, ερωτηματικά, σύντομες συμβολοσειρές σε μονά εισαγωγικά και κατάλληλες δεσμεύσεις var ή let μέσα στις μεθόδους. Οι εισαγωγές σε επίπεδο module μπορούν να χρησιμοποιούν const και ονόματα modules με κεφαλαίο αρχικό. Κρατήστε τα ονόματα συνεπή σε όλη την εφαρμογή. Για λεπτομέρειες και εξαιρέσεις, χρησιμοποιήστε τις συνδεδεμένες οδηγίες και τις πραγματικές συμβάσεις του project.

Ξεχωρίστε τα API και τα συμφραζόμενά τους

  • Ένας κανονικός ελεγκτής HTTP λαμβάνει $· στείλτε JSON με $.json() και ορίστε την κατάσταση της απόκρισης μέσω $.response.status.
  • Μια ενέργεια λαμβάνει το συμφραζόμενο ενέργειας $ και το επικυρωμένο model· επιστρέψτε μέσω $.callback(). Ο ελεγκτής HTTP, όταν υπάρχει, είναι το $.controller.
  • Στο Total.js 5, το NEWSCHEMA(name, '...') δημιουργεί ένα επαναχρησιμοποιήσιμο συμπαγές σχήμα. Η μορφή του με callback ομαδοποιεί ενέργειες με schema.action(). Το παράδειγμα του Total.js 4 με schema.define() / schema.setSave() δεν πρέπει να παρουσιάζεται ως εναλλάξιμο API του Total.js 5.
  • Προτιμήστε σταθερά, ρητά δημόσια ID ενεργειών όπως Contacts|create για νέες απομονωμένες λειτουργίες. Οι υπάρχουσες ομαδοποιημένες ενέργειες μπορεί να έχουν ID όπως Contacts/create· σεβαστείτε τα ID και τις διαδρομές που δηλώνει η εφαρμογή αντί να τα μετονομάζετε τυφλά.
  • Στο API Routing, ξεχωρίστε την εξουσιοδότηση στη διαδρομή από το δημόσιο όνομα της λειτουργίας και τον φάκελο { schema, data }. Οι συνηθισμένες διαδρομές HTTP υποστηρίζονται επίσης· μην αναγκάζετε κάθε απόκριση JSON να περνά από ενέργεια.
  • Αντιμετωπίστε την ενσωμάτωση βάσης δεδομένων, την πολιτική ταυτοποίησης και την εξουσιοδότηση ως απαιτήσεις της εφαρμογής. Το ότι το framework έχει μια δυνατότητα δεν σημαίνει ότι μια εφαρμογή παραγωγής είναι αυτόματα ρυθμισμένη ή ασφαλής.

Το AI Context περιέχει παραδείγματα με συμβάσεις ενεργειών τόσο απομονωμένων όσο και ομαδοποιημένων. Το αποθετήριο οδηγιών περιλαμβάνει και παλαιότερα παραδείγματα σχημάτων. Συμφιλιώστε κάθε παράδειγμα με την έκδοσή του και το runtime αντί να αντιγράφετε κάθε απόσπασμα σε ένα συμφραζόμενο. Το εκτελέσιμο παράδειγμα παρακάτω ελέγχει ένα σταθερό ID ενέργειας και έναν άμεσο ελεγκτή με το εγκατεστημένο πακέτο Total.js 5.

definitions/contacts.js
NEWACTION('Contacts|create', {
	input: '*name:String',
	action: function($, model) {
		$.callback({ id: UID(), name: model.name });
	}
});
controllers/contacts.js
exports.install = function() {
	ROUTE('GET /hello/', hello);
	ROUTE('POST /contacts/ --> *Contacts|create');
};

function hello($) {
	$.json({ hello: 'world' });
}

Πριν παραδώσετε παραγόμενο κώδικα σε κάποιον

Εντοπίστε τις εγκατεστημένες εκδόσεις του framework και του frontend, διαβάστε τις αντίστοιχες σελίδες του Forge, εκτελέστε το σχετικό παράδειγμα και δηλώστε τι παραμένει αδοκίμαστο. Ένας έλεγχος καθολικών ονομάτων είναι χρήσιμη ανατροφοδότηση αλλά δεν υποκαθιστά την εκτέλεση κώδικα. Διατηρήστε την αναθεώρηση πηγής, το συμβόλαιο εισόδου και τις συνθήκες δοκιμής όταν δημοσιεύετε παραδείγματα.

Η Επιλογή του Total.js πραγματεύεται αποφάσεις αρχιτεκτονικής. Το σύντομο συμφραζόμενο είναι αφετηρία για έναν βοηθό στον οποίο το Forge δίνεται ρητά ως πηγή· η παροχή του διαφέρει από τη μέτρηση των αυθόρμητων συστάσεων ενός μοντέλου.