İlk sürümü 1991 yılında Jan Egil Refsnes tarafından geliştirmiştir. Web istemcisi ve web sunucusu arasında HTTP istek iletişimine dayanmaktaydı. Fakat günümüzde veri nitelikleriyle HTML’i desteklemede kullanılmaktadır.
1991 yılında piyasaya sürülen AppML HTTP istek iletişimine dayanan bir sistem olarak karşımıza çıkmıştır. Daha sonra ise 4 Şubat 2015 yılında WCSchools tarafından ürün olarak tekrardan düzenlendi. Düzenlenmesinin ardından halka buluşan AppML, uygulama modelleme dili anlamına gelmektedir. Web tarafında geliştirilen uygulamalarda kullanılmak üzere geliştirilmiştir. İşlev olarak HTML’deki veri niteliklerinin genişletilmesi ve HTML verilerinin davranışlarının kontrol edilmesini sağlamaktadır. Kullanım kolaylığı nedeniyle oldukça fazla tercih edilmektedir.
Özellikle tek sayfa uygulamalarda hızlı ve verimli çalıştırmak amacıyla kullanılmaktadır. AppML; Json dosyaları, metin dosyaları, JavaScript nesneleri, xml dosyaları ve veri tabanındaki dosyalar gibi birçok kaynaktan HTML uygulamalarına veri getirmektedir. Yaygın olarak bilinmemesine karşın sektör içerisinde iş yapan kişilerin oldukça yaygın kullanımı görülmektedir.
AppML Özellikleri
Güncel teknikleri takip ederek modern internet siteleri yapmak için AppML kullanılabilir. Temel özellikleri ise şu şekildedir:
- Düşük geliştiştirme ve bakım maliyetine sahiptir.
- Kolay şekilde test edilebilir.
- Veri katmanının, sunum katmanından ayrılması isteniyorsa kullanılabilir.
- Hızlı ve çevik internet siteleri geliştirmede büyük kolaylık sağlamaktadır.
- Düşük bant genişliği tüketimini desteklediği için oldukça hızlıdır.
- Bulut bilgi işlem için maksimum düzeyde optimize edilmiştir.
- Model View Controller mimarisini takip eder.
- Yapılandırması veya yeniden yapılandırması oldukça kolaydır.
- Ölçeklenebilir yapıya sahiptir.
Yukarıda yer alan özelliklerinden ötürü özellikle tek sayfa internet sitelerinde kullanılması önerilmektedir. Özellikle performans odaklı siteler yapılırken bilinmesi ve kullanılması büyük ayrıcalık tanımaktadır.
AppML Tasarım Özellikleri
AppML tasarım özelliklerini bilerek kendi internet sitelerinizde kullanabilirsiniz. Genel olarak tasarımı aşağıda yer alan temeller dikkate alınarak tasarlanmıştır:
- AppML tabanlı uygulama geliştirmek istiyorsanız öncelikli olarak internet tabanlı bir uygulama kullanmanız gerekmektedir. İnternet olmazsa AppML tasarım özelliklerinden yararlanamazsınız.
- Sürdürülebilir ve geliştirmesi kolay uygulamalarda kullanılmalıdır. Değişime kolayca uyum sağlamalıdır.
- Yalnızca web uygulaması için kullanılacağından HTML, CSS ve JavaScript internet standartlarını kullanmalıdır.
- Kullanılacak olan platformun bağımsız olması önerilmektedir.
- Anlaşılması kolay ve kendini açıklayıcı yerlerde kullanılmalıdır.
- Uygulamanın ihtiyaçlarını karşılayabilir yapıda olmalıdır.
Özellikler baz alındığı zaman temel düzeyde internet sitelerini çok daha performans odaklı hale getirebilirsiniz.
AppML’in Avantajlarından Bazıları;
- Veri Bağlama (Data Binding): AppML, verileri HTML öğelerine bağlamayı kolaylaştırır, böylece veritabanlarınız veya API’lerinizden gelen verileri doğrudan kullanıcı arayüzüne aktarabilirsiniz.
- Otomatik Yenileme: Verilerdeki değişiklikler otomatik olarak kullanıcı arayüzünde güncellenir. Bu, sayfa yenilemelerini gerektirmeyen dinamik web uygulamaları oluşturmanıza olanak tanır.
- Modülerlik: AppML, uygulamanın farklı bölümlerini modüller halinde organize etmenize izin verir, böylece daha temiz ve yönetilebilir kod yapısı elde edersiniz.
- Hız ve Performans: Tek sayfa uygulamaları, tüm sayfanın yeniden yüklenmesine gerek kalmadan içeriği dinamik olarak yükleyebilir. Bu, kullanıcı deneyimini iyileştirir ve uygulamanın performansını artırır.
- Azaltılmış Sunucu Yükü: İstemci tarafında daha fazla işlem yapılması, sunucu üzerindeki yükü azaltır ve böylece daha hızlı yanıt süreleri ve ölçeklenebilirlik sağlar.
- Kolay Öğrenme Eğrisi: AppML, basit etiketler ve öznitelikler kullanarak veri yönetimini kolaylaştırdığı için geliştiricilerin hızla adapte olabileceği bir yapı sunar.
Yüksek performanslı tek sayfa siteler için AppML iyi bir seçenek olabilir, ancak projenizin gereksinimlerine ve geliştirme ekibinin uzmanlık alanlarına bağlı olarak diğer popüler çözümler de değerlendirilmelidir. Örneğin, Angular, React veya Vue.js gibi modern JavaScript çerçeveleri, SPA geliştirmede daha yaygın olarak kullanılır ve büyük topluluklar ve geniş ekosistemler sunarlar.