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

Вы были очень близки к этому. Чтобы получить LocalDateTime, это

LocalDateTime tomorrowWithTime = LocalDateTime.of(LocalDate.now().plusDays(1), LocalTime.of(13, 0));

Затем, чтобы преобразовать его в метку времени Unix, пожалуйста, посмотрите на этот вопрос . В итоге вы должны дать ZoneId: (чтобы дать рабочий ответ, я буду использовать ваш системный идентификатор зоны):

ZoneId zoneId = ZoneId.systemDefault(); //Or the appropriate zone
long timestamp = tomorrowWithTime.atZone(zoneId).toEpochSecond();

Кстати, если ваша проблема заключалась в том, что вы не ' Чтобы знать, что передать в качестве параметров для LocalDateTime.of(), ваш первый рефлекс должен состоять в том, чтобы взглянуть на API , чтобы увидеть, какие параметры он принимает.

89
задан 8 revs, 3 users 58% 7 September 2018 в 17:33
поделиться

4 ответа

Императивная

Есть несколько подпарадигм парадигмы императивного программирования, таких как процедурное или объектно-ориентированное парадигмы программирования.

В парадигме императивного программирования алгоритм описывается поэтапно с различной степенью абстракции.

Примеры языков программирования, которые поддерживают процедурную парадигму:

  • C (и большинство других устаревших языков)
  • PHP, в основном
  • В некотором смысле все основные языки

Объектно-ориентированные

It обычно относится к языкам, которые демонстрируют иерархию типов , которые наследуют как методы, так и состояние от базовых типов к производным типам, но также включают необычный основанный на прототипах JavaScript.

Примеры языков программирования, поддерживающих объектно-ориентированную парадигму:

  • Java

Декларативное

Существует несколько подпарадигм парадигмы декларативного программирования, таких как парадигмы функционального или логического программирования.

В парадигме декларативного программирования вы описываете результат или цель, и вы получаете его через « черный ящик ». Противоположность императиву.

Примеры языков программирования, поддерживающих парадигму декларативного программирования:

  • yacc
  • Treetop
  • SQL
  • Регулярные выражения
  • lex
  • XSLT
  • разметка, troff, CSS, VHDL

Функциональный

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

Примеры языков программирования, поддерживающих декларативную функциональную парадигму:

  • Haskell
  • OCaml
  • Схема
  • Erlang
  • F #
  • Scala
105
ответ дан 24 November 2019 в 07:16
поделиться

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

1
ответ дан 24 November 2019 в 07:16
поделиться

Процедурное программирование:

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

Декларативное программирование:

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

5
ответ дан 24 November 2019 в 07:16
поделиться

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

Например, SQL является более декларативным, чем процедурным, потому что запросы не определяют шаги для получения результата.

59
ответ дан 24 November 2019 в 07:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: