IT Język programowania

Apex

Definicja #

Apex to zastrzeżony, silnie typowany, obiektowy język programowania opracowany przez Salesforce. Działa wyłącznie na platformie Salesforce — nie jest językiem ogólnego przeznaczenia. Składnią przypomina Javę, co ułatwia adaptację deweloperom z doświadczeniem w Javie lub C#.

Kluczowe cechy Apex:

  • Integracja z Salesforce — bezpośredni dostęp do obiektów Salesforce (SObject), SOQL (Salesforce Object Query Language) i DML (Data Manipulation Language) jako pierwszoklasowe elementy języka
  • Triggers — kod wykonywany automatycznie przed lub po operacjach DML na obiektach Salesforce (before insert, after update itp.)
  • SOQL i SOSL — języki zapytań Salesforce; SOQL do zapytań obiektów (podobny do SQL), SOSL do pełnotekstowego wyszukiwania
  • Governor Limits — ograniczenia narzucone przez Salesforce na użycie zasobów (maks. 100 zapytań SOQL, 150 DML per transakcja); wymuszają efektywny kod
  • Test Coverage — Salesforce wymaga min. 75% pokrycia kodu testami przed wdrożeniem na produkcję
  • Klasy i interfejsy — OOP: dziedziczenie, polimorfizm, interfejsy; standardowe biblioteki Salesforce (Database, Schema, System)
  • Asynchroniczność — @Future, Queueable Apex, Batch Apex, Scheduled Apex do długotrwałych operacji

Apex jest ściśle powiązany z innymi technologiami Salesforce:

  • LWC (Lightning Web Components) — nowoczesny framework UI Salesforce (JavaScript/HTML); Apex jako backend przez @AuraEnabled metody
  • Visualforce — starsza technologia UI Salesforce z Apex jako backendem
  • Flow — deklaratywna automatyzacja Salesforce (low-code); Apex jako uzupełnienie dla złożonej logiki

Zastosowania #

  • Customizacja logiki biznesowej Salesforce — implementacja reguł, które nie są możliwe przez deklaratywną konfigurację (Flow, Process Builder)
  • Triggers na obiektach — automatyczne wykonywanie logiki przy tworzeniu, aktualizacji lub usuwaniu rekordów CRM
  • Integracje REST/SOAP — wywoływanie zewnętrznych API z platformy Salesforce (HttpRequest, Named Credentials)
  • Batch processing — przetwarzanie dużych zbiorów danych (Batch Apex) z obejściem Governor Limits przez podział na porcje
  • Testy jednostkowe — wymagane min. 75% pokrycie kodu; Salesforce wymusza kulturę testowania

Ścieżka nauki #

Apex jest językiem niszowym — nauka jest uzasadniona wyłącznie przy pracy z platformą Salesforce.

Zacznij od:

  • Trailhead (trailhead.salesforce.com) — bezpłatna platforma edukacyjna Salesforce; moduł "Apex Basics & Database"
  • Developer Edition org — bezpłatne środowisko Salesforce do nauki i eksperymentowania
  • Podstawy Apex: zmienne, kolekcje (List, Set, Map), SOQL, DML, klasy
  • Triggers: before/after insert/update/delete; handler pattern (TriggerHandler)

Następnie pogłębiaj:

  • Governor Limits — zrozumienie ograniczeń i wzorce ich obejścia (bulkification, SOQL poza pętlami)
  • Asynchronous Apex: @Future, Queueable, Batch, Scheduled
  • LWC (Lightning Web Components) — JavaScript frontend komunikujący się z Apex
  • Certyfikacje Salesforce: Platform Developer I (PD1) — podstawowa certyfikacja Apex developera

FAQ #

Czym jest Apex i do czego służy?
Apex to język programowania stworzony przez Salesforce do rozszerzania platformy Salesforce CRM. Działa wyłącznie na infrastrukturze Salesforce — nie można go używać poza tą platformą. Służy do implementacji złożonej logiki biznesowej, automatyzacji (triggers), integracji z zewnętrznymi systemami i przetwarzania dużych wolumenów danych (Batch Apex).
Czym są Governor Limits w Apex?
Governor Limits to ograniczenia narzucone przez Salesforce na zużycie zasobów per transakcja: maks. 100 zapytań SOQL, 150 operacji DML, 6 MB pamięci, 100 wywołań HTTP (callouts). Wymuszają pisanie efektywnego, bulkified kodu — SOQL nie może być wykonywany w pętlach, operacje DML muszą być zbiorowe. Governor Limits to kluczowa koncepcja w nauce Apex.
Czym różni się Apex od Javy?
Apex jest składniowo podobny do Javy (klasy, interfejsy, dziedziczenie, silne typowanie), ale ma fundamentalne różnice: działa tylko na platformie Salesforce, ma wbudowany SOQL i DML jako elementy języka, nie posiada dostępu do systemu plików ani zewnętrznych bibliotek (tylko biblioteki Salesforce), i podlega Governor Limits. Nie można używać Javy zamiast Apex w Salesforce.
Ile zarabia Salesforce Developer znający Apex?
Salesforce Developer ze znajomością Apex zarabia w Polsce od 12 000 do 28 000 zł brutto. Salesforce jest niszowym, wysokopłatnym ekosystemem — popyt na certyfikowanych deweloperów (Platform Developer I/II) przewyższa podaż. Certyfikacja Salesforce znacząco podnosi wartość rynkową.
Ostatnia aktualizacja:

Powiązane hasła

Technologie i biblioteki, które najczęściej pojawiają się razem z Apex w ogłoszeniach.

Cały słownik IT

Najnowsze oferty z Apex

Wybrane ogłoszenia wymagające Apex — wszystkie z widełkami.

Wszystkie 2

Przeglądaj słownik IT alfabetycznie

Wybierz literę, aby zobaczyć wszystkie hasła zaczynające się od niej.