Измерение сложности кода функционального языка и императивного языка - PullRequest
1 голос
/ 12 августа 2010

Как лучше всего сравнивать сложность кода функционального языка и императивного языка?

В моем случае мне приходится сравнивать сложность некоторых программ, написанных на F # и C ++.На данный момент в качестве показателя качества кода я использую строки исходного кода.

1 Ответ

2 голосов
/ 12 августа 2010

Не существует «лучшего» пути.Нет даже отдаленно приемлемого способа.

  • SLoC (и связанные измерения, такие как подсчет символов) совершенно бессмысленны;обратитесь к Википедии за кратким изложением наиболее распространенных критических замечаний
  • , если вы хотите, чтобы более абстрактные вещи считались, например, «атомные элементы» программы, вы должны решить, что вы считаете таковым - и многие не согласятся,справедливо, потому что этот вопрос в основном неразрешимый
  • Кроме того, такие сравнения достаточно справедливы, потому что большинство из них используют примеры задач, которые, как правило, более естественно решаются на одном языке или другом.Каждый пытался реализовать Аккумуляторная фабрика в C ++?Теперь помните, что проблема была предложена защитником Лиспа (Полом Грэмом) ...
  • Более того, многие утверждают, что действительно умное решение, использующее очень мало строк / символов / "атомарных элементов", не является лучшимрешение в любом другом случае - посмотрите на гольф-код

Принимая во внимание все обстоятельства, лучшим решением может быть принятие множества различных реальных проблем, их идиоматическое решение на разных языках и просто неформальный взгляд на источник ирешение, которое выглядит более элегантно.

...