INOVAX: Türkiye'nin Bilim ve Teknoloji Dergisi

No-Code Nedir?

Kod yazmadan uygulama geliştirmek mümkün mü?

Teknolojinin olağanüstü gelişimi birçok şeyin değişmesini sağlarken pek çok yeni kavramları ve uygulamaları da hayatımıza yerleştiriyor. Bu değişim karşısında insanların ihtiyaçları da değişirken iş süreçleri de yeniden şekillenebiliyor. Öyle ki bu şekillenme endüstriden sağlığa, turizmden eğitime pek çok alanda kendini gösteriyor. Yazılım dünyası da bu alanlardan biri. Son dönemlerde adı sıkça duyulmaya başlayan No-Code/Low-Code kavramları da yazılım sektörünü yakından ilgilendiriyor.

Günümüzde hemen hemen tüm faaliyet alanlarından işletmeler çeşitli yazılımlara ihtiyaç duyuyor. Öyle ki yazılımlar artık şirketlerin olmazsa olmaz bir parçası haline geldi. Bu noktada firmalar ihtiyaç duydukları özelliklere ve değişikliklere yönelik sürekli talepe bulunabiliyor bu taleplerin hızlı bir şekilde karşılanması her zaman mümkün olmayabiliyor. İşte No-Code/Low-Code kavramları bu noktada karşımıza çıkıyor. Peki bu kavramlar ne ifade ediyor?

No-Code Nedir?

Yazılım dünyasında da gelişen teknolojilere paralel olarak birçok gelişme yaşanıyor. Daha önceden yapılandırılmış halde bulunan blokları sürükleyip bırakarak kod yazmadan uygulama geliştirmeye imkan sağlayan bir metot olarak tanımlanan no-code esasında kod yazmadan kodları çalıştırmayı ifade ediyor. Çünkü no-code platformlarında kod yazmadan bir uygulama oluşturduğunuzda programcılar tarafından daha önce oluşturulan kodları çalıştırmış olursunuz.

Low-Code Nedir?

No-Code geliştirme platformlarından farklı olan low-code uygulamaları özelleştirilmiş kodlarla daha yüksek düzeyde işlevsellik sunar. Low-code, birden fazla backend ve harici veri kaynağıyla entegre olan son derece karmaşık, görev açısından kritik sistemler dışında hemen hemen her alanda kullanılabilirken no-code ise, genellikle frontend ihtiyaçları için kullanılır. Low-Code platformlar birincil işlev olarak kod özelleştirme imkanı sunarlar. Dolayısıyla basit uygulamalar geliştirmiyor ve fazlaca özelleştirme ihtiyacı duyuyorsanız low-code tercihi sizin için ideal olacaktır.

Son dönemlerde adı daha sık duyulmaya başlansa da no-code aslında yeni bir uygulama değil. 1979’da piyasaya sürülen VisiCalc, mikrobilgisayarlarda bulunan ilk elektronik tablo yazılımıydı. Ardından 1983 yılında IBM tarafından Lotus 1-2-3 piyasaya sürüldü. Microsoft, Mac için 1985 yılında Excel 1.0’ın ilk sürümünü yayınladı ve iki yıl sonra ise Windows için Excel 2.0 yayınlandı. 2003 yılında piyasaya sürülerek hızlı bir şekilde web sitesi oluşturmaya imkan sağlayan ve mevcut sitelerin %35’i tarafından kullanılan WordPress, bugün içerik üreticilerin vazgeçilmezi konumunda.

Geleneksel program geliştirme süreçlerinin aksine no-code ve low-code platformları görsel modeller ve sürükle bırak gibi hızlı çözümler ile kendi algoritmamızı oluşturmaya imkan tanıyorlar. Bu veri tabanları, mimari yapılar, implementasyon gibi karmaşık olabilecek konularla uğraşmadan yazılım geliştirebilme anlamına geliyor. Geliştirme platformlarının birçoğu sürükle bırak yapısıyla iş süreçlerinin yazılıma dönüştürülmesi mantığı ile çalışıyor. Bu da platformların içeriğinde Business Process Management – İş Süreci Yönetimi (BPM) modüllerinin yer almasını sağlıyor.

No-code uygulamaları birçok yönden kullanıcıya avantaj sağlasa da olumsuz olarak değerlendirilebilecek özellikleri de yok değil. En büyük avantajlarından birisi maliyet konusunda. İhtiyaç duyulan geliştirici sayısını azaltarak maliyet tasarrufu imkanı sunar. Diğer konu ise güvenlik. Bu gibi platformlarda uygulamanın güvenlik sorumluluğu, uygulamayı geliştiren kişilerde değil platformu sağlayan yazılım geliştirici firmadadır. Bu durum ise riskin paylaşılmasını ve daha kolay yönetilmesini sağlar.

IT personeli üzerindeki yükü hafifleterek üretkenliği yükseltir. Kolay kullanımıyla istenilen değişiklikleri hızlıca yapmanıza olanak sağlar. Bununla birlikte en önemli olumsuz özelliklerinin başında platforma olan bağlılık geliyor. Kullanılan platformda herhangi bir sorun oluşması durumunda iş süreçlerinizde aksamalar yaşanması kaçınılmaz olacaktır. Yine kendinize özel düzenlemeler yapmak istediğinizde bazı kısıtlamalar ile karşılaşmanız uygulamaların olumsuz özellikleri arasında.

Dünyanın önde gelen araştırma şirketlerinden Forrester’ın yayınladığı raporda, low code uygulamalarının global anlamda bir yükseliş trendinde olduğu belirtiliyor. Şirketin analistlerinden John Rymer konuya ilişkin yaptığı açıklamada “Kendimizi yazılım geliştirme sürecine bağlarsak, başarısız olacağız. Çok yavaş, çok katı bir süreç. Yeterince hızlı hareket edemiyoruz.” İfadelerinde bulundu.

Low Code ve No Code geliştirme platformları bizlere iki farklı şekilde çözüm üretirler. Bunlardan ilki model bazlı yaklaşımken ikincisi ise veri tabanı bazlı yaklaşımdır. Model bazlı yaklaşımda esas olan, belirlenen iş modelidir ve iş modeli üzerine mimari yapı kurulur. Veri tabanı bazlı yaklaşımda ise yapılacak işe uygun olarak veri tabloları oluşturulur. Bu tablolar arası ilişkisel yapılarla işlemler gerçekleştirilir.

No Code / Low Code uygulamaları sadece kişisel değil işletmeler ve kurumsal şirketler için de esnek ve hızlı çözümler sağlıyor. Öyle ki ihtiyaca göre bir CRM uygulaması veya stok takibi için bir veri tabanı yapısı ya da mevcut uygulamalar arası bağlantıyı sağlamak için bir entegrasyon veri tabanı geliştirilmesi mümkün.

No Code / Low Code uygulama metotları gelişmeye devam ediyor. Yapılan araştırmalar 2024 yılına kadar geliştirilen tüm yazılımların yaklaşık %65’inin no-code platformları kullanılarak geliştirileceğini gösteriyor.

Özellikle yazılım alanında kazanılan yetkinliklerinin büyük öneme sahip olduğu günümüzde yazılım dünyasına girmek isteyen ancak yazılım mühendisliği, bilgisayar bilimleri gibi alanlarda eğitim almamış kişiler için yoğun çalışmaya ihtiyaç duyan bir gelişim süreci mevcut. Bu teknik alt yapıya sahip olmak donanım ve deneyim kazanmak ve iş süreçlerinde bu kazanımları işlevsel hale getirmek uzun bir süreç ve yoğun bir emek gerektiriyor. Bu gibi platformların gelişimi bilgisayar ya da yazılım mühendisliği gibi uzmanlık alanlarını olumsuz yönde etkilemeyecektir. Uzmanlık alanları bu yönde olan kişiler elbette varlıklarını sürdürecektir. Zira karmaşıklık düzeyi yüksek olan, kullanıcı ile etkileşime giren uygulamaların geliştirilmesi, bilgi ve tecrübeye ihtiyaç duyulması nedeniyle bu alanın uzmanları tarafından geliştirilmeye devam edecek.

Mobil Sürümden Çık