Kerangka kerja web yang kuat dan inovatif

Ringkasan singkat


UCMS adalah tonggak penting dalam pengembangan web

pengantar

UCMS adalah kerangka kerja PHP / CMS revolusioner baru untuk pengembangan aplikasi web perusahaan yang diinternasionalkan.

Salah satu fitur utama adalah mesin templat yang mengagumkan yang didasarkan pada sintaks Twig. Mesin templat ini adalah bahasa pemrograman seperti JavaScript yang sepenuhnya baru.

Karena kekuatan bahasa templat baru ini, hal-hal dapat diprogram yang sebelumnya tampak benar-benar mustahil.

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

Berada di depan kali

Bahasa template baru mencakup banyak paradigma pemrograman baru seperti antarmuka fungsi asing, fungsi anonim, callback, tag dinamis, ekspresi fungsi, metode chaining, currying dan skripabilitas.

Berkat kerja keras seorang programmer yang brilian, bahasa template yang baru adalah bahasa pemrograman yang mahakuasa yang menawarkan banyak solusi baru dan membuat hal-hal yang mustahil menjadi mungkin.

Anda hanya bisa mendapatkan teknologi baru ini di sini karena butuh bertahun-tahun untuk mengembangkan sesuatu yang serupa.

Tag dinamis
  • {% 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.

Pemrograman tanpa batas

Anda dapat memanggil fungsi atau metode apa pun secara langsung dari template Anda, tidak peduli apakah statis atau berorientasi objek.

Dan Anda bahkan dapat mengakses konstanta kelas dan konstanta PHP secara langsung.

Akses kelas atau fungsi apa pun
  • {% set api = new \Your\Api( ucms.database ) %}
  • {{
  • api.doSomething('Hello World',
  • api::ANY_CONSTANT
  • )
  • }}

Pemrograman di tingkat yang lebih tinggi

Dengan ranting baru Anda dapat referensi fungsi apa pun seperti dalam JavaScript, tidak peduli apakah itu adalah fungsi internal PHP, metode objek, fungsi statis di kelas atau fungsi template.

Selain itu, fungsi internal PHP, fungsi template apa pun, dan makro template apa pun dapat dirantai seperti pada JavaScript, sehingga Anda dapat menulis kode yang sangat mudah dibaca yang mudah dimengerti.

Referensi fungsi apa pun
  • {% set
  • message = "Hello World \u263a",
  • byteLength = \strlen,
  • charLength = \mb_strlen
  • %}
  • Byte length: {{ message.byteLength() }}
  • Char length: {{ message.charLength() }}
Rantai fungsi apa pun
  • Hello {{ 'dlrow'.\strrev().\ucfirst() }}

Turing kelengkapan

Bahasa templat baru adalah bahasa pemrograman dengan kelengkapan Turing.

Anda dapat menggunakan semua struktur kontrol dan paradigma seperti dalam bahasa pemrograman modern lainnya.

Templat dan ekspresi dikompilasi menjadi pohon sintaksis abstrak. Kompiler dapat mendeteksi dan mengoptimalkan ekspresi statis sehingga, misalnya, 1 +1 disimpan sebagai 2 di pohon sintaksis abstrak.

Bahasa template revolusioner baru ini menggabungkan keunggulan PHP, JavaScript, dan sintaks Twig, dalam bahasa pemrograman baru yang luar biasa dan mahakuasa.

Kemampuan skrip penuh
  • {% 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 %}

Terjemahan dengan konteks

String yang dapat diterjemahkan dapat didefinisikan dengan sangat mudah dan diekstraksi secara otomatis sebagai file .po.

Konteks terjemahan, ekspresi, bentuk jamak, dan komentar penerjemah juga dapat digunakan.

Terjemahan dengan tautan dan pemformatan dapat dibuat dalam kombinasi dengan tag penurunan harga, dan bahkan dokumen PDF yang diinternasionalkan dimungkinkan.

Tidak pernah semudah ini untuk membuat aplikasi yang diinternasionalkan.

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 berbasis template

Sistem kami memiliki generator PDF berbasis template yang membuatnya lebih mudah dari sebelumnya untuk membuat dokumen bisnis yang diinternasionalkan.

Kami telah menerapkan banyak fitur dalam generator ini, misalnya, dukungan UTF-8 dan Unicode, TTF-Font, banyak filter, dan penggunaan unit sewenang-wenang seperti em, px, pt, mm, cm, dalam dan%.

Dan itu hanya sebagian kecil dari fungsi Generator PDF.

PDF bisnis
  • <?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>

Lebih cepat dari kode php murni

Sangat hati-hati telah diambil untuk tidak menambahkan pemberat yang tidak perlu ke kode.

Kernel UCMS dapat menangani permintaan tanpa mengeksekusi query database. Satu-satunya pertanyaan yang perlu dieksekusi adalah permintaan Anda.

Mesin template dapat men-cache konten yang dihasilkan, menghasilkan pemrosesan yang sangat cepat yang bahkan lebih cepat daripada kode PHP.

Jika tag cache digunakan dengan bijak maka UCMS bahkan pada Raspberry Pi lebih cepat daripada sistem lain di server web nyata.

Tag cache
  • {% cache %}
  • {{
  • yourApi.getItems().renderRows()
  • }}
  • {% endcache %}
Konten dalam cache
  • ...
  • <p>Website was generated in 1 ms</p>
  • </body>
  • </html>

Manajemen sederhana

Anda dapat mengelola logika bisnis Anda sebagai struktur pohon yang berisi semua properti yang relevan, termasuk hak akses yang bekerja dengan cara yang sama seperti dalam sistem file.

Objek pohon memiliki sejumlah metode berguna yang membuatnya mudah untuk menghasilkan navigasi situs seperti menu, sidebars, jalur navigasi, dan banyak lagi.

Logika bisnis

Apakah Anda ingin tahu lebih banyak?

Pertanyaan yang Sering Diajukan

Bisakah saya mengunduh UCMS gratis?

Mengembangkan perangkat lunak ini membutuhkan banyak waktu, uang, dan pengalaman. Biaya-biaya ini perlu ditanggung. Untuk alasan ini, diperlukan lisensi untuk menggunakan UCMS.

Apakah UCMS akan menjadi sumber terbuka?

Setelah biaya pengembangan diamortisasi, kami dapat menerbitkan kode sumber dan mengizinkan penggunaan non-komersial gratis untuk perorangan (tetapi tidak perusahaan). Anda seharusnya tidak mengharapkan itu terjadi dalam waktu dekat, melainkan pada 2021 atau lebih baru.

Metode pembayaran apa yang dapat saya gunakan?

Anda dapat membayar melalui transfer bank atau PayPal. Pembayaran kartu kredit juga dimungkinkan melalui PayPal, semua kartu kredit utama dari Visa, Mastercard, American Express, dan Discover diterima.

Kapan saya mendapatkan kunci lisensi?

Anda akan menerima kunci lisensi dan kode sumber segera setelah pembayaran dikreditkan ke rekening bank kami. Jika Anda membayar dengan PayPal, kami akan mengirimkan kunci lisensi dan kode sumber dengan penundaan selama 3-5 hari setelah menerima pembayaran untuk melindungi kami dari penipuan pembayaran.

Apa persyaratan lisensi?

Kami memberikan pemegang lisensi lisensi non-eksklusif, tidak dapat dipindahtangankan, tidak dapat dijual kembali, untuk menggunakan perangkat lunak ini untuk satu domain internet. Lisensi perangkat lunak ini tidak dapat ditransfer ke pihak ketiga atau dijual kembali.

Bisakah saya mendapatkan lisensi / dukungan khusus?

Hubungi kami dan biarkan kami membicarakannya. Kami menawarkan banyak layanan tambahan, seperti: Saran, dukungan atau pembuatan kerangka aplikasi Anda jika Anda membayar kami untuk ini. Namun, kami tidak mengelola atau mengelola proyek apa pun, dan Anda akan membutuhkan pengembang Anda sendiri untuk menjalankan bisnis digital Anda untuk jangka panjang.

Bisakah saya mempublikasikan proyek saya di Github?

Tidak diperbolehkan untuk meneruskan atau mempublikasikan kode sumber UCMS secara keseluruhan atau sebagian. Ini berarti bahwa Anda hanya dapat mempublikasikan kode Anda sendiri yang Anda tulis sendiri, tetapi Anda tidak dapat mempublikasikan bagian mana pun dari kode UCMS sebagai sumber terbuka di github atau serupa.

Apakah saya akan mendapatkan faktur jika saya membeli?

Tentu saja, setelah mengirimkan formulir pemesanan, Anda akan menerima konfirmasi pesanan / faktur pro forma (yang tanpa relevansi pajak). Faktur akhir (dan signifikansi hukum pajak) dikirimkan bersama dengan kunci lisensi Anda dan kode sumber setelah menerima pembayaran.

Apakah saya harus membayar PPN?

Jika Anda tinggal di negara anggota Uni Eropa, Anda juga harus membayar PPN yang berlaku untuk negara Anda. Tarif PPN tergantung pada negara anggota UE tempat Anda tinggal. Jika Anda tinggal di tempat lain, tidak ada PPN.

Apakah biaya UCMS dapat dikurangkan dari pajak?

Pastikan untuk bertanya kepada akuntan Anda! Jika Anda adalah perusahaan, peluangnya sangat bagus sehingga Anda dapat mengurangi biaya sepenuhnya atau setidaknya sebagian dari pajak. Dalam kasus ideal, Anda tidak perlu mengeluarkan biaya apa pun untuk membeli lisensi UCMS.