Мультипарадигмальные языки - PullRequest
18 голосов
/ 07 августа 2008

На таком языке, как (поскольку я сейчас на нем работаю) PHP, который поддерживает процедурные и объектно-ориентированные парадигмы.

Есть ли хорошее эмпирическое правило для определения, какая парадигма лучше всего подходит для нового проекта? Если нет, как вы можете принять решение?

Ответы [ 2 ]

10 голосов
/ 07 августа 2008

Все зависит от проблемы, которую вы пытаетесь решить. Очевидно, что вы можете решить любую проблему в любом стиле (процедурном или OO), но обычно вы можете выяснить на этапах планирования, прежде чем начинать писать код, какой стиль вам подходит.

Некоторым людям нравится писать варианты использования, и если они видят, что много и те же существительные появляются снова и снова (например, человек снимает деньги из банка), тогда они идут по маршруту OO и используют существительные как их объекты. И наоборот, если вы не видите много существительных и на самом деле происходит больше глаголов, то процедурный или функциональный путь может быть подходящим.

У Стива Йегге, как обычно, есть отличный, но длинный пост , который затрагивает этот вопрос с другой точки зрения, который также может оказаться полезным.

2 голосов
/ 07 августа 2008

Если вы делаете что-то для себя, или просто делаете прототип, или тестируете идею ... используйте свободный стиль, который вам дают языки сценариев.

После этого: всегда думайте об объектах, постарайтесь организовать свою работу вокруг ОО-парадигмы, даже если вы пишете процедурные вещи. Затем выполните рефакторизацию, рефакторизацию, рефакторизацию.

...