Moćan i inovativan web okvir

Kratak sažetak


UCMS predstavlja prekretnicu u razvoju weba

Uvod

UCMS je novi revolucionarni PHP okvir / CMS za razvoj internacionalnih poslovnih web aplikacija.

Jedna od ključnih karakteristika je strašan šablon koji se temelji na sintaksi Twig-a. Ovaj predložak je potpuno novi programski jezik sličan JavaScriptu.

Zbog snage ovog novog jezika šablona, ​​stvari se mogu programirati da se ranije činilo potpuno nemogućim.

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

Budite ispred vremena

Novi šablonski jezik uključuje mnoge nove paradigme programiranja, kao što je sučelje stranih funkcija, anonimne funkcije, povratne pozive, dinamičke oznake, izrazi funkcija, ulančavanje metoda, currying i scriptability.

Zahvaljujući napornom radu sjajnog programera, novi šablonski jezik je svemogući programski jezik koji nudi mnoga nova rješenja i čini nemogućim stvari mogućim.

Tu novu tehnologiju možete dobiti samo zato što bi trebale godine da se razvije nešto slično.

Dinamičke 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 bez ograničenja

Možete pozvati bilo koju funkciju ili metod direktno iz vaših predložaka, bez obzira da li su statični ili objektno orijentirani.

Možete čak i direktno pristupiti svojim konstantama klase i PHP konstantama.

Pristupite bilo kojoj klasi ili funkciji
  • {% set api = new \Your\Api( ucms.database ) %}
  • {{
  • api.doSomething('Hello World',
  • api::ANY_CONSTANT
  • )
  • }}

Programiranje na višem nivou

Sa novim Twig-om možete referencirati bilo koju funkciju kao što je JavaScript, bez obzira da li je to PHP-interna funkcija, Object metoda, statička funkcija u klasi ili funkcija šablona.

Pored toga, bilo koja unutrašnja funkcija PHP-a, bilo koja funkcija šablona i bilo koji makronaredba šablona mogu biti lančani kao u JavaScriptu, tako da možete napisati vrlo čitljiv kod koji je lako razumljiv.

Referenca bilo koje funkcije
  • {% set
  • message = "Hello World \u263a",
  • byteLength = \strlen,
  • charLength = \mb_strlen
  • %}
  • Byte length: {{ message.byteLength() }}
  • Char length: {{ message.charLength() }}
Lanac bilo koje funkcije
  • Hello {{ 'dlrow'.\strrev().\ucfirst() }}

Turingova kompletnost

Novi šablonski jezik je programski jezik sa Turingovom cjelovitošću.

Možete koristiti sve kontrolne strukture i paradigme kao u bilo kom drugom modernom programskom jeziku.

Predlošci i izrazi se kompajliraju u apstraktno stablo sintakse. Kompajler može detektovati i optimizirati statičke izraze tako da se, na primjer, 1 + 1 pohrani kao 2 u stablu apstraktne sintakse.

Ovaj novi revolucionarni šablonski jezik kombinuje prednosti PHP, JavaScript i Twig sintakse, u novom neverovatnom i svemogućem programskom jeziku.

Potpuna sposobnost skripte
  • {% 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 %}

Prijevodi sa kontekstom

Prevedivi nizovi mogu se definirati vrlo jednostavno i automatski se ekstrahiraju kao .po datoteka.

Kontekst prevoda, izrazi, formulari za množinu i komentari prevodioca takođe se mogu koristiti.

Prevodi sa linkovima i formatiranjem mogu se kreirati u kombinaciji sa oznakom za smanjenje, a moguća su i internacionalizirana PDF dokumenta.

Nikada nije bilo lako kreirati internacionalizovane 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-ova na temelju predložaka

Naš sistem ima PDF generator baziran na šablonu koji olakšava kreiranje internacionaliziranih poslovnih dokumenata.

Mi smo implementirali mnogo mogućnosti u ovom generatoru, na primer, UTF-8 i Unicode podršku, TTF-Fontove, mnoge filtere i upotrebu proizvoljnih jedinica kao što su em, px, pt, mm, cm, in i%.

A to je samo mali dio funkcija PDF generatora.

Business 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>

Brži od čistog php koda

Velika pažnja posvećena je tome da se kodu ne doda nepotreban balast.

UCMS kernel može obraditi zahtjeve bez izvršavanja upita baze podataka. Jedini upiti koji se moraju izvršiti su oni koji se nalaze u vašoj aplikaciji.

Predložak može keširati generirani sadržaj, što rezultira izuzetno brzom obradom koja je čak i brža od PHP koda.

Ako je oznaka keša mudro korišćena, onda je UCMS čak i na Raspberry Pi bržem od bilo kog drugog sistema na pravom web serveru.

Cache tag
  • {% cache %}
  • {{
  • yourApi.getItems().renderRows()
  • }}
  • {% endcache %}
Cached content
  • ...
  • <p>Website was generated in 1 ms</p>
  • </body>
  • </html>

Jednostavno upravljanje

Možete upravljati poslovnom logikom kao strukturu stabla koja sadrži sve relevantne osobine, uključujući prava pristupa koja funkcioniraju na isti način kao u datotečnom sustavu.

Objekt stabla ima brojne korisne metode koje olakšavaju generiranje navigacije na lokaciji kao što su izbornici, bočne trake, navigacijske staze i još mnogo toga.

Business Logic

Želite li znati više?

Često Postavljena Pitanja

Mogu li besplatno preuzeti UCMS?

Razvijanje ovog softvera je oduzelo mnogo vremena, novca i iskustva. Ove troškove treba pokriti. Iz tog razloga, potrebna je licenca za korištenje UCMS-a.

Da li će UCMS biti otvoreni izvor?

Nakon što se troškovi razvoja amortizuju, možemo objaviti izvorni kod i omogućiti besplatnu nekomercijalnu upotrebu za pojedince (ali ne i za kompanije). Ne treba očekivati ​​da će se to dogoditi u bliskoj budućnosti, prije 2021. ili kasnije.

Koje načine plaćanja mogu koristiti?

Možete platiti putem bankovnog transfera ili PayPal-a. Plaćanje kreditnom karticom je takođe moguće putem PayPala, prihvaćene su sve glavne kreditne kartice od Visa, Mastercard, American Express i Discover.

Kada ću dobiti licencni ključ?

Dobićete licencni ključ i izvorni kod čim se uplata izvrši na naš bankovni račun. Ako platite sa PayPal-om, poslat ćemo vam licencni ključ i izvorni kod sa zakašnjenjem od 3-5 dana nakon primitka uplate kako bi nas zaštitili od prijevare plaćanja.

Koji su uslovi licenciranja?

Imateljima licenci odobravamo ne-ekskluzivnu, neprenosivu, neprodivu, trajnu licencu za korištenje ovog softvera za jedan internet domen. Ova softverska licenca se ne može prenijeti trećim stranama ili preprodati.

Mogu li dobiti prilagođenu licencu / podršku?

Nazovite nas i pustite nas da pričamo o tome. Nudimo mnoge dodatne usluge, kao što su: Savjetovanje, podrška ili kreiranje skeleta vaše aplikacije ako nam za to platite. Međutim, mi ne upravljamo niti održavamo bilo koje projekte, i trebat će vam vlastiti razvojni programer za vođenje vašeg digitalnog poslovanja na duži rok.

Mogu li objaviti svoj projekt na Githubu?

Nije dozvoljeno prenositi ili objavljivati ​​UCMS izvorni kod u cijelosti ili djelomično. To znači da možete objaviti samo svoj vlastiti kod koji ste sami napisali, ali ne možete objaviti bilo koji dio UCMS koda kao open source na github ili slično.

Da li ću dobiti račun ako kupim?

Naravno, nakon slanja obrasca za narudžbu dobićete potvrdu narudžbe / pro forma fakturu (koja nije relevantna za porez). Konačna (i značajan poreski zakon) faktura se šalje zajedno sa vašim licencnim ključem i izvornim kodom nakon prijema plaćanja.

Da li moram da platim PDV?

Ako živite u državi članici Evropske unije, morate platiti i PDV koji se primjenjuje u vašoj zemlji. Stopa PDV-a zavisi od zemlje članice EU u kojoj živite. Ako živite negdje drugdje, nema PDV-a.

Da li UCMS košta porez koji se odbija od poreza?

Obavezno pitajte svog računovođu! Ako ste kompanija, šanse su vrlo dobre da možete u potpunosti ili barem djelimično oduzeti porez. U idealnom slučaju, ne košta vam ništa da kupite UCMS licencu.