Магутны і інавацыйны вэб - фреймворк

кароткае рэзюмэ


UCMS з'яўляецца важнай вяхой у вэб - распрацоўцы

ўвядзенне

UCMS ўяўляе сабой новы рэвалюцыйны PHP рамкі / CMS для распрацоўкі шматмоўных карпаратыўных вэб - прыкладанняў.

Адной з ключавых асаблівасцяў з'яўляецца дзіўным шаблонны рухавічок, які заснаваны на сінтаксісе Twig. Гэты шаблон рухавік зусім новы JavaScript-падобны мова праграмавання.

Дзякуючы сіле гэтага новага мовы шаблонаў, рэчы могуць быць запраграмаваныя, што раней здавалася немагчымым.

JavaScript-праграмаванне, як
  • {% set my_filter = function( number ) {
  • return number & 1
  • }
  • %}
  • <script>
  • var odd_numbers = {{
  • [1, 2, 3].\array_filter(
  • my_filter
  • )
  • }}
  • </script>

Будзьце наперадзе часоў

Новая мова шаблон ўключае ў сябе мноства новых парадыгмаў праграмавання, такіх як знешняя функцыя інтэрфейсу, ананімныя функцыі, зваротныя выклікі, дынамічныя тэгі, функцыянальныя выразы, метад ланцужкі, вырабы і стварэння сцэнарыяў.

Дзякуючы карпатлівай працы геніяльнага праграміста, новую мову шаблону з'яўляецца усемагутны мова праграмавання, які прапануе мноства новых рашэнняў і робіць немагчымае магчымым.

Вы можаце атрымаць толькі гэтую новую тэхналогію тут, таму што гэта заняло б гады, каб распрацаваць нешта падобнае.

дынамічныя тэгі
  • {% 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.

Праграмаванне без абмежаванняў

Вы можаце выклікаць любую функцыю або метад непасрэдна з шаблонаў, незалежна ад таго, калі статычны або аб'ектна-арыентаваным.

І вы нават можаце атрымаць доступ да канстанты класа і PHP канстанты непасрэдна.

Доступ любога класа або функцыі
  • {% set api = new \Your\Api( ucms.database ) %}
  • {{
  • api.doSomething('Hello World',
  • api::ANY_CONSTANT
  • )
  • }}

Праграмаванне на больш высокім узроўні

З новым Twig вы можаце спасылацца на якую-небудзь функцыю, як у JavaScript, незалежна ад таго, калі гэта PHP-функцыя ўнутранага, метад аб'екта, статычная функцыя ў класе або функцыі шаблону.

Акрамя таго, любая ўнутраная функцыя PHP, любы шаблон функцыі і любы шаблон макрас можа быць прыкаваны як у JavaScript, так што вы можаце напісаць вельмі чытаны код, які лёгка зразумець.

Спасылачныя любую функцыю
  • {% set
  • message = "Hello World \u263a",
  • byteLength = \strlen,
  • charLength = \mb_strlen
  • %}
  • Byte length: {{ message.byteLength() }}
  • Char length: {{ message.charLength() }}
Ланцуг любой функцыі
  • Hello {{ 'dlrow'.\strrev().\ucfirst() }}

Цьюрынга паўната

Новая мова шаблону з'яўляецца мовай праграмавання з Цьюрынга паўнаты.

Вы можаце выкарыстоўваць усе кіраўнікі структуры і парадыгмы, як і ў любым іншым сучаснай мове праграмавання.

Шаблоны і выразы кампілююцца ў абстрактнае сінтаксічнае дрэва. Кампілятар можа выявіць і аптымізаваць статычныя выразы, так што, напрыклад, 1 + - захоўваюцца ў выглядзе 2 ў абстрактным сінтаксічным дрэве.

Гэты новы рэвалюцыйны мова шаблону спалучае ў сабе перавага PHP, JavaScript і сінтаксіс Twig, у новым неверагодным і ўсемагутнага мове праграмавання.

Поўны сцэнар-здольнасць
  • {% 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 %}

Пераклады з кантэкстам

Пераводзяцца радкі можна вызначыць вельмі лёгка і здабываюцца аўтаматычна .po файла.

Кантэкст перакладу, выраз, таксама могуць быць выкарыстаны формы множнага лік і каментары перакладчыка.

Пераклады са спасылкамі і фарматаванне могуць быць створаны ў спалучэнні з уцэнкай тэгам, і нават інтэрнацыяналізацыя PDF дакументы магчымыя.

Гэта ніколі не было так лёгка ствараць шматмоўныя прыкладання.

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!"

Шаблон на аснове генератара PDF

Наша сістэма мае шаблон на аснове PDF генератара, які робіць яго лягчэй, чым калі-небудзь раней, каб стварыць шматмоўныя дзелавыя дакументы.

Мы рэалізавалі шмат магчымасцяў у гэтым генератары, напрыклад, UTF-8 і падтрымкі Unicode, TTF-шрыфты, мноства фільтраў, а таксама выкарыстанне адвольных адзінак, такіх як эм, рх, пт, мм, см, і%.

І гэта толькі малая частка функцый PDF Generator.

бізнес 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>

Хутчэй, чым чысты код PHP

Вялікая ўвага была ўдзелена не дадаваць непатрэбны баласт да кода.

Ядро UCMS можа апрацоўваць запыты без выканання запытаў да базе даных. Толькі запыты, якія павінны быць выкананы тыя з вашага прыкладання.

Шаблон рухавік можа кэшаваць кантэнт, што прыводзіць да вельмі хуткай апрацоўцы, нават хутчэй, чым PHP кода.

Калі тэг кэша разумна выкарыстоўваць тое UCMS нават на Raspberry Pi хутчэй, чым любая іншая сістэма на рэальным вэб-серверы.

кэш тэгаў
  • {% cache %}
  • {{
  • yourApi.getItems().renderRows()
  • }}
  • {% endcache %}
захаваная ўтрыманне
  • ...
  • <p>Website was generated in 1 ms</p>
  • </body>
  • </html>

простае кіраванне

Вы можаце кіраваць бізнес-логікай у выглядзе дрэвападобнай структуры, якая змяшчае ўсе неабходныя ўласцівасці, у тым ліку правы доступу, якія працуюць сапраўды гэтак жа, як і ў файлавай сістэме.

Аб'ект дрэва мае шэраг карысных метадаў, якія дазваляюць лёгка ствараць плавання сайта, такія як меню, бакавыя панэлі, навігацыйныя шляху, і многае іншае.

Бізнес-логіка

Вы хочаце ведаць больш?

Часта задаюць пытанні

Ці магу я спампаваць UCMS бясплатна?

Распрацоўка гэтага праграмнага забеспячэння заняла шмат часу, грошай і вопыту. Гэтыя выдаткі павінны быць пакрытыя. Па гэтай прычыне, ліцэнзія на выкарыстанне UCMS патрабуецца.

Ці будзе калі-небудзь UCMS быць адкрытым зыходным кодам?

Пасля таго, як выдаткі на распрацоўку былі амартызуецца, мы можам апублікаваць зыходны код і забяспечыць свабоднае некамерцыйнае выкарыстанне для фізічных асоб (але не кампаніі). Вы не павінны чакаць, што гэта адбудзецца ў бліжэйшай будучыні, а ў 2021 годзе ці пазней.

Якія спосабы аплаты я магу выкарыстоўваць?

Вы можаце аплаціць банкаўскім пераводам або PayPal. Аплата крэдытнай картай магчымая таксама праз PayPal, усе асноўныя крэдытныя карты ад Visa, Mastercard, American Express і Discover прымаюцца.

Калі я магу атрымаць ліцэнзійны ключ?

Вы атрымаеце ліцэнзійны ключ і зыходны код, як толькі аплата была залічана на наш банкаўскі рахунак. Калі вы аплачваеце з PayPal, мы вышлем ліцэнзійны ключ і зыходны код з затрымкай 3-5 дзён пасля атрымання аплаты, каб абараніць нас ад махлярства аплаты.

Якія ўмовы ліцэнзавання?

Мы даем трымальнікі ліцэнзій не вылучнае, не падлягае перадачы, не падлягае resellable бестэрміновую ліцэнзію на выкарыстанне дадзенага праграмнага забеспячэння для аднаго інтэрнэт-дамена. Гэтая ліцэнзія на праграмнае забеспячэнне не можа быць перададзена трэцім асобам або перапрадаць.

Ці магу я атрымаць прыстасаваныя ліцэнзіі / падтрымку?

Патэлефануеце нам, і будзем казаць пра гэта. Мы прапануем мноства дадатковых паслуг, такіх як: парады, падтрымка або стварэнне шкілета прыкладання, калі вы плаціце нам за гэта. Тым не менш, нам не ўдаецца або падтрымліваць якія-небудзь праекты, і вам спатрэбіцца уласны распрацоўшчык для запуску лічбавага бізнесу ў доўгатэрміновай перспектыве.

Ці магу я апублікаваць свой праект на Github?

Не дазваляецца перадаваць або публікаваць зыходны код UCMS поўнасцю або часткова. Гэта азначае, што вы можаце апублікаваць толькі свой уласны код, які вы напісалі самі, але вы не можаце публікаваць любыя часткі кода UCMS з адкрытым зыходным кодам на GitHub ці аналагічны.

Ці магу я атрымаць рахунак, калі я магу купіць?

Вядома, пасля адпраўкі формы заказу, вы атрымаеце пацвярджэнне замовы / проформы (які без падатку дарэчнасці). Канчатковы (і падатковае заканадаўства азначаў) рахунак-фактура высылаецца разам з ліцэнзійнай ключом і зыходны код пасля атрымання аплаты.

Ці павінен я плаціць ПДВ?

Калі вы жывяце ў дзяржаве-члене Еўрапейскага Саюза, вы таксама павінны плаціць ПДВ, прыдатныя да вашай краіны. Стаўка ПДВ залежыць ад дзяржавы-члена ЕС, у якім вы жывяце. Калі вы жывяце дзе-то яшчэ, няма ПДВ.

Ці з'яўляюцца UCMS падатак выдаткі адымаюцца?

Не забудзьцеся спытаць ваш бухгалтар! Калі вы кампанія, шанцы вельмі добра, што вы можаце адняць выдаткі цалкам або, па меншай меры, часткова ад падатку. У ідэальным выпадку, гэта не будзе каштаваць вам нічога, каб купіць ліцэнзію UCMS.