May 23

Koe e по-красиво ?

// php
join(', ', array_map(array($this, 'escape'), func_get_args());
// javascript
arguments.map(this.escape).join(', ');

На мен лично JS варианта ми допада повече, някак си ми се вижда по естествено и последователно.

  • вземаме подадените аргументи
  • след това ги map-ваме със метода ‘escape’
  • след това прави join на целия масив

Докато php версията я чета така:
правим join на масива, който се е върнал след като сме map-нали получените от функцията аргументи, с метода ‘еscape’.

Този пример показва една разликата в четенето на процедурните и обектно ориентираните изрази. Докато едното е като сложно съставно изречение (за каквито имах доста ниски оценки по български език), другото е като последователност от действия с ясно начало и край.

Какво мислите по въпроса