ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 87
Abonament PDF

Programarea tradiţională e perturbată, Low-Code e aici!

Bogdan Nădișan
Digital Technology Architect @ Accenture



PROGRAMARE


Probabil că titlul articolului v-a intrigat. Mă bucur dacă s-a întâmplat acest lucru, pentru că urmează să vă explic ce anume este "Low-code" şi cum Mendix a conceput şi implementat cu succes acest concept.

Străbatem acest drum al cărui scop este de a înţelege cum funcţionează Low-code şi ce este Mendix prin răspunsuri la câteva întrebări. La final, voi trage o concluzie personală despre acest concept şi Mendix.

Ce este Low-Code?

Low-Code este o abordare vizuală pentru software development. Low-Code permite developerilor dar şi non-developerilor deopotrivă, cu nivel de experienţă variat şi în arii diferite de domeniu (inclusiv non-tehnici), să creeze aplicații folosind componente de UI de tip drag-and-drop cât și să creeze logica definită prin model driven development folosind o interfață grafică.

În ceea ce privește Mendix, aplicațiile sunt în mare parte web și mobile. Aplicațiile mobile sunt hibride sau chiar native.

Ce este Mendix?

Mendix este o platformă low-code de development colaborativ pentru aplicații web și mobile. Această platformă permite colaborarea dintre partea business și utilizatori IT prin încurajarea inovării și accelerarea procesului de development. Mendix este compatibil cu aplicații pentru mobil, tabletă și desktop.

Care sunt tipurile de utilizatori ale platformei Mendix?

Platforma este gândită în așa fel încât oricine își poate transforma ideea într-o aplicație.

Fie că e vorba de un marketer, business analyst sau programator cu experiență, Mendix oferă resurse bogate pentru a folosi ușor platforma și aplica propria experiență în cel mai eficient mod.

Mendix grupează developerii platformei (userii) în patru categorii:

Curious Cate - Cate este user/consumator de aplicații și face parte dintr-un departament legat de business cum ar fi Financiar, Marketing, HR sau Operațional. Ea are experiență în folosirea toolurilor precum Excel, Access, Salesforce sau Workday, însă le folosește într-un mod manual, care îi afectează productivitatea. Cate va folosi Mendix Studio la realizarea aplicațiilor de productivitate pentru a simplifica munca sa și a echipei sale.

Solution Sam - Sam este persoana la care apelează toată lumea când vine vorba de tehnologie și are o afinitate pentru rezolvarea problemelor. Chiar dacă Sam nu are o pregătire tehnică (CS sau programare), el este un cunoscător al bazelor de date și știe cum să creeze modele sofisticate în Excel.

Tech Tom - Tom este un developer profesionist care dorește ca aplicațiile sale să crească valoarea businessului. De aceea, interesul său este legat mai mult de impactul pe care îl are soluția dezvoltată decât de codul care a fost scris.

Hardcore Harry - Harry este un adevărat maestru al codului și este sceptic în ceea ce privește platformele de low-code, deoarece consideră că poate să scrie cod mai repede decât să manevreze prin drag and drop nivele ridicate de abstractizare. Harry a petrecut o mare parte din cariera sa folosind limbaje de programare precum Java, C#, Ruby sau PHP și este posibil să aibă experiență cu alte tooluri pentru dezvoltare rapidă de aplicații.

Care sunt principalele funcționalități ale platformei Mendix?

1. Domain model

Este un data model vizual care descrie informația din application domain într-un mod abstract. Este fundamental pentru arhitectura aplicației. Domain modelul este format din entități și relațiile dintre acestea.

Ca entități putem avea:

Poți decide la nivel de metadata dacă o entitate are nevoie de 'persistence layer' sau nu, astfel ai posibilitatea de a lucra cu entități volatile, dacă este nevoie.

Entitățile pot fi create fie prin configurarea manuală a metadatelor, fie prin importul unor structuri de date bazate pe XML sau JSON. Această facilitate face ca integrarea cu alte aplicații 3rd party să fie mai ușoară când vine vorba de instanțierea rezultatelor din service calls (REST sau SOAP). Integrarea cu alte aplicații o voi explica ulterior.

2. Pagini

O pagină este o interfață end-user în aplicațiile Mendix. Paginile se pot crea, edita și manipula din Page editor.

Fiecare pagină este bazată pe un layout și un template. Un layout este frame-ul în care se pune pagina, iar template-ul este o bază cu elemente predefinite (widgets).

Widgeturile se grupează în următoarele categorii:

3. Application logic

În Mendix, Application logic poate fi implementat prin microflows și nanoflows. Microflow permite redarea aplicației într-o schemă logică. Un microflow poate executa acțiuni precum crearea și updatarea obiectelor (instanțe de entități) ce arată paginile și permit vizualizarea luării deciziilor. Este un mod vizual de a exprima ceea ce ajunge să fie transformat în linii de cod.

Notațiile grafice ale unui microflow se bazează pe Business Process Model and Notation (BPMN). Acesta este un standard pentru notarea grafică a proceselor de business într-un workflow.

Un microflow este compus din mai multe elemente categorizate astfel:

4. Integrare

Integrarea cu alte produse se poate face în mai multe moduri, cele mai importante fiind:

Concluzii

Întorcându-mă la tipurile de utilizatori ai Mendix, pot să vă spun că am jucat rolul lui "Hardcore Harry" pentru mai mulți ani și mi-a plăcut, chiar dacă în ultimul timp mi-a făcut mai multă plăcere să ocup rolul de software architect. Pe scurt, mă consider o persoană tehnică căruia îi place să scrie cod și să aibă mult control la nivel low-level pe orice bucată de software pe care o construiesc.

Poate părea greu de crezut, însă eu simt același nivel de control atunci când construiesc aplicații în Mendix. Sunt încântat de felul în care se reușește abstractizarea diverselor complexități care apar pentru orice capabilitate nouă pe care urmează să o scrie fiecare developer pentru a livra un produs potrivit pentru un anumit client. În viziunea mea, ceea ce au construit developerii de la Mendix este un tool inovator care va schimba orice arie de domeniu, și chiar din domenii adiacente. (Aici nu mă refer doar la software development, ci chiar la industrii întregi). Nu este de mirare ca Siemens a cheltuit mai mult de 600 de milioane de dolari pentru a cumpăra compania și sunt nerăbdător să văd cum vor putea beneficia clienții lor de această nouă jucărie.

Am și un mesaj pentru toți cei care se identifică cu "Hardcore Harry". Vă recomand să acceptați și adoptați platformele Low-code, deoarece astfel veți/vom putea construi funcții la care încă omenirea nici nu s-a gândit. Și nu în ultimul rând, vreau să urez bun venit în lumea software developmentului , tuturor "Citizen developers"!

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects