( persicsb | 2018. 01. 25., cs – 17:45 )

Amúgy nem igazán tudom értelmezni, hogy egy API-ról mi alapján lehetne eldönteni, hogy user-friendly-e az API vagy nem.
Minden egyes API elemnek (osztálynak, interfésznek, metódusnak, paraméternek) értelme és célja van.

Mégpedig az, hogy valamely szempont szerint modellezzen egy domaint, a benne lévő elemeket és műveleteket. Azaz ebben sehol nincs benne, hogy az API user friendly legyen, hiszen az elterelné a lényegről a figyelmet. Ha például a user friendlység miatt kihagyunk valamit az API-ból, akkor előfordulhat, hogy a keletkező API-val már nem tudunk leírni valami olyan folyamatot, amit le kellene. Így maga a user friendlység sok esetben nem cél.
Hogy egy hasonlattal éljek: a GNOME 3 UI lehet, hogy user friendly, de sok mindennek a lehetőségét meg is vonja a felhasználótól.

Ettől még lehet cél az, hogy a gyakori felhasználási eseteket könnyen lehessen kifejezni az API-val (tipikusan: értelmes defaultok használata), míg a többi esetet is ki lehessen ugyan fejezni, de dolgozni kell hozzá. Hogy egy közismert elv alapján mondjam: a Pareto-elvet lehetne szem előtt tartani, aka 80-20-as szabályt (természetesen lehet ez 70-30 is, csak szemléltetés a lényeg): az API használati lehetőségeinek 80%-át leíró hívó kód mérete, meg a 20%-nyi lehetőségeket leíró hívó kód mérete álljon 20-80 arányban.
Erre már lehetne azt mondani, hogy ez az API user friendly valamilyen szempontból.
De amíg nem mondod meg, hogy mit értesz az alatt, hogy user friendly egy API, vagy nem, addig nem értelmes a kérdés szerintem.