• Что значат некоторые устойчивые английские термины в веб-программировании?

    forketyfork
    @forketyfork
    DSL — предметно-ориентированный язык, хотя у нас в устной речи так и принято говорить — DSL, и все друг друга понимают. Когда я вижу словосочетание «предметно-ориентированный язык», мне сначала нужно переводить обратно на английский. Впрочем, это проблема любого перевода технической литературы, так как англоязычные термины уже устоялись в речи программистов.
    flow — это не структурирование кода, а именно поток выполнения.
    Scaffolding — это, скорее, не сборка из модулей, а генерация типового кода по имеющейся предметной модели или каким-либо иным параметрам. Например, мы задаём набор полей в сущности, а на выходе получаем типовую таблицу для отображения списка сущностей и форму для добавления/редактирования сущности. Берём этот сгенерированный код и дотачиваем, как нам нужно.
    Routing в JavaScript — это может быть не только URL-маршрутизация, особенно если всё приложение находится на одной странице с одним URL. Это может быть переключение представлений в рамках одной страницы.
    Opinionated framework — тут речь не о самоуверенности, имеется ввиду, что библиотека реализует какой-то конкретный, жёстко фиксированный подход, обусловленный волевым решением разработчика библиотеки, в отличие от более гибких (flexible) библиотек, позволяющих использовать различные подходы.
    Ответ написан
    2 комментария
  • Определение нарушения уровня абстракции?

    forketyfork
    @forketyfork
    Если говорить о нарушении уровня абстракции в методе, то оно, как правило, заключается в том, что метод выполняет несколько действий, которые относятся к разным уровням абстракции.
    Скажем, если в одном и том же сервисном методе присутствует как бизнес-логика, так и обращения к базе данных или файловой системе, не абстрагированные, например, через DAO, то это — нарушение абстракции на уровне метода.

    Если говорить о нарушении уровня абстракции в отношении класса, то оно обычно представлено тем, что разные методы класса относятся к разным уровням абстракции.
    Например, если одни методы DAO в качестве параметров получают доменные объекты, а другие — значения полей для прямой вставки в таблицу, то это — нарушение абстракции на уровне класса.
    Ответ написан