FileMaker (bugünkü adıyla Claris FileMaker), veri saklama ile kullanıcı arayüzü tasarımını tek bir ortamda birleştiren, düşük kodlu (low-code) bir uygulama geliştirme ve veritabanı platformudur. Klasik sunucu tabanlı veritabanı motorlarının aksine, hem veriyi tutan katmanı hem de o veriyle çalışan ekranları, formları ve iş mantığını aynı araçla üretmenizi sağlar. Bu yazıda FileMaker'ın ne olduğunu, mimarisini, güçlü ve zayıf yönlerini ve yerini ansiklopedik bir derinlikte ele alıyoruz.
FileMaker Nedir?
FileMaker, tablolara dayalı ilişkisel bir veri modeli üzerine, sürükle-bırak mantığıyla çalışan bir arayüz tasarımcısı ve script tabanlı bir otomasyon katmanı ekleyen bütünleşik bir platformdur. Amacı, yazılım geliştirme konusunda derin uzmanlığı olmayan kişilerin bile kendi iş uygulamalarını (envanter takibi, CRM, proje yönetimi, fatura sistemleri gibi) oluşturabilmesini sağlamaktır.
Platformun ayırt edici yanı, veritabanı ile uygulama arasındaki sınırı büyük ölçüde ortadan kaldırmasıdır. Geleneksel yaklaşımda veritabanı motoru (örneğin bir SQL sunucusu) ayrı bir katmandır; arayüz ise başka bir dilde (web için HTML/JavaScript, masaüstü için ayrı bir framework) yazılır. FileMaker'da bu iki dünya tek bir dosya ve tek bir tasarım ortamında toplanır.
Kısa Tarihçe ve Marka Değişimi
FileMaker'ın kökleri masaüstü bilişimin ilk dönemlerine uzanır. Ürün, ilk yıllarında özellikle Macintosh ekosisteminde popülerleşmiş, ardından hem macOS hem de Windows platformlarını destekleyecek şekilde gelişmiştir. Yıllar içinde tek kullanıcılı masaüstü dosyalarından, sunucu barındıran ve web üzerinden erişilebilen bir platforma dönüşmüştür.
Ürünü geliştiren şirket, uzun süre "FileMaker, Inc." adıyla faaliyet gösterdikten sonra kurumsal kimliğini Claris International Inc. olarak güncellemiştir. Bu değişiklikle birlikte ürün ailesi de "Claris" şemsiyesi altında toplanmış, ancak platformun asıl bilinirliği hâlâ "FileMaker" adına dayanmaktadır.
FileMaker Platformunun Bileşenleri
FileMaker tek bir ürün değil, birlikte çalışan birkaç bileşenden oluşan bir platformdur. Temel parçaları şöyle özetlenebilir:
| Bileşen | Rolü | Çalıştığı Ortam |
|---|---|---|
| FileMaker Pro | Uygulama tasarımı, veri girişi ve geliştirme için ana istemci | Windows, macOS masaüstü |
| FileMaker Server | Dosyaları merkezi olarak barındırma, çok kullanıcılı erişim, yedekleme ve web yayını | Sunucu (Windows/macOS/Linux tarafı, sürüme bağlı) |
| FileMaker Go | Çözümlere mobil erişim için istemci | iPhone ve iPad (iOS/iPadOS) |
| WebDirect | Tarayıcı üzerinden, ek istemci kurmadan erişim | Web tarayıcısı |
| Data API / OData | Diğer sistemlerle entegrasyon için programatik erişim | REST tabanlı entegrasyon |
Bu bileşenler sayesinde tek bir çözüm; masaüstünde, mobilde ve tarayıcıda aynı veriyle çalışabilir. Geliştirici bir kez tasarlar, kullanıcılar farklı istemcilerden aynı çözüme bağlanır.
Veri Modeli: Tablolar, Alanlar ve İlişkiler
FileMaker ilişkisel bir veri modeli kullanır. Veriler tablolarda tutulur; her tablo alanlardan (field) oluşur ve tablolar arasında ilişkiler kurulabilir. İlişkiler, FileMaker'da "Relationships Graph" adı verilen görsel bir şema üzerinden yönetilir; bu grafik, tablo örnekleri (table occurrence) arasındaki bağlantıları gösterir.
Alanlar farklı türlerde olabilir: metin, sayı, tarih, saat, zaman damgası, konteyner (dosya/resim/medya) ve hesaplanan (calculation) alanlar. Özellikle konteyner alanları, belge ve medya dosyalarını doğrudan çözüm içinde saklayabilme özelliğiyle öne çıkar.
- Metin, sayı, tarih, saat ve zaman damgası gibi temel alan türleri
- Konteyner alanları ile PDF, görsel ve dosya saklama
- Hesaplama (calculation) alanları ile türetilmiş değerler
- Özet (summary) alanları ile toplam, ortalama ve sayım gibi raporlama değerleri
- Table occurrence tabanlı görsel ilişki grafiği
Layout: Arayüz Tasarımı
FileMaker'da kullanıcının gördüğü ekranlara layout denir. Bir layout, belirli bir tabloya bağlıdır ve o tablonun alanlarını, düğmeleri, sekmeleri, portalları (ilişkili kayıtları listeleyen alanlar) ve grafik öğelerini içerir. Layout tasarımı büyük ölçüde sürükle-bırak mantığıyla yapılır.
Aynı veriyi farklı amaçlar için farklı layout'larla sunmak mümkündür: veri girişi için ayrıntılı bir form, hızlı gözden geçirme için bir liste görünümü, yazdırma için ayrı bir rapor düzeni gibi. Bu esneklik, FileMaker'ın "veri bir kez, sunum çok" yaklaşımının temelidir.
Otomasyon: Scriptler ve Hesaplamalar
FileMaker'ın iş mantığı iki ana araçla kurulur: scriptler ve hesaplama ifadeleri. Scriptler, adım adım seçilen komutlardan oluşan otomasyon akışlarıdır; bir düğmeye basıldığında kayıt oluşturma, e-posta gönderme, rapor açma veya veri doğrulama gibi işleri yapar. Script adımları büyük ölçüde bir listeden seçilerek eklenir, bu da kodlama deneyimi az olan kullanıcılar için giriş engelini düşürür.
Hesaplama ifadeleri ise Excel formüllerine benzeyen, fonksiyon tabanlı bir ifade dilidir. Alan değerlerini türetmek, koşullu mantık kurmak ve metin/tarih işlemleri yapmak için kullanılır. Aşağıda tipik bir hesaplama örneği yer alıyor:
// Bir müşterinin tam adını birleştiren hesaplama
If (
IsEmpty ( Ad ) or IsEmpty ( Soyad );
"";
Ad & " " & Soyad
)Bu yaklaşım, PostgreSQL veya MySQL gibi motorlarda alışık olduğunuz SQL sorgularından farklıdır; mantık ağırlıklı olarak görsel araçlar ve fonksiyon ifadeleriyle kurulur.
SQL ile İlişkisi
FileMaker'ın günlük kullanımı SQL yazmayı gerektirmese de, platform SQL ile tamamen ilgisiz değildir. Çözüm içinde ExecuteSQL fonksiyonu ile sadece okuma amaçlı (SELECT) sorgular çalıştırmak mümkündür. Bu, karmaşık raporlama ve veri toplama işlerinde işe yarar.
-- FileMaker'da ExecuteSQL ile okunabilen tipik bir SELECT
SELECT Ad, Soyad, Sehir
FROM Musteriler
WHERE Sehir = 'Ankara'
ORDER BY SoyadAyrıca FileMaker, ODBC/JDBC arayüzleri üzerinden dışarıdaki sistemlerin FileMaker verisine erişmesine izin verebilir; aynı şekilde harici SQL kaynaklarını (ESS - External SQL Sources) çözüme bağlamak da mümkündür. Yani FileMaker, kendi yerel motoru dışında, ilişkisel SQL veritabanlarıyla köprü kurabilen bir platformdur.
Web ve API Entegrasyonu
Modern FileMaker çözümleri yalnızca masaüstüyle sınırlı değildir. WebDirect, bir çözümü ek istemci kurmadan tarayıcı üzerinden kullanmayı sağlar. Data API ise REST tabanlı bir arayüz sunarak FileMaker verisinin başka uygulamalar, web siteleri veya otomasyon araçları tarafından okunup yazılmasına imkân tanır.
- WebDirect ile tarayıcı üzerinden doğrudan kullanım
- Data API (REST) ile dış sistem entegrasyonu
- OData desteği ile standart sorgu/entegrasyon arayüzü
- Webhook ve harici servis çağrıları için script tabanlı istekler
Güçlü Yönleri
FileMaker'ın en büyük avantajı, fikirden çalışan bir uygulamaya geçiş hızıdır. Teknik ekibi sınırlı olan işletmelerde, tek bir kişi hem veri modelini hem arayüzü hem de otomasyonu kurabilir.
- Hızlı prototipleme ve uygulama geliştirme (low-code yaklaşım)
- Veritabanı, arayüz ve iş mantığının tek ortamda birleşmesi
- Masaüstü, mobil ve web istemcileriyle çok platformlu erişim
- Konteyner alanları sayesinde belge/medya yönetiminin kolaylığı
- ODBC/JDBC, ESS ve Data API ile entegrasyon yetenekleri
Sınırları ve Dikkat Edilmesi Gerekenler
FileMaker her senaryo için ideal değildir. Özellikle çok yüksek eşzamanlı kullanıcı sayısı, devasa veri hacimleri veya standart açık kaynak yığınlarıyla derin entegrasyon gerektiren projelerde başka çözümler daha uygun olabilir.
- Tescilli (proprietary) bir platform olması; lisanslamaya bağımlılık
- Çok büyük ölçekli, yüksek eşzamanlılık gerektiren senaryolarda klasik SQL motorlarının daha uygun olabilmesi
- Yerel veri modelinin saf SQL veritabanlarından farklı olması nedeniyle taşınabilirlik konusunda ek çaba
- Ekosistemin, açık kaynak veritabanı topluluklarına kıyasla daha dar olması
Tipik Kullanım Senaryoları
FileMaker, özellikle belirli bir departmanın veya küçük-orta ölçekli bir ekibin ihtiyacına göre şekillenen özel iş uygulamalarında öne çıkar. Standart, kutu ürünlerin karşılamadığı, işletmeye özgü akışların hızla dijitalleştirilmesi gerektiğinde iyi bir zemin sunar. Bu tür çözümler genellikle küçük bir çekirdek olarak başlar ve zaman içinde kullanıcı geri bildirimiyle büyür.
- Envanter, stok ve varlık takibi uygulamaları
- Departman içi CRM ve müşteri iletişim kayıtları
- Proje, görev ve iş emri yönetimi panoları
- Saha ekipleri için mobil veri toplama ve denetim formları
- Fatura, teklif ve basit muhasebe yardımcı sistemleri
- Etkinlik, üyelik ve randevu yönetimi çözümleri
Bu senaryoların ortak noktası, veri modelinin çok karmaşık olmaması ama arayüz ve iş akışının işletmeye özgü olmasıdır. FileMaker'ın layout ve script yaklaşımı, bu tür ihtiyaçlarda geleneksel yazılım geliştirmeye kıyasla daha kısa sürede sonuç verir.
FileMaker'ı Ne Zaman Tercih Etmeli?
FileMaker; hızlı sonuç, sınırlı geliştirme ekibi ve iç kullanım ağırlıklı iş uygulamaları söz konusu olduğunda güçlü bir seçenektir. Departman içi araçlar, saha uygulamaları, envanter ve varlık takibi, basit CRM ihtiyaçları tipik kullanım alanlarıdır. Karar verirken yalnızca bugünkü ihtiyacı değil, çözümün önümüzdeki yıllarda nasıl büyüyeceğini de göz önünde bulundurmak önemlidir.
Bir çözümü FileMaker üzerinde inşa etmeden önce, veriyi ileride başka bir sisteme taşıma olasılığını da düşünmek faydalıdır. Data API ve ODBC/JDBC gibi arayüzler bu geçişleri kolaylaştırsa da, tescilli bir platforma bağımlılık her zaman değerlendirilmesi gereken bir faktördür.
Buna karşılık, halka açık ve çok yüksek trafikli bir web servisi, karmaşık analitik veya açık kaynak veri altyapısı üzerine kurulu bir mimari hedefliyorsanız, PostgreSQL veya MySQL gibi motorlar çoğu zaman daha uygun bir temel sunar. Hafif, gömülü ve dosya tabanlı bir çözüm arıyorsanız SQLite de değerlendirilebilir. Farklı veritabanı ailelerini karşılaştırmak için veritabanı türleri rehberimize göz atabilirsiniz.
Sık Sorulan Sorular
FileMaker bir SQL veritabanı mıdır?
Tam olarak değil. FileMaker'ın kendi yerel veri motoru vardır ve günlük geliştirme SQL yazmadan yapılır. Ancak ExecuteSQL ile okuma sorguları çalıştırabilir, ODBC/JDBC ve ESS ile SQL kaynaklarıyla köprü kurabilirsiniz.
FileMaker hangi platformlarda çalışır?
FileMaker Pro masaüstü istemcisi Windows ve macOS üzerinde; FileMaker Go iPhone ve iPad üzerinde; WebDirect ise tarayıcı üzerinden çalışır. Merkezi barındırma FileMaker Server ile sağlanır.
Programlama bilmeden FileMaker öğrenilebilir mi?
Temel çözümler için evet. Layout tasarımı ve script adımları büyük ölçüde görsel araçlarla yapılır. Yine de karmaşık iş mantığı, hesaplama ifadeleri ve entegrasyonlar için mantıksal düşünme ve pratik gereklidir.