SAP S/4HANA Cloud Private Edition Developer Extensibility in the ABAP Environment
ABAP is an acronym for Advanced Business Application Programming, which is the language SAP developed for the SAP NetWeaver Application Server, where the SAP S/4HANA Cloud business suite software lives.

If the implementation team cannot find a way to address a customer’s requirement through the key user in-app extensibility tools, developer extensibility provides more customization opportunities in the development tenant of the development system. ABAP developers can use the SAP S/4HANA Cloud ABAP Environment to create advanced cloud-ready and upgrade-stable custom ABAP code for SAP S/4HANA Cloud Private Edition. It's still possible to develop in classic ABAP, but we don't recommend it. When you develop in the ABAP Cloud environment, you have the benefits of building custom ABAP code, while also knowing that what you develop aligns with the SAP S/4HANA programming model and will not cause issues when the customer tries to upgrade their system in the future.
SAP S/4HANA Cloud ABAP Environment
When working in the SAP S/4HANA ABAP Cloud Environment, developers should use only released SAP APIs, Business Add-Ins (BAdIs), and objects in their custom code, and predefined extension points. Because there is no default security when a developer creates their own database tables, customers cannot use ILM (Information Lifecycle Management) or IRF (Information Retrieval Framework) with ABAP extensions. Thorough testing of extensions must be completed to ensure users who should have access to data do, and those who shouldn’t have access to data are restricted.

Learn more about developing in the ABAP Environment with this guide: Extend SAP S/4HANA in the cloud and on premise with ABAP-based extensions.
How to use the ABAP Cloud Environment
To develop in the ABAP Cloud environment, a developer chooses "ABAP for Cloud Development" as the ABAP language version. This switches on the strict syntax check for ABAP Cloud for the selected custom ABAP objects (e.g. new Z-class), and uses the public APIs that SAP released for the ABAP Cloud development model (e.g. CDS view I_PRODUCT).

Note
This course does not cover developer extensibility further. There are a variety of resources in the SAP Developer Center and tutorials targeted to developers here. Also, make sure to check out the free developer-focused learning journeys here.