正解:D
A record-trigger flow on Opportunity is the most efficient way for a developer to implement this requirement, because it allows the developer to automate the creation and assignment of a Task without writing any code. A record-trigger flow can be configured to run when a record is created, updated, or deleted, and it can access and update related records using flow elements1. A record-trigger flow on Opportunity can also use the
$Record global variable to access the Opportunity Owner and assign the Task to them2.
An auto-launched flow on Task is not an efficient way to implement this requirement, because it requires the developer to manually invoke the flow from another process, such as a trigger or a button3. An auto-launched flow on Task cannot access the Opportunity record or its Owner without a lookup element, which adds complexity and reduces performance.
An Apex trigger on Task is not an efficient way to implement this requirement, because it requires the developer to write and maintain code, which is more prone to errors and harder to debug than a flow. An Apex trigger on Task also cannot access the Opportunity record or its Owner without a SOQL query, which consumes governor limits and increases the risk of hitting the 101 SOQL limit.
A Task action is not an efficient way to implement this requirement, because it requires the user to manually create and assign the Task from the Opportunity record page. A Task action does not automate the process, and it relies on the user to remember and follow the business rule. References:
* 1: Automate Your Business Processes with Record-Triggered Flows
* 2: Use the $Record Global Variable in Record-Triggered Flows
* 3: Automate Your Business Processes with Scheduled and Platform Event-Triggered Flows
* : Access and Update Related Records in Flows
* : Apex Triggers
* : Apex Governor Limits
* : Create Actions for the Action Bar