Tutorial Pengembang Salesforce: Memulai Pemrograman Salesforce



Blog tutorial ini menjelaskan berbagai konsep pemrograman seperti visualforce dan apex yang harus Anda ketahui untuk memulai karir Anda sebagai pengembang Salesforce.

Apakah Anda bercita-cita menjadi pengembang aplikasi perangkat lunak? Apakah Anda ingin membangun aplikasi Anda sendiri di platform Force.com? Jika jawaban Anda untuk pertanyaan ini adalah ya, maka Anda harus mempertimbangkan untuk menjadi pengembang Salesforce.

Di blog saya sebelumnya, saya pernah membahas tentang , Sertifikasi Salesforce dan juga menunjukkan kepada Anda membangun aplikasi khusus menggunakan opsi deklaratif yang tersedia di Salesforce. Di blog ini, saya akan membahas tentang opsi terprogram yang tersedia di Salesforce untuk mengembangkan aplikasi Anda.





Arsitektur MVC

Sebelum saya terjun ke dalam membangun aplikasi menggunakan Visualforce dan Apex, saya akan membahas terlebih dahulu tentang arsitektur Salesforce Model-View-Controller. Di bawah ini adalah diagram yang menguraikan arsitektur Model-View-Controller Salesforce bersama dengan komponen Salesforce yang berbeda.

mvc - pengembang tenaga penjualan - edureka



Model: Modelnya adalah objek data, bidang, dan hubungan Salesforce Anda. Ini merupakan objek standar (Akun, Peluang, dll.) Dan kustom (objek yang Anda buat).

Melihat: Tampilan mewakili penyajian data yaitu antarmuka pengguna. Di Salesforce, tampilan terdiri dari halaman visualforce, komponen, tata letak halaman dan tab.

Pengontrol: Kontroler adalah blok pembangun dari logika aplikasi yang sebenarnya. Anda dapat melakukan tindakan setiap kali pengguna berinteraksi dengan visualforce.



Salesforce beraksi

Untuk menjadi pengembang Salesforce, Anda harus terlebih dahulu mengetahui cara kerja aplikasi Salesforce. Di bawah ini adalah gambar yang memberi Anda gambaran lengkap tentang bagaimana Salesforce beraksi. Klien atau pengguna meminta atau memberikan informasi ke aplikasi Salesforce. Ini biasanya dilakukan dengan menggunakan Visualforce. Informasi ini kemudian diteruskan ke lapisan logika aplikasi, yang ditulis di Apex. Bergantung pada informasinya, data dimasukkan atau dihapus dari database. Salesforce juga memberi Anda opsi untuk menggunakan layanan web untuk mengakses logika aplikasi secara langsung.

Pengembang Salesforce dapat mendekati pengembangan baik menggunakan opsi deklaratif atau terprogram. Di bawah ini adalah gambar yang memberi Anda detail tentang pendekatan deklaratif dan terprogram yang tersedia di setiap antarmuka pengguna, logika bisnis, dan lapisan model data. Untuk membuat antarmuka pengguna Anda, Anda dapat menggunakan pendekatan deklaratif yang menggunakan tata letak halaman dan jenis catatan atau menggunakan pendekatan terprogram seperti halaman dan komponen visualforce. Umumnya, Anda harus menggunakan pendekatan terprogram hanya jika Anda tidak dapat mencapai antarmuka pengguna yang diperlukan dengan menggunakan pendekatan deklaratif. Untuk mengembangkan lapisan logika bisnis aplikasi Anda, Anda dapat menggunakan opsi deklaratif Salesforce dari alur kerja, aturan validasi, dan proses persetujuan atau menggunakan pendekatan terprogram seperti pemicu, pengontrol, dan kelas. Untuk mengakses model data, Anda dapat menggunakan pendekatan deklaratif menggunakan objek, bidang, dan hubungan. Anda juga dapat mengakses model data secara terprogram menggunakan API metadata, API REST, dan API massal.

Kami telah melihat cara kerja aplikasi Salesforce, arsitektur MVC yang digunakan untuk pengembangan di Salesforce, dan dua pendekatan berbeda yang tersedia untuk pengembang Salesforce. Sekarang, izinkan saya membahas tentang Visualforce dan Apex.

Visualforce

Untuk membangun aplikasi di platform Salesforce, Anda perlu mengetahui cara mengembangkan antarmuka pengguna dan menulis logika aplikasi. Sebagai pengembang Salesforce, Anda dapat mengembangkan antarmuka pengguna menggunakan Visualforce. Visualforce adalah kerangka kerja antarmuka pengguna untuk platform Force.com. Sama seperti bagaimana Anda dapat menggunakan kerangka kerja Angular-JS javascript untuk membangun antarmuka pengguna untuk situs web Anda, Anda dapat menggunakan Visualforce untuk merancang dan membangun antarmuka pengguna untuk aplikasi Salesforce Anda.

Anda dapat menggunakan visualforce kapan pun Anda perlu membuat halaman kustom. Beberapa contoh situasi di mana Anda dapat menggunakan Visualforce adalah:

  • Untuk membuat template email
  • Untuk mengembangkan antarmuka pengguna seluler
  • Untuk menghasilkan data PDF yang disimpan di Salesforce
  • Untuk menyematkannya ke dalam tata letak halaman standar Anda
  • Untuk mengganti halaman Salesforce standar
  • Untuk mengembangkan tab khusus untuk aplikasi Anda

Halaman visualforce terdiri dari dua elemen utama:

  • Visualforce Markup - Markup visualforce menyertakan tag visualforce, HTML, JavaScript atau kode lain yang mendukung web.
  • Pengontrol Visualforce - Pengontrol visualforce berisi instruksi yang menentukan apa yang terjadi ketika pengguna berinteraksi dengan komponen. Pengontrol visualforce ditulis menggunakan bahasa pemrograman Apex.

Anda dapat melihat kode halaman Visualforce sederhana bersama dengan berbagai komponen di bawah ini:

Di bawah ini saya telah menunjukkan kepada Anda langkah-langkah untuk menulis halaman gaya visual sederhana untuk menampilkan negara dan nilai mata uangnya:

Langkah 1: Dari Setup, masukkan Visualforce Pages di kotak Quick Find, lalu pilih Visualforce Pages dan klik New.

Langkah 2: Di editor tambahkan kode berikut untuk menampilkan negara dan nilai mata uangnya:

perbedaan antara jquery dan javascript

Puncak

Setelah Anda selesai mengembangkan antarmuka pengguna, sebagai pengembang Salesforce, Anda perlu mengetahui cara menambahkan logika khusus ke aplikasi Anda. Anda dapat menulis kode pengontrol dan menambahkan logika khusus ke aplikasi Anda menggunakan bahasa pemrograman Apex. Apex adalah bahasa pemrograman berorientasi objek yang memungkinkan Anda untuk mengeksekusi aliran dan pernyataan kontrol transaksi pada platform Force.com. Jika Anda pernah menggunakan bahasa pemrograman java sebelumnya maka Anda dapat dengan mudah mempelajari Apex. Sintaks Apex 70% mirip dengan java.

Anda dapat menggunakan Apex kapan pun Anda ingin menambahkan logika khusus ke aplikasi Anda. Beberapa contoh situasi di mana Anda dapat menggunakan Apex adalah:

  • Saat Anda ingin menambahkan layanan web dan email ke aplikasi Anda
  • Saat Anda ingin menjalankan proses bisnis yang kompleks
  • Saat Anda ingin menambahkan aturan validasi yang kompleks ke aplikasi Anda
  • Saat Anda ingin menambahkan logika kustom pada operasi seperti menyimpan record

Di bawah ini adalah tangkapan layar kode Apex bersama dengan berbagai komponennya seperti pernyataan perulangan, pernyataan aliran kontrol, dan kueri SOQL:

Sekarang kita telah memahami apa itu Apex dan kapan menggunakannya, izinkan saya mendalami pemrograman Apex.

Pemrograman Di Apex

Jika Anda telah memahami konsep yang dijelaskan di atas, berarti Anda sudah setengah jalan untuk menjadi pengembang Salesforce. Di bagian ini, saya akan mendalami Apex lebih dalam dengan memberi Anda informasi tentang berbagai jenis data dan variabel, berbagai cara untuk mengambil data dari database, dan menunjukkan kepada Anda cara menulis kelas dan metode.

Jenis Data Dan Variabel

Salesforce menawarkan 4 tipe data dan variabel yang berbeda. Tabel di bawah ini memberi Anda informasi tentang masing-masing dari 4 tipe data:

Jenis dan Variabel Data Deskripsi Contoh
PrimitifTipe data primitif di Salesforce termasuk boolean, tanggal, integer, objek, string, dan waktu.Boolean isSunny = true

Bilangan bulat I = 1

String myString = “Halo Dunia”

sObjectssObject mengacu pada objek apa pun yang dapat disimpan dalam database.Akun a = Akun baru ()

MyCustomObj__c obj = new MyCustomObj__c ()

KoleksiApex memiliki jenis koleksi berikut:

  • Daftar
  • Maps
  • Set
Daftar var_lst = Daftar baru ()

Set setOne = Set baru ()

Map var_map = Peta baru ()

EnumEnum adalah tipe data abstrak dengan nilai yang mengambil sekumpulan pengenal yang terbatas.Musim enum publik {Musim Dingin, Musim Semi, Musim Panas, Musim Gugur}


SOQL dan SOSL

Mengembangkan aplikasi perangkat lunak mengharuskan Anda mengetahui cara memasukkan dan mengambil data dari database. Di Salesforce, Anda dapat mengambil data dari database menggunakan SOQL dan SOSL. Jika Anda ingin menjadi pengembang Salesforce, Anda harus mengetahui kedua bahasa kueri ini. Saya telah memberi Anda penjelasan mendetail tentang bahasa-bahasa di bawah ini:

  • SOQL adalah singkatan dari Salesforce Object Query Language. Menggunakan pernyataan SOQL, Anda dapat mengambil data dari database sebagai daftar sObjects, sObject tunggal atau Integer untuk metode hitungan. Anda dapat menganggap SOQL sebagai padanan dari kueri SELECT SOQL. Saya telah memberikan contoh kueri SOQL di bawah ini:

Daftar accList = [SELECT Id, Name FROM Account WHERE Name = ”YourName”]

  • SOSL adalah singkatan dari Salesforce Object Search Language. Anda dapat menggunakan pernyataan SOSL untuk mengambil daftar sObjects, di mana setiap daftar berisi hasil pencarian untuk jenis sObject tertentu. Anda bisa menganggap SOSL sebagai padanan untuk kueri pencarian database. Saya telah memberikan contoh kueri SOSL di bawah ini:

DaftarsearchList = [TEMUKAN ‘peta *’ DI SEMUA BIDANG MENGEMBALIKAN Akun (Id, Nama), Kontak, Peluang, Prospek]

Anda dapat menggunakan SOQL jika Anda mengetahui di objek mana data tersebut berada dan menggunakan SOSL jika Anda tidak mengetahui nama objek tempat data tersebut berada.

Kelas Dan Metode

Seperti di setiap bahasa pemrograman berorientasi objek lainnya, Anda dapat mengembangkan kelas dan metode menggunakan Apex. Anda dapat menganggap kelas sebagai cetak biru yang menggunakan objek individual yang dibuat dan digunakan. Anda dapat menganggap metode sebagai subprogram, yang bekerja pada data dan mengembalikan nilai. Saya telah memberi Anda sintaks untuk menulis kelas dan metode di bawah ini:

Sekarang saya akan menunjukkan cara menambahkan kelas dan metode di Apex:

Langkah 1: Dari setup masukkan Apex Classes di QuickFind Box, lalu pilih Apex Classes dan klik New.

Langkah 2: Di editor tambahkan definisi kelas berikut:

Kelas umum HelloWorld {

}

Langkah 3: Tambahkan definisi metode antara kurung buka dan tutup kelas:

Kekosongan statis publik helloWorldMethod (Negara__c [] negara) {

Untuk (Country__c country: countries) {

country.currency_value__c * = 1.5

}

}

Langkah 4: Klik Simpan dan Anda akan mendapatkan kelas lengkap Anda sebagai:

Kelas umum HelloWorld {

Kekosongan statis publik helloWorldMethod (Negara__c [] negara) {

Untuk (Country__c country: countries) {

country.currency_value__c * = 1.5

apa yang dilakukan pemindai di java

}

}

Anda dapat menggunakan sintaks dan contoh yang ditunjukkan di atas untuk mengembangkan kelas dan metode Anda sendiri untuk aplikasi Salesforce. Untuk menjadi pengembang Salesforce, Anda perlu tahu lebih dari sekadar menulis kelas dan metode. Di beberapa bagian berikutnya, saya akan membahas topik yang membuat pengembangan aplikasi di platform Salesforce sederhana dan mudah.

Pemicu

Setiap pengembang Salesforce harus mengetahui konsep pemicu Salesforce. Anda sebelumnya mungkin pernah menemukan pemicu saat bekerja dengan database lain. Pemicu tidak lain adalah program tersimpan yang dipanggil saat Anda melakukan tindakan sebelum atau setelah perubahan pada catatan Salesforce. Misalnya, pemicu dapat dijalankan sebelum operasi penyisipan dilakukan atau saat operasi pembaruan dilakukan. Ada dua jenis pemicu:

  • Sebelum pemicu - Anda dapat menggunakan before trigger untuk memperbarui atau memvalidasi nilai record sebelum disimpan ke database.
  • Setelah pemicu - Anda dapat menggunakan pemicu setelah untuk mengakses nilai bidang yang ditetapkan oleh sistem dan untuk memengaruhi perubahan di catatan lain.

Pemicu dijalankan sebelum atau sesudah operasi di bawah ini:

  • Memasukkan
  • Memperbarui
  • Menghapus
  • Pergilah
  • Ups
  • Batalkan penghapusan

Saya akan menunjukkan kepada Anda bagaimana menambahkan pemicu di puncak dengan menambahkan pemicu untuk objek Negara yang telah Anda lihat di kelas di atas:

Langkah 1: Dari pengaturan manajemen objek untuk negara, buka Pemicu dan klik Baru.

Langkah 2: Di editor pemicu, tambahkan definisi pemicu berikut:

Trigger HelloWorldTrigger di Country__c (sebelum memasukkan) {

Country__c countries = Trigger.new

HelloWorld.helloWorldMethod (negara)

}

Kode di atas akan memperbarui mata uang negara Anda sebelum dimasukkan ke dalam database.

Batas Gubernur

Anda mungkin tahu bahwa Salesforce berfungsi pada arsitektur multi-tenant, ini berarti sumber daya dibagikan ke klien yang berbeda. Untuk memastikan tidak ada klien yang memonopoli sumber daya bersama, mesin run-time Apex secara ketat memberlakukan batas gubernur. Jika kode Apex Anda pernah melebihi batas, gubernur yang diharapkan mengeluarkan pengecualian waktu proses yang tidak dapat ditangani. Jadi, sebagai pengembang Salesforce Anda harus sangat berhati-hati saat mengembangkan aplikasi Anda.

Operasi Massal

Sebagai pengembang Salesforce, Anda harus selalu memastikan bahwa kode Anda mempertahankan batas gubernur. Untuk memastikan Apex mematuhi batas gubernur, Anda harus menggunakan pola desain panggilan massal. Operasi massal mengacu pada melakukan lebih dari satu catatan saat Anda membuat operasi DML. Sebelum Anda membuat operasi DML, Anda harus selalu memastikan bahwa Anda menambahkan baris ke dalam koleksi. Di bawah ini adalah gambar yang memberi Anda deskripsi lengkap tentang pola desain operasi massal.

DML dan Operasi Data

Anda telah melihat sebelumnya cara mengambil data dari database menggunakan kueri SOQL dan SOSL. Sekarang mari kita lihat berbagai pernyataan yang dapat Anda gunakan untuk memasukkan data ke dalam database Salesforce. Untuk pengembang Salesforce, adalah suatu keharusan untuk mengetahui apa yang dapat dilakukan pernyataan ini dan bagaimana menggunakannya.

Pernyataan DML

Deskripsi
MemasukkanMenambahkan satu atau beberapa sObject ke data organisasi Anda
MemperbaruiMengubah satu atau lebih catatan sObject yang sudah ada
UpsMembuat catatan baru dan memperbarui catatan sObject
MenghapusMenghapus satu atau lebih catatan sObject yang sudah ada
Batalkan penghapusanMengembalikan satu atau lebih rekaman sObject yang sudah ada
PergilahMenggabungkan hingga tiga rekaman dari jenis sObject yang sama ke dalam satu rekaman

Visualforce dan Apex

Anda telah menempuh perjalanan panjang dalam perjalanan Anda menjadi pengembang Salesforce. Saya selanjutnya akan membahas tentang bagaimana Anda dapat mengintegrasikan halaman visualforce dan kode apex Anda. Anda dapat menghubungkan halaman visualforce dan kode apex Anda dengan menggunakan pengontrol dan ekstensi.

  • Pengontrol Kustom -Saat Anda ingin halaman visualforce Anda berjalan sepenuhnya dalam mode sistem, yaitu tanpa izin dan keamanan tingkat lapangan, gunakan pengontrol khusus.

  • Ekstensi Pengontrol -Jika Anda ingin menambahkan tindakan atau fungsi baru yang memperluas fungsionalitas pengontrol standar atau kustom, gunakan ekstensi pengontrol.

Dalam kode di bawah ini, saya telah menunjukkan kepada Anda cara menyertakan pengontrol kustom di halaman visualforce Anda:

Dalam kode di bawah ini, saya telah menunjukkan kepada Anda cara menyertakan ekstensi pengontrol di halaman visualforce Anda:

Penanganan Pengecualian

Jika Anda telah mengembangkan aplikasi sebelumnya, maka Anda pasti akan menemukan pengecualian. Pengecualian adalah kondisi khusus yang mengubah aliran normal eksekusi program. Misalnya, membagi angka dengan nol atau mengakses nilai daftar yang di luar batas. Jika Anda tidak menangani pengecualian ini, eksekusi proses akan berhenti dan DML akan dibatalkan.

Sebagai pengembang Salesforce, Anda perlu mengetahui cara menangkap pengecualian ini dan apa yang harus dilakukan setelah Anda menangkapnya. Untuk menangkap pengecualian, Anda dapat menggunakan try, catch, dan akhirnya membangun. Setelah Anda menangkap pengecualian tersebut, Anda dapat menanganinya dengan cara yang disebutkan di bawah ini:

Pengecualian Bagaimana Menanganinya
DMLGunakan metode addError () pada rekaman atau bidang
VisualforceGunakan kelas ApexPages.message
Mengirim email tentang pengecualianAnda dapat memberi tahu pengembang melalui email
Masuk ke objek khususAnda dapat menggunakan metode masa depan untuk menangkap objek khusus

Sampai sekarang di blog pengembang Salesforce ini Anda telah melihat cara mengembangkan antarmuka pengguna Anda menggunakan Visualforce, Anda telah melihat cara menulis logika khusus menggunakan Apex dan berbagai konsep seperti pemicu, operasi massal, dan penanganan pengecualian. Terakhir namun tidak kalah pentingnya, kita akan melihat kerangka pengujian Salesforce.

Menguji

Sebagai pengembang Salesforce, Anda perlu tahu cara menguji kode yang Anda tulis. Pengembangan yang digerakkan oleh pengujian adalah cara yang baik untuk memastikan keberhasilan jangka panjang aplikasi perangkat lunak Anda. Anda perlu menguji aplikasi Anda agar dapat memvalidasi bahwa aplikasi Anda berfungsi seperti yang diharapkan. Terutama, jika Anda mengembangkan aplikasi untuk pelanggan, maka mengujinya sebelum mengirimkan produk akhir sangat penting. Apex memberi Anda kerangka kerja pengujian yang memungkinkan Anda menulis pengujian unit, menjalankan pengujian, memeriksa hasil pengujian, dan memiliki hasil cakupan kode.

Anda dapat menguji aplikasi Anda dengan dua cara:

  1. Melalui antarmuka pengguna Salesforce, cara pengujian ini penting tetapi tidak akan mencakup semua kasus penggunaan untuk aplikasi Anda
  2. Anda dapat menguji fungsionalitas massal, hingga 200 catatan dapat diteruskan melalui kode Anda menggunakan SOAP API atau pengontrol kumpulan standar visualforce

Kelas pengujian tidak memasukkan data ke database dan dianotasi dengan @isTest. Saya telah menunjukkan kepada Anda cara menambahkan kelas uji, dengan menambahkan kelas uji ke kelas HelloWorld di bawah ini:

@isT

kelas pribadi HelloWorldTestClass {

static testMethod void validateHelloWorld () {

Country__c country = new Country__c (Nama = ”India”, currency_value__c = 50.0)

Masukkan negara

country = [SELECT currency_value__c FROM Country WHERE Id = country.Id]

System.assertEquals (75, country.currency_value__c)

}

}

Saya harap Anda memahami semua konsep yang perlu Anda ketahui untuk menjadi pengembang Salesforce. Untuk mengetahui detail selengkapnya, lihat yang dilengkapi dengan pelatihan langsung yang dipimpin instruktur dan pengalaman proyek kehidupan nyata. Jika Anda memiliki komentar, silakan tinggalkan di kotak komentar di bawah.