ArcGIS Online’daki Yeni Arcade Editörü ile Tanışın
Arcade, ArcGIS uygulamalarında özel içerikler oluşturmak için kullanılan, öğrenmesi ve aktarması kolay bir ifade dilidir. Arcade kullanarak tıpkı diğer ifade dillerinde olduğu gibi matematiksel hesaplamalar yapabilir, metinlerinizin görünümünü biçimlendirebilir, mantıksal ifadelerle sorgular türetebilir ve çalışmalarınızı değerlendirebilirsiniz. Arcade ile çalışırken çoklu deyim ifadelerini, değişkenleri ve akış kontrol deyimlerini kullanabilirsiniz. Arcade ifade dili, detay ve geometri veri türlerine sahiptir ve bu özelliğiyle diğer ifade ve programlama dillerinden ayrılmaktadır.
Arcade dili, ArcGIS ekosisteminde kullanılmak üzere tasarlanmıştır ve diğer ArcGIS uygulamalarıyla kıyaslandığında aktarılabilir olması nedeniyle güçlüdür. Diğer bir deyişle, bir ArcGIS uygulamasında yazılan bir Arcade ifadesini, diğer ArcGIS uygulamalarında da tutarlı bir şekilde kullanabilir/yorumlayabilirsiniz. Örneğin, ArcGIS Pro’da bir açılır pencereyi yapılandırmak için kullandığınız bir ifadeyi bir web haritasında da kullanabilir, ifadeyi bir dosya olarak kaydedebilirsiniz. Benzer şekilde ArcGIS Runtime ile geliştirilen bir mobil uygulamada veya ArcGIS API for JavaScript ile geliştirilen farklı bir uygulamada tutarlı bir başka sonuç elde etmek için değerlendirebilirsiniz.
Kısacası Arcade, masaüstünde, web ortamında ve mobil cihazlarda tekil ve tutarlı bir sözdizimiyle çalışabilmenizi sağlar. Arcade’i kullanabileceğiniz platformlarla ilgili bilgi edinmek için profiller sayfasına göz atabilirsiniz.
Arcade Editörü Arayüzünün Bileşenleri
Arcade dili, kullanılmaya başlandığı ilk günden bu yana istikrarlı bir şekilde gelişmeye devam etmektedir. Yeni geliştirilen fonksiyonları ve platforma entegrasyonu sayesinde ArcGIS ekosistemindeki yerini gün geçtikçe daha da sağlamlaştırmaktadır.
Öğrenmesi kolay yapısı sayesinde Arcade dili bu süreç içerisinde hızlı bir şekilde gelişirken/geliştirilirken Arcade editörü ise büyük bir değişikliğe uğramamıştı. Ancak yakın zamanda Esri’den bu konuda sevindirici haberler geldi. Bu yazımızda ArcGIS Online tarafındaki yeniliklere kısaca göz atıyor olacağız.
Esri, ArcGIS Online’ın son sürümüyle birlikte, Arcade kullanıcılarının mevcut ve gelecekte ortaya çıkabilecek ihtiyaçlarına göre geliştirilebileceği yeni bir Arcade editörünün (ifadelerin yapılandırıldığı sayfa veya alan) kullanıma sunulduğunu bildirdi. Yeni editör şimdilik yalnızca bir web tarayıcısı üzerinden haritalar oluşturup çalışabildiğiniz Map Viewer uygulamasında kullanılabiliyor ancak önümüzdeki süreçte ArcGIS Online’da Arcade’in kullanılabildiği hemen hemen her platformda yerini alacak.
Şimdi gelin hep birlikte bu yeniliklere yakından bakalım.
Öncelikle Map Viewer uygulamasında bir web haritası açarak başlıyoruz.
Eğer Arcade dilini bu blog yazısıyla öğrendiyseniz ve yenilikleri eş zamanlı olarak incelemek isterseniz, bu bağlantıdaki örnek web haritasını kullanarak deneyebilirsiniz.
Gerekirse, soldaki (İçerik) araç çubuğundan Layers (Katmanlar) sekmesini açınız ve haritadaki katmanlarınızdan birini seçiniz. Ardından sağdaki (Ayarlar) araç çubuğundan Pop-ups (Açılır pencereler) butonuna tıklayınız.
Açılan bölmede Options (Ayarlar) altından Attribute expression (Öznitelik ifadesi) seçimini yapınız ve Add Expression (İfade Ekle) butonuna tıklayınız.
Editör penceresini açar açmaz yeni sayfa düzenini göreceksiniz. İfadelerinizi yazabilmeniz için ayrılan bölüm daha geniştir. Yeni editörün tasarımı, ihtiyaç duyduğunuzda her ögeyi çağırabileceğiniz ve rahatça çalışabileceğiniz şekilde geliştirilmiştir.
1. İfade Adı : Arcade ifadelerini birçok haritalama işleminde kullanabilirsiniz bu nedenle oluşturduğunuz ifadelere anlaşılır ve uygun isimler vermeniz önemlidir. Haritanızı ihtiyaçlara göre güncellemenin haricinde bir lejant veya açılır pencere içeriği yapılandırmak için Arcade ifadelerini kullanabilirsiniz.
2. Run (Çalıştır) Komutu : Run (Çalıştır) komutu, yazdığınız ifadeyi çalıştırarak sonuçlarını görmenizi sağlar. Önceki editör penceresinde bu butona Test adı verilmişti. Ancak yeni sürümde komutun hem işlevini daha iyi anlatabilmesi hem de ilerleyen geliştirmelerle daha uyumlu olabilmesi adına yeniden adlandırılmıştır.
3. İfade Yapılandırma Alanı : Yeni editörle birlikte Arcade ifadeleri yapılandırmak artık çok kolay. İfade yapılandırma alanı yapılan iyileştirmelerle bir IDE kullanarak kod yazmaya benzer şekilde kullanıcıya sunulmaktadır.
4. Eylem Çubuğu : Bu bölüm yardım sayfasına, tüm fonksiyonlara, profil değişkenlerine (Profile Variables, önceki ismi Globals) ve önerilere göz atabileceğiniz gerektiğinde erişebileceğiniz yerdir.
İfade oluşturmayı 5N1K gibi düşünelim. Ben ne amaçla bir ifade oluşturacaksam ona yönelik belirli başlı sorularım bulunur. Örneğin, yaşadığınız ile ait bir haritayla çalıştığınızı varsayalım. Haritada elinizdeki verilerle ifade etmek isteyeceğiniz birçok bilgi olabilir. Bu bilgileri ortaya çıkarmak için çeşitli sorular türetirsiniz. Amacınıza uygun olarak sorularınız “Ne? Nerede? Ne ile hangi ilişkisini / neyin özetini?” vb. şeklinde olacaktır. Senaryoya uygun bir şekilde yapılandıracak olursak “Ankara ilinde kaç adet ilçe bulunur? , Hangi ilçenin genç nüfusu %30’dan fazladır?” gibi. Bu sorulara eğer bir Excel dokümanında cevap arasaydınız birer formüle dönüştürmeniz gerekirdi. İşte ArcGIS platformunda Arcade ile ifade oluşturduğunuzda buradaki örneğe benzer bir işlem gerçekleştirirsiniz.
Profil Değişkenleri (Profile Variables)
Editör penceresini ilk açtığınızda daha önce Globals olarak karşınıza çıkan değişkenlerin Profile Variables şeklinde yeniden adlandırıldığını görürsünüz. Globals veya Profile Variables bölmesinde haritanızın özellikleri, haritadaki tüm katmanlar, katmanlardaki öznitelik alanları vb. ögeler listelenir. Yani bu bölme, oluşturacağınız ifadeler için bir nevi başlangıç görevi üstlenmektedir. “Nerede, neyi arıyorum?” sorusunun cevabını buradan hızlıca ifadenize ekleyebilirsiniz.
Bölmedeki isim değişikliğinin sebebi, bu değişkenlerin (etiketleme, semboloji yapılandırma, özelleştirilmiş açılır pencereler) Arcade profili tanımlandığını kullanıcıya daha anlamlı bir şekilde yansıtmaktır. Yeni editör arayüzünde her profil değişkenine ait özel açıklamalar bulunmaktadır. Örneğin; $feature (gerçek dünya detaylarının CBS’deki ifadesi) profil değişkenini kullanarak bir ifade yazarken artık içerdiği tüm alanların (öznitelik bilgilerinin) listesini görebilirsiniz. Ayrıca listedeki her alanın yanında nicel ya da nitel değerler içerdiğini belirten semboller bulunmaktadır. Bu yeni özellik sayesinde eğer kullanmak istediğiniz alanda domainler bulunuyorsa kolayca hangileri olduğunu tespit edebilirsiniz. Listede gezinirken en başa dönmek için sağ alttaki << butonuna tıklayabilirsiniz.
Fonksiyonlar (Functions)
Sağdaki bölmeden açtığınız Functions panelinde ise basit gibi gözüken ama Arcade ile çalışırken hayat kurtarıcı değişiklikler yapılmıştır. Yeni arayüzde fonksiyonların her biri artık gruplar halinde listelenmektedir ve her bir fonksiyon için dönen değerin türü de yanında belirtilmektedir. Özellikle programlama konusunda yeniyseniz bu özellik çok işinize yarayacaktır.
Listede ilginizi çeken fonksiyonun işlevine ve nasıl kullanılabileceğine ilişkin ek bilgiye ihtiyacınız varsa yanındaki > işaretine tıklayarak yardımcı açıklamaları inceleyebilirsiniz.
Farklı isterlere sahip olan aynı isimdeki fonksiyonlar ise, artık Functions listesinde ayrı ayrı görüntülenebilmektedir böylece ihtiyacınız olanı kolayca seçebilirsiniz.
İfade Önerileri (Suggestions)
Yeni editör sürümündeki bu panel, aslında önceki sürümlerden (Map Viewer uygulamasında çalışırken) aşina olabileceğiniz iki işlevi bir araya getirir: Mevcut ifadeleri ve şablonları ifade alanına çağırma.
Mevcut ifadeler (Existing sekmesi yada Existing Expressions) çalıştığınız profilde veya farklı bir profilde kullanılmakta olan ifadelerdir. Diğer bir deyişle zaten daha önce yapılandırdığınız ve kaydettiğiniz ifadelerdir. Bu özellik sayesinde yeniden ihtiyaç duyduğunuzda kolayca çağırabilir ve dilerseniz üzerinde ufak değişiklikler yaparak kullanabilirsiniz.
Ayrıca bu bölmede haritanızda oluşturabileceğiniz yaygın kullanılan ögeler (grafik, metin vb.) için hazır şablonlar ve eğer varsa mevcut şablonlar listelenmektedir. Bahsedilen bu mevcut şablonları Dashboard veya Field Maps uygulamalarında yapılandırmış olabilirsiniz. Yeni editör bu ögelere de kolayca Suggestions panelinden erişebilmenizi sağlar.
Yeni Arcade İfade Penceresi
İfade penceresi yazılan kodların hayat bulduğu ana çalışma alanıdır. Kullanıcı geri bildirimleri doğrultusunda yeni editörün ifade penceresinde artık daha hızlı ifade yazabilir, oluşabilecek/oluşan hataları ve nedenini hızlıca belirleyebilir ve ifadelerinizi kolayca bir adım öteye taşıyabilirsiniz.
- Akıllı kod tamamlama teknolojisini kullanarak hızlı kod yazma
Programcılar için işi kolaylaştıran teknolojilerin başında akıllı kod tamamlama gelmektedir. Yeni editörde bir ifade yapılandırırken artık mevcut bilgileri ya da ögeleri hızlıca çağırabilir, uygun ipuçlarıyla fonksiyonları hızlıca yapılandırabilirsiniz.
- Anlık uyarılarla daha kolay ifade yapılandırma
Yeni editörde daha kod yazarken ortaya çıkabilecek hataları görüntülemeniz veya yazdığınız ifadeyi en temiz haline getirebilmeniz için çok sayıda yeni uyarı bulunmaktadır. Bu uyarılar ifadeyi kaydetmenizi engellemeyecektir. İfadenizi geliştirmek için göz atabileceğiniz bir başka kaynak olarak kullanabilirsiniz. Örneğin, çalışırken birden fazla aynı isimle tanımlamaya çalışırsanız bunu anında farkedebilirsiniz.
Uyarılarda hataların bağlamına dair açıklamalar konusunda da geliştirmeler yapılmıştır. Artık bir hata oluşacaksa ne sebeple oluşabileceğine dair ayrıntıları aynı pencerede açıklandığını görebilirsiniz. Örneğin, değişken tanımlamayı unuttunuz ve hızlıca çalışmaya devam ettiniz. Output alanında açıklamayı görebilir, ifade penceresinin sağında oluşan kırmızı kutucuk sayesinde konumunu tespit edebilirsiniz.
- Otomatik biçimlendirme özelliğiyle daha okunabilir kodlar yazma
Detay kümeleriyle (FeatureSets) çalışırken, özellikle zincirleme bir ifade oluştururken kodu tek bir satırda okumak zor olabilir. Sağ tıklamayla açılan menüden veya klavye kısayolundan yazdığınız kodu daha kolay takip edilebilir bir hale getirebilirsiniz.
Şimdi Sıra Sizde
ArcGIS Arcade ile tanıştınız veya Arcade dilinin web ortamındaki yeni editörünü yakından incelediniz. Artık kendi verilerinizle özgün içerikler oluşturmaya başlayabilirsiniz.
Eğer blog yazısı faydalı oldu ama ben daha fazla öğrenmek istiyorum diyorsanız sizleri ArcGIS Arcade Eğitim Semineri’ne bekleriz. 29 Aralık 2022 saat 15:00’da gerçekleştireceğimiz eğitim seminerinde ArcGIS Arcade’e mercek tutacağız.
Eğitim seminerine kayıt olmak için bağlantıya tıklayabilirsiniz.
Bu blog yazısıyla seminer sonrasında karşılaştıysanız bu bağlantıya tıklayarak ArcGIS Arcade Eğitim Semineri isimli seminer kaydını izleyebilirsiniz.
Kaynaklar
ArcGIS Blog | Introducing the new Arcade editor in ArcGIS Online
Esri Türkiye, Aralık 2022