NoCode Model Nedir?


NoCode ortamında veri kaynaklarında (database) veya formüle edilmiş değerlerin tanımlandığı birimdir. Model ile bir form veya grafik arabirimi için gerekli değerlerin veri tabanından okunması ve yazılması için tanımlamalar yapılmaktadır.


Model bir veya daha fazla yığın (structure) üzerine kurgulanır. Yığınlar modelin veri gruplarına göre gruplanmış halidir. Bunu bir örnekle açıklamak gerekir ise bir cari hesap kaydı ile bu cari hesaba ait işlemlerin aynı model içerisinde iki farklı yığın ile gruplanmasını sağlar.


Struct - Yığınlar

Yığınlnar iki türden oluşur; main ve sub. Main tanımlı bir yığın tekil bir veri grubunda yada hiyeraiş bir veri grubunun en üst seviyesindeki kümeyi gösterir. Sub tanımlı bir yığın ise bu üst veri kümesine ait bir öğeye denk gelen çok kayıtlı öğelere denk gelir. Bu hiyeraşik yapı model içerisinde sub tanımlı yığında main tanımlı yığınla ilişkisini belirtecek şekilde yapılandırma ayarlarını barındırır. Böylelikle bir ana küme verisine ait alt kümelerdeki ilişkili veriler tek model içerisinde tanımlanır. Modeller arası ilişkisel bağıntılar bu seviyede yapılmamaktadır, bu seviyede yapılacak tüm ilişkiler veri kümelerini (yani tabloları veya görüntüler gibi öğeleri) kapsamaktadır.

Yığınlar elementleri temel alır. Elementler bir form öğesi gibi düşünülebilir, bir tanımlayıcısı, dile göre etiketi, veri tipi, ekranda görüntülenme şekli (metin alanı, seçenek listesi gibi), tablo ve kolon karşılığı ve workcube objeleri ile ilişkileri gibi yapılandırma ayarlarına sahiptir. Bu şekilde elementler bir blok (widget) üzerine sürükle bırakla bırakıldığında ne şekilde görüneceği ve hangi kurallarla çalışacağını bloğa bildirir. Elementler yapılandırma ayarlarına göre hangi olaylarda (events) kullanılacağı belirlenir.


Elementler

Element en temel birim olup veri eşleşmesi için temel kaynaktır. Bir yığın içerisinde ki elementlerin eşleştiği tablo veya tablolara göre yığına ait sorgular otomatik oluşturulur. Bu sebeple her bir elementin hangi veri kaynağını kullandığını belirlemek önemli bir konudur. Elementler doğru eşleştirilmesi kadar elementin veri tipinin de doğru seçilmesi gerekir. Kaynaktan alınan verinin doğru görüntülenmesi ve/veya kaydedilmesi aşamasında doğru formatta teslim edilmesi için gereklidir.

Elementler olaylara göre kullanılıp kullanılmayacağı yine model üzerinde belirlenmektedir. Bir element kayıt ekleme olayında kullanılamazken kayıt güncelleme olayında kullanılabilir. Bu element seviyesinde ki ayrım model tarafında kurallandırılır. Böylece blok tasarımları yapılırken bir olayda kullanılmayacak öğe o olayın bir parçası olamaz. Olaylar ekleme, güncelleme, listeleme ve dashboard olarak belirlenir. Ancak listeleme iki türde veri taşır, liste alanları ve filtre alanları. Bu bağlamda 5 tipte elementler olaylarla ilişkilendirilmiş olur.


Kondisyon Kavramı

Yığın elementlerin ortaklaşa çalışmasını sağlarken bu elementlerin verilerle ilişkisini de kurmaya çalışır. Ancak bir yığın içerisinde birden fazla veri kümesinin (birden fazla tablo üzerinde) çalışması durumunda ilişkisel yapısını da tanımlama ihtiyacı duyar. Bu durum için yığın kondisyonları (conditions) belirlememizi talep edecektir. Kondisyonlar altında sol-sağ eşleşmesi ile verilerin arasında ki bağlantıyı ve eşitleme yöntemi (eşit, büyük, küçük vb) belirleyerek veri kümelerinin verileri eşleştirilir. Veri kaynakları arasında ilişkililerin yapıldığı kondisyonlar alanında aynı zamanda verilerin bir sabitten veya sistem verilerinden (session gibi) alarak veri üzerinde kısıtlamaları da belirler. Yığın elementleri ve elementlerin bağlı olduğu veri kümelerini ilişkilendirdikten sonra sorgu üretimini kendi üretebilmektedir. Bir model tasarlandıktan sonra ön görünümüne bakabilir üretilen sorguların doğruluğunu (uzmanlık gerektirir) kontrol etmek mümkündür. Eğer bir sorgu doğru şekilde üretilmemiş ise muhtemel durum elementlerin ve kondisyonların doğru yapılandırılmamasındandır.


Tutarlılık

Elementler üzerinde ki görsel ve form ayarları model seviyesinde tasvir edilir, ancak modele ait kod üretimi aşamasında kullanılmaz. Bu sebeple bloklar (widgets) konusunda bu bilgilere değinilecektir. Doğru bir model için şu kontrol listesini takip etmekte fayda var. 

  • Elementlerin veri kaynakları doğru bağlandımı, veri tipleri uygun karşılıklarıyla seçildi mi
  • Element adları yığın içerisinde benzersiz tanımlandı mı
  • Elementler için kullanılması istenen olaylar seçildi mi
  • Kondisyonlar farklı veri kaynakları içeren elementlere göre eşleştirildi mi
  • Alt yığınlar ile ana yığınlar arası ilişkiler bağlandı mı

Bu listede ki bilgileri göz önüne alarak geliştirilen modeller sorunsuz dinamik kod üretimi yapacaktır.

Geri Bildirim

Bu içeriği faydalı buldunuz mu?