XHPy

Screenshot Λογισμικό:
XHPy
Στοιχεία Λογισμικού:
Εκδοχή: 0.83
Ανεβάστε ημερομηνία: 20 Feb 15
Προγραμματιστής: Evan Stratford
Άδεια: Δωρεάν
Δημοτικότητα: 0

Rating: 3.0/5 (Total Votes: 1)

XHPy επεκτείνει σύνταξη της Python, έτσι ώστε τα θραύσματα XML είναι έγκυρες εκφράσεις Python.
Πλεονεκτήματα
& Nbsp? * Απλότητα: γράψτε λογική UI σε ένα απλό, εκφραστική σύνταξη χωρίς την ανάγκη για εξωτερικές πρότυπα ή τις γλώσσες υφής.
& Nbsp? * Ευελιξία: εκφράσεις χρήση Python ελεύθερα εντός XHPy ετικέτες, και αντιστρόφως.
& Nbsp? * Ασφάλεια: όφελος από την αυτόματη διαφυγή του κειμένου μέσα XHPy ετικέτες.
& Nbsp? * Επαναχρησιμοποίηση: κατασκευή επαναχρησιμοποιήσιμα στοιχεία από υποκλάσεις: x: στοιχείο.
Ένα παράδειγμα
Σε bar.py:
από xhpy.init register_xhpy_module εισαγωγής
register_xhpy_module ('foo')
foo εισαγωγής
Σε foo.py:
από xhpy.pylib εισαγωγής *
κατηγορία: ui: foo (: x: στοιχείο):
& Nbsp? Κατάλογος χαρακτηριστικό μπαρ
& Nbsp? Κατηγορία% της ροής
& Nbsp? Def καθιστούν (αυτο):
& Nbsp? Α =


    & Nbsp? Για β σε self.getAttribute («μπάρα»):
    & Nbsp? A.appendChild (
  • {b}
  • )
    & Nbsp? Επιστρέψει ένα
    Εκτύπωση

    Μπορούμε τώρα να τρέξει bar.py ως ένα κανονικό σενάριο Python:
    $ Python bar.py
    • 0
    • 1
    • 2

    Θερμά Συγχαρητήρια! Απλά έγραψε το πρώτο σας απόσπασμα του XHPy.
    Σύνταξη
    XHPy προσθέτει κάποια νέα σύνταξη στην Python. Γραμμή προς γραμμή χρόνου επανάληψη!
    από xhpy.init register_xhpy_module εισαγωγής
    Αυτό προετοιμάζει XHPy και σας επιτρέπει να εγγραφείτε ενότητες που πρέπει να ερμηνευθεί ως XHPy.
    register_xhpy_module ('foo')
    Τώρα η μονάδα foo σε foo.py θα πρέπει να ερμηνευθεί ως XHPy όταν εισάγονται. Αν foo ήταν ένα πακέτο, όλα τα υποστοιχεία του θα μπορούσε επίσης να εγγραφεί? Αυτό είναι χρήσιμο για την καταγραφή των βιβλιοθηκών UI.
    foo εισαγωγής
    Για να χρησιμοποιήσετε πραγματικά XHPy, ωστόσο, θα θελήσετε πιθανώς τον πυρήνα της βιβλιοθήκης:
    από xhpy.pylib εισαγωγής *
    Τώρα έχετε πρόσβαση σε όλες τις πρότυπο HTML 4.0 στοιχεία, η: x: στοιχείο της βασικής κλάσης (αυτό είναι ό, τι οικοδομήσουμε προσαρμοσμένα στοιχεία στην κορυφή του!), Καθώς και ορισμένα βοηθητικά προγράμματα.
    κατηγορία: ui: foo (: x: στοιχείο):
    Κάνοντας νέα στοιχεία είναι εύκολη: απλά υποκατηγορία: x: στοιχείο. Για την τάξη σας συστατικό για να καταχωρηθεί, θα πρέπει να ξεκινήσει με: - αυτό ξεχωρίζει σαφώς τα συστατικά σας από τις συνήθεις κλάσεις Python.
    αποδίδουν λίστα μπαρ
    Αυτό είναι ένα χαρακτηριστικό δήλωση, πράγμα που σημαίνει ότι: ui: foo επιτρέπει μπαρ αποδίδει σε ετικέτες. Σημειώστε το

    αργότερα - όπως XHP, XHPy χρησιμοποιεί XML συντακτικό χαρακτηριστικό.
    Κατηγορία% της ροής
    Αυτή είναι μια δήλωση κατηγορία -: ui: foo είναι μέρος της κατηγορίας ροής%. Κατηγορίες είναι κυρίως χρήσιμη ως τρόπος προσδιορισμού στοιχείων που είναι παρόμοια χωρίς τη χρήση κληρονομικότητα? για παράδειγμα, το <α> ετικέτα σε pylib.html έχει
    παιδιά (PCDATA | ροής%) *
    δείχνει ότι τα παιδιά του θα πρέπει είτε να περιέχει κείμενο ή να είναι της κατηγορίας ροής%. (Έτσι, μπορούμε να βάλουμε ! Εσωτερικό <α>)
    def καθιστούν (αυτο):
    Όταν εκτυπώνετε ένα: x: στοιχείο (ή καλέστε str σε αυτό), το καθιστούν () γίνεται επίκληση μέθοδος? Αυτό είναι όπου μπορείτε να βάλετε λογική UI σας.
    α =

      για το Β στο self.getAttribute («μπάρα»):
      & Nbsp? A.appendChild (
    • {b}
    • )
      επιστρέψει ένα
      Εδώ, είναι ένα λεπτό περιτύλιγμα γύρω
        το οποίο σας επιτρέπει να δημιουργήσετε μια μη διατεταγμένη λίστα από μια λίστα Python. Βασικά στοιχεία HTML, όπως
        • καθίστανται αυτομάτως - με τη διαφορά ότι, στην XHPy, μπορείτε να χρησιμοποιήσετε την Python εκφράσεις μέσα ετικετών, έτσι ώστε να
          {B}
          αντικαθίσταται από την τιμή του b. Σημειώστε τη χρήση του getAttribute () και appendChild ():
          self.getAttribute («μπάρα»)
          καλεί την αξία του χαρακτηριστικού μπαρ (σε αυτή την περίπτωση, το εύρος (3)), ενώ
          a.appendChild (
        • {b}
        • )
          προσθέτει
        • {b}
        • ως παιδί του α =
            .
            XHPy βασίζεται σε μεγάλο βαθμό στα ανοικτά XHP? Για περισσότερες λεπτομέρειες σχετικά με το τελευταίο, δείτε το `XHP wiki & Nbsp? * Δεν υπάρχουν ερωτηματικά?
            & Nbsp? * Τα ονόματα της κατηγορίας XHPy μπορεί να χρησιμοποιηθεί οπουδήποτε κανονικές τάξεις Python μπορεί να?
            & Nbsp? * Ετικέτες XHPy αγνοούν την εσωτερική κενά, αλλά πρέπει να υπακούουν στο εξωτερικό βαθούλωμα και συνέχισης της γραμμής κανόνες.
            Περισσότερα για το τελευταίο σημείο:
            def foo (href):
            & Nbsp? Επιστροφή
            μπαρ def (href):
            & Nbsp? Επιστρέψει
            & Nbsp?
            είναι έγκυρη, ενώ
            def foo (href):
            & Nbsp? Επιστρέψει
            & Nbsp?
            & Nbsp?

            δεν είναι, καθώς εισάγει ένα επιπλέον dedent μετά .
            Πώς λειτουργεί
            Όταν εσύ
            xhpy.init εισαγωγής
            XHPy εγκαθιστά ένα άγκιστρο εισαγωγής. Αυτό το άγκιστρο παγίδες μετέπειτα δηλώσεις εισαγωγής, τη λειτουργία τους μέσα από μια προ-επεξεργαστή που αναλύει ένα υπερσύνολο της Python. Αυτό μεταφράζεται προεπεξεργαστή XHPy ετικέτες και ονόματα τάξη σε έγκυρες Python, τότε εκτελεί το μεταφρασμένο κώδικα στην ενότητα πεδίο.
            Αυτό είναι παρόμοιο με το πώς XHP λειτουργεί, εκτός από:
            & Nbsp? * Με, π.χ., pythonenv, μπορείτε πάντα να χρησιμοποιήσετε XHPy ακόμη και χωρίς πρόσβαση σε καταλόγους εγκατάστασης του πακέτου Python σε όλο το σύστημα?
            . & Nbsp? * Από προεπιλογή, Python συγκεντρώνει bytecode .pyc αρχεία από μονάδες σας, έτσι ώστε η προεπεξεργασία χρειάζεται να γίνει μόνο μία φορά, όταν μια μονάδα εισάγεται για πρώτη φορά

            Απαιτήσεις :

            • Python

Σχόλια για XHPy

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!