
Said Enes Subaşı
20 July 2025
Giriş
Yirmi birinci yüzyılın başından bu yana iş dünyasının dijitalleşmesi, otomasyon ve veriye olan talebin artmasına neden oldu. CRM artık sadece satış takibini değil; süreç otomasyonunu, benzersiz iş kurallarının uygulanmasını ve kullanıcı deneyimi özelleştirmesini de kapsıyor. Bu değişimin merkezinde bir CRM aracı olmanın yanı sıra uygulama geliştirme için bir ekosisteme dönüşen Salesforce platformu yer alıyor.
Bu gelişimin tasarımcılarından biri Apex. Apex bulut tabanlı mimarisi, Java benzeri sözdizimi ve Salesforce ile yakın entegrasyonu sayesinde günümüz geliştiricilerine esneklik, hız ve güvenlik sağlayan özel bir programlama dilidir.
Apex Nedir?
Salesforce yalnızca Salesforce platformuyla uyumlu, sunucu taraflı, nesne yönelimli bir programlama dili olan Apex'i geliştirdi. İlk olarak 2006 yılında tanıtılan Apex, programcılara veritabanı işlemleri, iş mantığı, kullanıcı etkileşimleri ve arka plan süreçleri üzerinde doğrudan kod kontrolü sağlamakla beraber rakiplerine nazaran görece kolay öğrenilmesiyle de öne çıkmaktadır.

Apex'in Temel Özellikleri
- Platforma Özgü Kapsamlı Entegrasyon
Apex, Salesforce'un platform hizmetleri (Güvenlik, Paylaşım, İş Akışı) ve veri modelleriyle (Hesap, Kişi, Fırsat vb.) kolayca entegre olur. Bu sayede CRM bileşenlerine doğrudan erişerek üçüncü taraf hizmetlere olan ihtiyacı ortadan kaldırır. - SOQL ve SOSL ile Güçlü Veri Sorgulama Apex, SQL'e benzeyen SOQL (Salesforce Nesne Sorgulama Dili) kullanarak verileri hızlı ve güvenli bir şekilde sorgulamayı mümkün kılar. SOSL ile tam metin araması yapılabilir. Her ikisi de veri kayıtlarını özelleştirmek için olmazsa olmazdır.
- Tetikleyici Tabanlı Otomasyon
Apex veritabanı işlemlerinde "önce" ve "sonra" işlemlerini gerçekleştirmek için tetikleyiciler kullanır. Örneğin bir kayıt kapatıldığında otomatik olarak başka bir işlem gerçekleştirilebilir. - Toplu ve Eşzamansız Apex İşlemleri
Gelecek Yöntemleri, Sıraya Alınabilir Apex, Toplu Apex ve Zamanlanmış İşler gibi sistemler, yoğun veri içeren işlemler için tutarlı bir kullanıcı deneyimi sağlarken sistem kaynaklarını verimli bir şekilde kullanır.
Kaynak Yönetimi için Düzenleyici Sınırları
Apex her işlem için kaynakları bir havuzda toplar (örneğin 150'lik bir DML işlem sınırı ve 100'lük bir SOQL sorgu sınırı). Bu platformla aynı anda binlerce kullanıcıya hizmet verilebilir. Kod yazarken bu sınırlamaların farkında olmak temel sorumluluğu Apex geliştiricisine aittir.
Apex'in Kısa Tarihçesi
- 2006: Apex, "on-demand programming language" yani isteğe bağlı bir programlama dilidir. (Dreamforce 2006)
- 2008: Visualforce ile birlikte UI+Backend yapısı kuruldu.
- Sonrası 2010: Asenkron yapılar eklendi.
- 2015+: Lightning Experience ile Apex, contemporary arayüzlerle entegre hale geldi.
- 2020 sonrası: Apex, Einstein AI, Functions, Platform Events gibi yeni teknolojilerle entegre olmaya başladı.
Apex Nasıl Yazılır?

- Salesforce Geliştiricisi Olarak Kaydolun
Apex tarafından yalnızca Salesforce platformu kullanılmaktadır. Bu nedenle özel bir geliştirme ortamı (developer.org) edinmek ilk adımdır.- İlk adım https://developer.salesforce.com/signup adresini ziyaret etmektir.
- Ücretsiz bir Salesforce Developer Edition hesabı oluşturun.
- Hesabınızı onaylamak için size e-posta ile gönderilen aktivasyon bağlantısını kullanın.
- Bir Geliştirme Ortamı Oluşturun
Apex çeşitli ortamlarda yazılabilir. En popüler ikisi şunlardır:- A. Geliştirici Konsolu (Yeni Başlayanlar İçin Mükemmel)
- Salesforce arayüzünün sağ üst köşesindeki profil simgesine tıklayın.
- "Geliştirici Konsolu" (Developer Console) seçeneğini belirleyin.
- Kod yazmak için Dosya → Yeni → Apex Sınıfı veya Hata Ayıklama → Anonim Çalıştırma Penceresini Aç'ı seçin.
- Salesforce Uzantı Paketi + Visual Studio Code (Profesyonel gelişim için önerilir). Gereken Adımlar:
- Visual Studio Code'u (VS Code) kurun.
- https://code.visualstudio.com/ adresini ziyaret edin.
- https://developer.salesforce.com/tools/sfdxcli adresine giderek Salesforce CLI'yi yükleyin.
- VS Code Uzantıları bölümünden Salesforce Uzantı Paketi'ni yükleyin.
- Komut satırında bir proje oluşturmak için aşağıdaki komutları kullanın:
- A. Geliştirici Konsolu (Yeni Başlayanlar İçin Mükemmel)
sfdx force:project:create -n MyApexProject
cd MyApexProject
sfdx force:auth:web:login -a DevOrg
sfdx force:org:openProjeye bağlandıktan sonra kodlarınızı force-app/main/default/classes/ klasöründe yazabilirsiniz.
3. İlk Apex Sınıfını Yazalım
public class MerhabaSalesforce {
public static void selamla(String isim) {
System.debug('Merhaba, ' + isim + '!');
}
}Anonymus windowda yazabilmek için:
MerhabaSalesforce.selamla('Dünya');4. Test Etme: Execute Anonymous Window
Salesforce kodunuzu hızlıca test etmeniz için “Execute Anonymous” adlı bir pencere sunar. Bu pencereye istediğiniz satırları yapıştırıp çalıştırabilirsiniz. Ayrıca logları Debug → View Log kısmından inceleyebilirsiniz.
Apex, Salesforce ekosisteminde iş mantığını kodla ifade edebilmenin anahtarıdır. Java benzeri yapısı sayesinde öğrenilmesi görece kolay, ancak platformun kendine özgü dinamikleri nedeniyle derinleşmesi zaman alan bir dildir. Veritabanı işlemlerini tetikleyicilerle özelleştirmekten, asenkron görevleri programlamaya ve kullanıcı etkileşimlerini şekillendirmeye kadar geniş bir uygulama yelpazesi sunar.
