Web Sitesi(leri) | developer.salesforce.com/docs/platform/apex/guide/ | ||||||||
|---|---|---|---|---|---|---|---|---|---|
Etkilendiği Diller | Java | ||||||||
Platform(lar) | Salesforce Lightning Platform | ||||||||
Tür(ler) | Tescilli Programlama Dili | ||||||||
Lisans | Ticari (Proprietary) | ||||||||
Paradigma | Nesne Yönelimli, Olay Tabanlı (Event-driven) | ||||||||
İlk Yayınlanma | Winter '07 Sürümü (2006) | ||||||||
Geliştirici(ler) | Salesforce Inc. | ||||||||
Apex, Salesforce tarafından geliştirilen, Lightning Platformu (eski adıyla Force.com) üzerinde çalışan, tescilli (proprietary), nesne yönelimli ve güçlü tipli (strongly-typed) bir programlama dilidir. Sözdizimi (syntax) açısından Java'ya oldukça benzeyen Apex, geliştiricilerin ve yöneticilerin Salesforce sunucularında karmaşık iş mantığı ve süreç otomasyonları yürütmesine olanak tanır. Temel amacı, Salesforce'un standart, beyana dayalı (declarative) "tıkla-yap" araçlarının (Flow gibi) yetersiz kaldığı durumlarda, özel ve gelişmiş otomasyonlar oluşturmak için bir "pro-code" çözümü sunmaktır.
Apex'in varoluş nedeni, Salesforce'un çok kiracılı (multi-tenant) bulut mimarisinin getirdiği zorunluluklardır. Platform üzerindeki tüm müşteriler aynı kaynakları paylaştığı için, Apex, yazılan kodun bu paylaşılan kaynakları aşırı tüketmesini veya diğer kiracıların performansını olumsuz etkilemesini önleyecek şekilde tasarlanmıştır. Bu nedenle, Apex kodu her zaman platform üzerinde, talep üzerine (on-demand) ve belirli sınırlar (governor limits) dahilinde derlenir, saklanır ve çalıştırılır.
Çalışma prensibi, olay tabanlı (event-driven) bir modele dayanır:
Apex, Java'ya aşina olan geliştiriciler için öğrenmesi kolay olacak şekilde tasarlanmıştır, ancak kendine özgü güçlü özellikleri vardır:
Apex'i diğer programlama dillerinden ayıran en temel kavram, yönetici sınırlarıdır. Çok kiracılı ortamda kaynakların adil kullanımını sağlamak için Salesforce, tek bir Apex işlemi sırasında yapılabilecek işlemlerin sayısına katı sınırlar koyar. Bunlar arasında şunlar bulunur:
Bu sınırlar, geliştiricileri verimli ve optimize edilmiş kod yazmaya zorlar.
Apex, Salesforce platformunun "pro-code" (kodlu geliştirme) katmanını oluşturur ve "low-code" (az kodlu) araçlarla birlikte çalışır:
Apex kodu geliştirmek için çeşitli araçlar mevcuttur:
Apex, kapalı kaynaklı bir dil olmasına rağmen, Salesforce'un Trailhead platformu ve Trailblazer Community aracılığıyla desteklenen ve aktif bir geliştirici topluluğuna sahiptir.
Salesforce Developers. "Apex Developer Guide." Salesforce. Erişim 16 Ağustos 2025. https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_dev_guide.htm.
Salesforce Developers. "Apex Triggers." Apex Developer Guide. Erişim 16 Ağustos 2025. https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_triggers.htm.
Salesforce Developers. "Execution Governors and Limits." Salesforce. Erişim 16 Ağustos 2025. https://developer.salesforce.com/docs/atlas.en-us.salesforce_app_limits_cheatsheet.meta/salesforce_app_limits_cheatsheet/salesforce_app_limits_platform_apex.htm.
Salesforce Developers. "SOQL and SOSL Reference." Salesforce. Erişim 16 Ağustos 2025. https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_sosl.htm.
Trailhead. "Apex Basics & Database." Salesforce. Erişim 16 Ağustos 2025. https://trailhead.salesforce.com/content/learn/modules/apex_database.
Web Sitesi(leri) | developer.salesforce.com/docs/platform/apex/guide/ | ||||||||
|---|---|---|---|---|---|---|---|---|---|
Etkilendiği Diller | Java | ||||||||
Platform(lar) | Salesforce Lightning Platform | ||||||||
Tür(ler) | Tescilli Programlama Dili | ||||||||
Lisans | Ticari (Proprietary) | ||||||||
Paradigma | Nesne Yönelimli, Olay Tabanlı (Event-driven) | ||||||||
İlk Yayınlanma | Winter '07 Sürümü (2006) | ||||||||
Geliştirici(ler) | Salesforce Inc. | ||||||||
Henüz Tartışma Girilmemiştir
"Apex (Programlama Dili)" maddesi için tartışma başlatın
Amaç ve Temel Çalışma Prensibi
Temel Özellikler ve Sözdizimi
Yönetici Sınırları (Governor Limits)
Ekosistemdeki Yeri
Geliştirme Araçları ve Topluluk
Bu madde yapay zeka desteği ile üretilmiştir.