Zmogljiv in inovativen spletni okvir

Kratek povzetek


UCMS je mejnik v razvoju spletnih strani

Uvod

UCMS je nov revolucionarni okvir / CMS za razvoj internacionaliziranih spletnih aplikacij za podjetja.

Ena od ključnih funkcij je odličen predlogovni pogon, ki temelji na sintaksi Twig. Ta predlog je popolnoma nov programski jezik, podoben JavaScriptu.

Zaradi moči tega novega šablonskega jezika se lahko stvari programirajo, kar se je prej zdelo popolnoma nemogoče.

Programiranje v obliki JavaScript
  • {% set my_filter = function( number ) {
  • return number & 1
  • }
  • %}
  • <script>
  • var odd_numbers = {{
  • [1, 2, 3].\array_filter(
  • my_filter
  • )
  • }}
  • </script>

Bodi pred časom

Novi šablonski jezik vključuje veliko novih paradigm za programiranje, kot so tuji funkcijski vmesnik, anonimne funkcije, povratni klici, dinamične oznake, funkcijski izrazi, veriženje metod, kuriranje in skriptabilnost.

Zahvaljujoč trdemu delu briljantnega programerja je novi jezik šablonskega jezika vseobsegajoči programski jezik, ki ponuja številne nove rešitve in onemogoča stvari.

To novo tehnologijo lahko dobite samo zato, ker bi potrebovali leta, da bi razvili nekaj podobnega.

Dinamične oznake
  • {% addtag leetspeak as function( words ) {
  • return words.\strtr(
  • 'leet', '1337'
  • )
  • }
  • %}
  • {% leetspeak %}
  • And God said, 'Let there be light'
  • and there was light.
  • {% endleetspeak %}
Leetspeak
  • And God said, 'L37 7h3r3 b3 1igh7'
  • and 7h3r3 was 1igh7.

Programiranje brez omejitev

Vsako funkcijo ali metodo lahko pokličete neposredno iz vaših predlog, ne glede na to, ali so statični ali objektno usmerjeni.

Poleg tega lahko neposredno dostopate do konstante razreda in konstant PHP.

Dostop do katerega koli razreda ali funkcije
  • {% set api = new \Your\Api( ucms.database ) %}
  • {{
  • api.doSomething('Hello World',
  • api::ANY_CONSTANT
  • )
  • }}

Programiranje na višji ravni

Z novim Twigom se lahko sklicujete na katerokoli funkcijo, kot je v JavaScriptu, ne glede na to, ali gre za notranjo funkcijo PHP, metodo Object, statično funkcijo v razredu ali funkcijo predloge.

Poleg tega je lahko vsaka notranja funkcija PHP-ja, katera koli funkcija predloge in katerikoli makro predloge zaklenjena, kot v JavaScriptu, tako da lahko napišete zelo berljivo kodo, ki je lahko razumljiva.

Upoštevajte vsako funkcijo
  • {% set
  • message = "Hello World \u263a",
  • byteLength = \strlen,
  • charLength = \mb_strlen
  • %}
  • Byte length: {{ message.byteLength() }}
  • Char length: {{ message.charLength() }}
Verižite vsako funkcijo
  • Hello {{ 'dlrow'.\strrev().\ucfirst() }}

Turingova popolnost

Novi predlogovni jezik je programski jezik s Turingovo popolnostjo.

Uporabite lahko vse nadzorne strukture in paradigme kot v katerem koli drugem sodobnem programskem jeziku.

Predloge in izrazi so prevedeni v abstraktno drevo sintakse. Prevajalnik lahko zazna in optimizira statične izraze, tako da se na primer 1 + 1 shrani kot 2 v abstraktnem drevesu sintakse.

Ta novi revolucionarni jezik predlog združuje prednosti PHP, JavaScript in sintakse Twig, v novem neverjetnem in vsemogočnem programskem jeziku.

Popolna sposobnost skripta
  • {% script %}
  • function calcPi(accuracy = 1000)
  • {
  • pi = 4
  • hi = 4
  • lo = 3
  • ng = true
  • for(i = 0; i < accuracy; i++)
  • {
  • pi += ng ? -(hi / lo) : hi / lo
  • lo += 2
  • ng = !ng
  • }
  • return pi
  • }
  • {% endscript %}

Prevodi v kontekst

Prevedljive strune je mogoče definirati zelo enostavno in samodejno izvleči kot datoteko .po.

Uporabite lahko tudi kontekst prevoda, izraze, množinske oblike in komentarje prevajalca.

Prevodi s povezavami in oblikovanje lahko ustvarite v kombinaciji z oznako za zmanjšanje vrednosti, možni pa so tudi internacionalizirani dokumenti PDF.

Nikoli ni bilo tako preprosto ustvariti internacionalizirane aplikacije.

SimpleExample.twig
  • {% context 'Views.Application.Example' %}
  • {%- translate -%}
  • Hello world!
  • {%- endtranslate %}
  • {% endcontext %}
Application.po
  • #: Views/Application/SimpleExample.twig:2
  • msgctxt "Views.Application.Example"
  • msgid "Hello world!"
  • msgstr "Hello world!"

Generator PDF s predlogami

Naš sistem ima PDF generator, ki temelji na predlogi, zato je lažje kot kdajkoli prej ustvarjati internacionalizirane poslovne dokumente.

V tem generatorju smo implementirali veliko funkcij, na primer podporo UTF-8 in Unicode, TTF-Fontove, veliko filtrov in uporabo poljubnih enot, kot so em, px, pt, mm, cm, in in%.

In to je le majhen del funkcij PDF generatorja.

Poslovni PDF
  • <?xml version="1.0" encoding="UTF-8" ?>
  • <pdf size="A4">
  • <header>
  • <p font-size="2em">
  • <strong>
  • {%- trans 'Invoice' -%}
  • </strong>
  • </p>
  • </header>
  • <body>
  • <rotate angle="90" x="50%" y="50%">
  • <text x="50%" y="50%">
  • {%- trans 'Order number:' -%}
  • </text>
  • </rotate>
  • </body>
  • </pdf>

Hitrejša od čiste kode php

Veliko pozornosti smo posvetili temu, da se kodi ne doda nepotreben balast.

Jedro UCMS lahko obravnava zahteve brez izvajanja poizvedb baze podatkov. Edine poizvedbe, ki jih je treba izvesti, so poizvedbe vaše aplikacije.

Predloga lahko predpomni ustvarjeno vsebino, kar ima za posledico izjemno hitro obdelavo, ki je še hitrejša od kode PHP.

Če je bila oznaka za predpomnilnik uporabljena pametno, je UCMS tudi na Raspberry Pi hitrejši kot kateri koli drug sistem na pravem spletnem strežniku.

Oznaka predpomnilnika
  • {% cache %}
  • {{
  • yourApi.getItems().renderRows()
  • }}
  • {% endcache %}
Predpomnjena vsebina
  • ...
  • <p>Website was generated in 1 ms</p>
  • </body>
  • </html>

Enostavno upravljanje

Poslovno logiko lahko upravljate kot drevesno strukturo, ki vsebuje vse ustrezne lastnosti, vključno s pravicami dostopa, ki delujejo na enak način kot v datotečnem sistemu.

Drevesni objekt ima številne uporabne metode, ki omogočajo preprosto ustvarjanje navigacije na mestu, kot so meniji, stranske vrstice, navigacijske poti in še veliko več.

Poslovna logika

Želite izvedeti več?

Pogosto zastavljena vprašanja

Ali lahko brezplačno prenesem UCMS?

Razvijanje te programske opreme je vzelo veliko časa, denarja in izkušenj. Te stroške je treba pokriti. Zato je potrebna licenca za uporabo UCMS.

Ali bo UCMS vedno odprtokoden?

Ko se razvojni stroški amortizirajo, lahko objavimo izvorno kodo in dovolimo brezplačno nekomercialno uporabo za posameznike (ne pa tudi za podjetja). Ne pričakujte, da se bo to zgodilo v bližnji prihodnosti, namesto v letu 2021 ali kasneje.

Katere načine plačila lahko uporabljam?

Plačate lahko z bančnim nakazilom ali PayPalom. Plačilo s kreditno kartico je možno tudi prek PayPal-a, sprejemajo se vse glavne kreditne kartice Visa, Mastercard, American Express in Discover.

Kdaj dobim licenčni ključ?

Licenčni ključ in izvorno kodo boste prejeli takoj, ko bo plačilo knjiženo na naš bančni račun. Če plačate s PayPal, bomo licenčni ključ in izvorno kodo poslali z zamudo 3-5 dni po prejemu plačila za zaščito pred goljufijami pri plačilih.

Kakšni so pogoji licenciranja?

Imetnikom licence podelimo neizključno, neprenosljivo, neprenosljivo, večno licenco za uporabo te programske opreme za eno internetno domeno. Te licence za programsko opremo ni mogoče prenesti tretjim osebam ali preprodati.

Ali lahko dobim licenco / podporo po meri?

Pokličite nas in pustite nam govoriti o tem. Ponujamo vam številne dodatne storitve, kot so: nasveti, podpora ali izdelava okostja vaše prijave, če nam to plačate. Vendar pa ne upravljamo ali vzdržujemo nobenih projektov in potrebovali boste lastnega razvijalca, ki bo dolgoročno vodil vaše digitalno poslovanje.

Ali lahko svoj projekt objavim na Githubu?

Ni dovoljeno prenesti ali objaviti izvorne kode UCMS v celoti ali delno. To pomeni, da lahko objavite samo svojo kodo, ki ste jo napisali sami, vendar ne morete objaviti nobenih delov UCMS kode kot odprtokodne kode na githubu ali podobno.

Ali bom dobil račun, če ga kupim?

Seveda, po pošiljanju naročilnice boste prejeli potrditev naročila / predračun (ki je brez davčnega pomena). Končni račun (in pomemben davčni zakon) se po prejemu plačila pošlje skupaj z vašim licenčnim ključem in izvorno kodo.

Ali moram plačati DDV?

Če živite v državi članici Evropske unije, morate plačati tudi DDV, ki velja za vašo državo. Stopnja DDV je odvisna od države članice EU, v kateri živite. Če živite nekje drugje, ni DDV.

Ali so stroški UCMS davčno priznani?

Bodite prepričani, da vprašajte svojega računovodjo! Če ste podjetje, so zelo dobre možnosti, da lahko stroške v celoti ali vsaj delno odbijete od davka. V idealnem primeru vam ni treba ničesar kupiti za licenco UCMS.