Drag Arrow LeftKAYDIR Drag Arrow Right
img Solviera Teknoloji Solviera Teknoloji

Solviera Teknoloji, işletmenizin potansiyelini dijital dünyada zirveye taşır. Dijital pazarlama, SMS altyapı yazılımları ve kurumsal kaynak yönetimi alanlarındaki uzman çözümlerimizle dijital dönüşümünüzde güvenilir ortağınız olmaya hazırız.

No-Code'un Sonu, Low-Code'un Yükselişi: Geliştiriciler İçin Retool ve Appsmith ile Kurumsal Araçlar Geliştirme Rehberi

  • Blog Yazılarımız
  • Teknolojik Gelişmeler
Blog Image

Son birkaç yıldır teknoloji dünyasında yankılanan bir melodi var: "Kodlamanın demokratikleşmesi." Bu melodinin en popüler enstrümanı ise No-Code platformları oldu. Herkesin, tek bir satır kod yazmadan, sürükle-bırak arayüzlerle kendi uygulamasını yaratabileceği vaadi, pazarlama departmanlarından küçük işletme sahiplerine kadar geniş bir kitleyi büyüledi. Ancak bu pembe tablonun ardında, özellikle ciddi ve ölçeklenebilir iş uygulamaları geliştirmeye çalışanlar için belirginleşen bir "cam tavan" vardı. Performans sorunları, esneklik eksikliği, platforma mahkumiyet (vendor lock-in) ve en önemlisi, kontrol kaybı. İşte bu noktada, sahne ışıkları yavaşça No-Code'un üzerinden çekilirken, spotlar çok daha güçlü, esnek ve en önemlisi geliştiricileri kucaklayan bir paradigmaya dönüyor: Low-Code.

Bu makale, No-Code'un vaatlerinin nerede bittiğini ve Low-Code'un gerçek dünyadaki kurumsal sorunları çözmek için nerede başladığını anlatan nihai bir rehberdir. Bu, geliştiricilere yönelik bir manifestodur. Sizi, tekrar tekrar aynı admin panelini, aynı CRUD (Create, Read, Update, Delete) arayüzünü yazmanın angaryasından kurtarıp, enerjinizi karmaşık iş mantığına ve gerçek mühendislik problemlerine odaklamanızı sağlayacak bir devrimin kalbine davet ediyoruz. Bu devrimin iki öncü generaliyle tanışacaksınız: Retool ve Appsmith. Bu platformların sadece birer "araç" olmadığını, geliştirici verimliliğini 10 kat artırabilen birer "güç çarpanı" olduğunu, gerçek bir e-ticaret senaryosu üzerinden adım adım bir kurumsal araç geliştirerek kanıtlayacağız. No-Code'un sonu, sizin için yeni bir başlangıç olabilir.

Bölüm 1: Büyük Ayrım - No-Code'un İllüzyonu ve Low-Code'un Gerçekçiliği

Bu değişimi anlamak için iki felsefe arasındaki temel farkı netleştirmeliyiz.

No-Code'un Vaadi ve Duvarı

No-Code platformları (Bubble, Adalo, Wix gibi) temel olarak "vatandaş geliştiricileri" (citizen developers), yani teknik olmayan kullanıcıları hedefler. Amaçları, kodun karmaşıklığını tamamen soyutlayarak, görsel bloklarla uygulama geliştirmeyi sağlamaktır.

  • Güçlü Yönleri: Basit web siteleri, landing page'ler, anketler veya çok temel mobil uygulamalar için harikadırlar. Bir fikri hızla prototiplemek için mükemmeldirler.
  • Çarptığı Duvar (Sınırlılıkları):
    • Ölçeklenebilirlik: İş mantığı karmaşıklaştıkça veya veri hacmi arttıkça, performans ciddi şekilde düşer. Binlerce satır veriyi filtreleyen bir tabloyu No-Code ile akıcı bir şekilde çalıştırmak neredeyse imkansızdır.
    • Esneklik: Platformun sunduğu bileşenler ve entegrasyonlarla sınırlısınızdır. Kendi özel veritabanınıza, şirket içi (on-premise) bir legacy sisteme veya standart dışı bir API'ye bağlanmanız gerektiğinde, No-Code size "üzgünüz, bu mümkün değil" der.
    • Kontrol ve Veri Sahipliği: Kod size ait değildir. Uygulamanızı platformdan dışarı aktaramazsınız. Daha da önemlisi, verileriniz genellikle üçüncü parti bir sunucuda tutulur, bu da kurumsal güvenlik ve uyumluluk politikaları için kabul edilemez olabilir.

Low-Code: Geliştiriciler için Bir Güç Çarpanı

Low-Code ise bambaşka bir felsefeye sahiptir. Hedef kitlesi "vatandaş geliştiriciler" değil, doğrudan yazılım geliştiricileridir. Low-Code, kodu ortadan kaldırmayı değil, sıkıcı ve tekrarlayan kodları ortadan kaldırmayı hedefler.

Onu bir benzetmeyle anlatalım:

  • No-Code, LEGO'larla oynamak gibidir: Size verilen hazır bloklarla harika şeyler yapabilirsiniz, ancak bir LEGO parçasının şeklinde veya boyutunda değişiklik yapamazsınız.
  • Low-Code ise size son teknoloji bir atölye sunmak gibidir: Bu atölyede, işinizi hızlandıracak hazır modüller (masalar, sandalyeler, dolaplar) vardır. Ancak aynı zamanda size bir yontma makinesi, bir 3D yazıcı, ham metaller ve her türlü vidayı da (yani JavaScript, SQL, API'ler) verir. Hazır modülleri kullanabilir veya istediğiniz zaman ham malzemeyi alıp tamamen size özel bir parça üretebilirsiniz.

Low-Code platformları, geliştiricinin en büyük angaryası olan arayüz (UI) geliştirmeyi basitleştirir. Bir tabloyu, formu, butonu veya grafiği sürükleyip bırakarak saniyeler içinde oluşturmanızı sağlar. Ancak bu bileşenlerin arkasındaki mantığı ve veri akışını tamamen geliştiricinin kontrolüne bırakır.

Bölüm 2: Tanışma Zamanı - Retool ve Appsmith Nedir?

Retool ve Appsmith, bu Low-Code devriminin ön saflarında yer alan, geliştirici odaklı platformlardır. Her ikisi de temel olarak aynı mimari üzerine kuruludur:

  • Görsel Arayüz Katmanı (UI Layer): Kullanıcıya sunulan arayüzü oluşturduğunuz yerdir. Sürükle-bırak yöntemiyle onlarca hazır bileşeni (Tablolar, Formlar, Butonlar, Modallar, Metin Girişleri, Grafikler vb.) tuvale yerleştirirsiniz.
  • Veri Katmanı (Data Layer): Uygulamanızın "beynini" besleyeceğiniz yerdir. Buradan aklınıza gelebilecek hemen hemen her veri kaynağına bağlanabilirsiniz:
    • Veritabanları: PostgreSQL, MySQL, MongoDB, MS SQL, Redis...
    • API'ler: Herhangi bir REST veya GraphQL API.
    • Üçüncü Parti Servisler: Stripe, Twilio, Google Sheets, Slack, HubSpot...
  • Mantık Katmanı (Logic Layer): İşte burası Low-Code'un parladığı yerdir. Bu katmanda, arayüz ile veri kaynakları arasındaki ilişkiyi JavaScript ve SQL kullanarak kurarsınız. Bir butona tıklandığında hangi SQL sorgusunun çalışacağını, bir tablodaki veri değiştiğinde hangi API'nin tetikleneceğini veya bir form gönderildiğinde verinin nasıl işleneceğini kodla siz belirlersiniz.

Bu platformlar, süslü parantezler {{ }} içinde JavaScript yazmanıza olanak tanır. Örneğin, bir metin kutusunun değerini, tablodaki seçili satırın e-posta adresine bağlamak için {{ usersTable.selectedRow.email }} yazmanız yeterlidir. Bu, React veya Vue gibi modern frontend framework'lerine aşina olan geliştiriciler için son derece doğal bir yaklaşımdır.

Bölüm 3: Pratik Uygulama - E-Ticaret "Sipariş Yönetim Paneli" Geliştirme

Teoriyi bir kenara bırakıp, bir geliştiricinin bu araçlarla bir günü nasıl geçirebileceğini görelim.

Senaryo: E-ticaret sitenizin müşteri destek ekibi, siparişleri yönetmek, iadeleri başlatmak ve kargo durumunu güncellemek için sürekli geliştirme ekibinden talepte bulunuyor. Geliştirme ekibinin ise önceliği her zaman ana web sitesini geliştirmek. Bu kısır döngüyü kırmak için, destek ekibinin tüm ihtiyaçlarını karşılayan bir iç aracı (internal tool) 1-2 saat içinde geliştirmeye karar veriyorsunuz.

Hedefler:

  • Tüm siparişleri, aranabilir ve filtrelenebilir bir tabloda listelemek.
  • Bir siparişe tıklandığında, müşteri ve sipariş detaylarını ayrı bir panelde göstermek.
  • "Kargolandı Olarak İşaretle" butonu ile veritabanındaki sipariş durumunu güncellemek ve müşteriye SMS göndermek.
  • "İade Başlat" butonu ile ödeme sağlayıcısı (Stripe) üzerinden iade işlemini tetiklemek.

Geliştirme Adımları (Platform olarak Appsmith'i kullanalım):

  1. Adım 1: Veri Kaynaklarını Bağlama (5 Dakika)
    • Appsmith paneline girin, yeni bir uygulama oluşturun.
    • "Datasources" sekmesine gidin.
    • PostgreSQL veritabanınızın bağlantı bilgilerini (Host, Port, User, Password) girerek "Orders DB" adında bir veri kaynağı oluşturun.
    • Aynı şekilde, "APIs" sekmesinden Stripe ve Twilio (SMS için) REST API'lerini, API anahtarlarınızı girerek ekleyin.
  2. Adım 2: Ana Sipariş Tablosunu Oluşturma (10 Dakika)
    • "Widgets" panelinden bir "Table" bileşenini tuvale sürükleyip bırakın.
    • "Queries/JS" sekmesine gidin ve "Orders DB" veri kaynağını seçerek yeni bir sorgu oluşturun. Adı getOrders olsun.
    • Sorgu alanına SELECT * FROM orders ORDER BY order_date DESC; yazın.
    • Şimdi Table bileşeninin özellikler paneline dönün. "Table Data" alanına {{ getOrders.data }} yazın.
    • İşte bu kadar! Veritabanınızdaki tüm siparişler, sayfalandırılmış, aranabilir ve sıralanabilir bir şekilde ekranınızda. Geliştiricinin aşina olduğu "state management" veya "data binding" gibi kavramlar, platform tarafından otomatik olarak halledildi.
  3. Adım 3: Detay Panelini ve İnteraktiviteyi Ekleme (15 Dakika)
    • Tuvalin sağına bir "Container" bileşeni sürükleyin. İçine birkaç "Text" bileşeni yerleştirin.
    • İlk Text bileşeninin "Text" özelliğine gelin ve Müşteri Adı: {{ ordersTable.selectedRow.customer_name }} yazın.
    • Diğer Text bileşenlerini de benzer şekilde Sipariş Tutarı: {{ ordersTable.selectedRow.total_amount }} TL gibi, tablonun seçili satırındaki (selectedRow) verilere bağlayın.
    • Artık tabloda hangi satıra tıklarsanız, sağdaki panel anında o siparişin bilgileriyle güncellenecektir. React'teki useState ve useEffect ile yapacağınız işi, platform sizin için halletti.
  4. Adım 4: İş Mantığını ve Aksiyonları Ekleme (25 Dakika)
    • "Kargolandı Olarak İşaretle" Butonu:
      1. Detay paneline bir "Button" sürükleyin, metnini "Kargolandı Olarak İşaretle" yapın.
      2. Yeni bir SQL sorgusu (updateStatusToShipped) oluşturun:
        UPDATE orders SET status = 'shipped' WHERE id = {{ ordersTable.selectedRow.id }};
      3. Yeni bir Twilio API sorgusu (sendShippingSMS) oluşturun. "To" alanına {{ ordersTable.selectedRow.customer_phone }}, "Body" alanına ise Sayın {{ordersTable.selectedRow.customer_name}}, {{ordersTable.selectedRow.id}} numaralı siparişiniz kargoya verilmiştir. yazın.
      4. Butonun onClick olayına gelin ve JavaScript'i seçin:
        {{ updateStatusToShipped.run().then(() => sendShippingSMS.run()).then(() => getOrders.run()).then(() => showAlert('Başarılı!', 'success')) }}
      5. Bu tek satırlık kod ne yapıyor? Önce veritabanını güncelliyor, başarılı olursa SMS gönderiyor, başarılı olursa ana tabloyu yeniliyor ve en son kullanıcıya bir başarı mesajı gösteriyor. Zincirleme asenkron işlemleri yönetmek bu kadar kolay.
    • "İade Başlat" Butonu:
      1. Benzer şekilde, yeni bir "Button" ekleyin.
      2. Yeni bir Stripe API sorgusu (issueRefund) oluşturun. Bu, Stripe'ın "create a refund" endpoint'ine bir POST isteği olacaktır. "charge_id" parametresini {{ ordersTable.selectedRow.stripe_charge_id }} olarak dinamik bir şekilde bağlayın.
      3. Butonun onClick olayına bu issueRefund.run() sorgusunu bağlayın.

Sonuç (1 Saatte): Bir saatten kısa bir sürede, normalde bir geliştiricinin günler sürecek (frontend kütüphanesi kur, tablo bileşeni bul/yaz, state yönetimi yap, backend API'leri yaz, deploy et vb.) bir iç aracı, tamamen fonksiyonel ve güvenli bir şekilde hayata geçirdiniz.

Bölüm 4: Retool vs. Appsmith - Hangi Atölye Sizin İçin?

Her ikisi de harika araçlar olsa da, aralarında nüanslar ve felsefe farklılıkları var.

Kriter Retool Appsmith Karar Notları
Model Ticari (Kapalı Kaynak) Açık Kaynak Öncelikli Açık kaynak felsefesini sevenler ve kod tabanına tam erişim isteyenler için Appsmith.
Fiyatlandırma Daha Kısıtlı Ücretsiz Plan, Yüksek Kurumsal Fiyatlar Çok Cömert Ücretsiz Plan, Uygun Fiyatlı Ticari Planlar Bireysel geliştiriciler, startup'lar ve bütçeye duyarli ekipler için Appsmith ezici üstün.
Bileşen Kütüphanesi Çok Geniş ve Olgun. Daha karmaşık bileşenler (örn: Gantt şeması) hazır gelir. Geniş ve Sürekli Büyüyen. Temel bileşenler çok sağlam. Kutudan çıktığı gibi daha fazla niş bileşene ihtiyaç duyan büyük kurumsal yapılar için Retool bir adım önde olabilir.
Geliştirici Deneyimi Çok cilalı bir arayüz. Debugging ve versiyon kontrolü (Git) özellikleri daha olgun. Son derece esnek. Her yere JS yazma felsefesi. JS odaklı geliştiriciler için daha doğal gelebilir. Kurumsal düzeyde versiyon kontrolü ve denetim kaydı (audit logs) kritikse Retool. Tam esneklik ve JS hakimiyeti isteniyorsa Appsmith.
Kendi Kendine Barındırma (Self-Hosting) Mümkün, ancak genellikle kurumsal planlarda ve daha karmaşık. Çok kolay. Docker veya Kubernetes ile dakikalar içinde kendi sunucunuza kurabilirsiniz. Veri egemenliği ve tam kontrol isteyenler için Appsmith'in self-hosting deneyimi daha basit ve erişilebilirdir.

Özetle:

  • Appsmith'i seçin, eğer: Açık kaynağı seviyorsanız, bütçeniz kısıtlıysa, kendi sunucunuzda kolayca barındırmak istiyorsanız ve her şeyin temelinde JavaScript olan bir esneklik arıyorsanız.
  • Retool'u seçin, eğer: Büyük bir kurumsal yapıda çalışıyorsanız, bütçe daha az önemliyse, en geniş hazır bileşen setine ve Git tabanlı versiyon kontrolü gibi en olgun kurumsal özelliklere ihtiyaç duyuyorsanız.

Sonuç: Geliştiricinin Yeni En İyi Dostu

No-Code'un "herkes kod yazabilir" vaadi, yerini Low-Code'un "geliştiriciler 10 kat daha hızlı kod yazabilir" gerçekliğine bırakıyor. Retool ve Appsmith gibi platformlar, geliştiricilere bir tehdit değil, tam aksine onlara sunulmuş en büyük hediyelerden biridir. Bu araçlar, bizi tekrar eden, sıkıcı ve yaratıcılıktan uzak görevlerden azat ederek, enerjimizi ve zekamızı gerçek mühendislik problemlerini çözmeye yöneltmemizi sağlar.

Retool ve Appsmith, kurumsal iç araç geliştirme senaryolarının %80'ini inanılmaz bir hız ve verimlilikle çözebilir. Peki ya geriye kalan %20? Ya platformun sunmadığı tamamen size özel bir UI bileşenine ihtiyacınız varsa? Ya entegre olmanız gereken sistem, standart dışı bir protokol kullanıyorsa? Ya da iş mantığınız, küçük JavaScript snippet'leri ile yönetilemeyecek kadar karmaşık ve hayati ise? İşte bu, Low-Code'un tavanına ulaştığınız ve tam potansiyel gerektiren projelerin başladığı yerdir. Solviera Teknoloji olarak uzmanlık alanımız, tam da bu %20'lik dilimde başlar. Biz, Low-Code platformlarının sınırlarının ötesine geçerek, işletmenizin benzersiz ihtiyaçları için sıfırdan tasarlanmış, yüksek düzeyde ölçeklenebilir, güvenli ve tamamen size özel "full-code" kurumsal uygulamalar geliştiriyoruz. Platformların esnekliğinin bittiği yerde, bizim mühendisliğimiz başlar.

Günün sonunda, bir geliştirici olarak göreviniz arayüz çizmek değil, problem çözmektir. Low-Code, bu misyonu yerine getirirken size yardımcı olan yeni ve güçlü bir müttefiktir. Bu devrimi kucaklayın, çünkü o size en değerli varlığınızı, yani zamanınızı geri verecek.

Sıkça Sorulan Sorular

Evet. Hem Retool hem de Appsmith, size uygulamalarınızı kendi bulut altyapınızda (AWS, Azure, GCP) veya kendi fiziksel sunucularınızda (on-premise) barındırma seçeneği sunar. Bu sayede veritabanınız asla dış dünyaya açılmaz ve tüm veriler sizin kontrolünüzde kalır. Bu, onları kurumsal kullanım için son derece güvenli kılar.

Hayır. Bu platformların temel mantığı, arayüz ve mantık katmanını kendi ortamlarında çalıştırmaktır. Bir uygulamayı saf React veya Vue kodu olarak dışarı aktaramazsınız. Ancak Appsmith gibi açık kaynaklı bir platformda, tüm kod tabanına sahip olduğunuz için teorik olarak daha fazla esnekliğiniz vardır. Bu, platformun en büyük "vendor lock-in" riskidir.

Performans oldukça iyidir, çünkü işin ağır yükünü sizin veritabanınız ve API'leriniz yapar. Platformlar temel olarak bir "proxy" görevi görür. Arayüz tarafı, modern web teknolojileriyle oluşturulduğu için akıcıdır. Ancak binlerce satırlık tablolar veya çok karmaşık anlık veri güncellemeleri gibi senaryolarda, geleneksel bir web uygulamasına göre sınırlar yaşanabilir.

Çok işe yarar. Bu platformların reaktif yapısı ({{ }} sözdizimi, bileşenlerin state'lerine (durumlarına) erişim) doğrudan modern frontend framework'lerinden ilham almıştır. Bir React geliştiricisi, bu platformların mantığını 15-20 dakika içinde kavrayabilir. Ayrıca, hem Retool hem de Appsmith, özel React bileşenleri oluşturup platforma import etmenize olanak tanır, bu da esnekliği artırır.

Evet. Bu alan hızla büyüyor. Dikkate değer diğer alternatifler arasında Budibase (Appsmith gibi açık kaynak odaklı bir diğer güçlü oyuncu), UI Bakery ve daha çok iş akışı otomasyonuna odaklanan Internal.io gibi platformlar bulunmaktadır. Ancak geliştirici odaklı Low-Code pazarında en büyük iki ismin Retool ve Appsmith olduğu genel olarak kabul edilmektedir.

İşletmenizi Bir Sonraki Seviyeye Taşımaya Hazır Mısınız?

Solviera'nın bütünsel teknoloji çözümleri hakkında daha fazla bilgi almak ve işletmenize özel bir analiz için proje danışmanlarımızla bugün iletişime geçin!

Hemen İletişime Geçin