Delphi. Пишем планировщик задач под Windows

Был такой заказ. Написан в связке с Postgres, в базе 2 таблицы, основная и для лога. Поле isActive, похоже не пригодилось. Поскольку нет возможности контроллировать из планировщика – работает или нет запущенный процесс.

Модель Task Continue reading

Posted in Без рубрики | Leave a comment

Delphi. Тестовое задание. Проект квартира

Ссылка на описание тестового задания

Проект сделан на Delphi Berlin+MySQL;

Реализация на VCL Forms Application

 

Проект на Delphi Berlin (скачать)

Код на gitHub

База данных

Для автоматического проставления даты в момент добавления записей использованы триггеры, например

Полный код SQL для создания базы данных Continue reading

Posted in Delphi | Leave a comment

C#. Сейджвик. Контейнеры, очереди, стеки. Упражнения.

Добавить в FixedCapacityStackOfStrings метод isFull()

Балансировка скобок

На уровне псевдокода

– Все скобки либо левые либо правые

–  Все скобки разных типов – квадратные, круглые, фигурные

– Скобки одного типа могут быть “левая с правой”, например [], а скобки разного типа не могут быть левая с правой [ ), то есть, для метода Pop(), при доставании из стека, мы можем проверять запрещенные комбинации (] (} {) {] (} (] и вызывать исключение

– Кроме того, число скобок разных типов должно быть четным

Двоичное представление

Этот код переводит из десятичной, в двоичную систему исчисления. Результат для числа 50 будет 110001

Что делает следующий фрагмент с очередью?

Например в очереди были значения 1,2,3,4,5 после попадания в стек они перевернулись 5,4,3,2,1, при попадании в очередь, будет 5,4,3,2,1

То есть, по сути это операция реверса.

Peek для стэка

Написать класс копирования стэка

И сам класс стэка на связных списках

Связные списки

 

Posted in Без рубрики | Leave a comment

C#. Сложение очень больших чисел

Было на одном из собеседований. Сделать сложение очень больших чисел, которые не влезают в long и int64, заходят как строка, при этом должны быть следующие ограничения:

-Не отрицательное число

-В аргументе только цифры

-Нет ведущих нолей

-Не пустая строка

-Целое

Нужно создать класс BigNumber и 3 его метода

  • Конструктор с ограничениями выше

  •  Метод сложения двух объектов (через перегрузку операторов)

  •  И перекрыть метод ToString()

Тест класса мог бы выглядеть так

 

Далее мои решения Continue reading

Posted in C# | Leave a comment

JS.React. Отправка формы

package.json

Далее, в консоли переходим в директорию проекта при помощи cd и вводим npm install Continue reading

Posted in C# | Leave a comment

JS.React.Списки и поиск в них

1

2 Continue reading

Posted in Без рубрики | Leave a comment

JS.React. События и управление ресурсами

Основные события для компонентов

  1. constructor(props): конструктор, в котором происходит начальная инициализация компонента
  2. componentWillMount(): вызывается непосредственно перед рендерингом компонента
  3. render(): рендеринг компонента
  4. componentDidMount(): вызывается после рендеринга компонента. Здесь можно выполнять запросы к удаленным ресурсам
  5. componentWillUnmount(): вызывается перед удалением компонента из DOM

Рассмотрим код, демонстрирующий освобождение ресурсов

Источник

Posted in Без рубрики | Leave a comment

JS.React.Props&State

Props

Props похожи на свойства, их можно менять снаружи.

Объявляем props разными подходами

1

2

3 Continue reading

Posted in Без рубрики | Leave a comment

JS.React.Классы и компоненты

Компоненты позволяют повторно использовать их в разных участках кода.

3 способа создания компонента.

1

2

3

Continue reading

Posted in Без рубрики | Leave a comment

JS.React.Элемент

Рассмотрим функцию ReactDOM.render более подробно, она принимает 3 параметра

  • ReactElement: элемент для рендеринга
  • DOMElement: элемент DOM, в который надо добавить ReactElement
  • Callback: опциональная функция обратного вызова

Элемент определяется так

Далее, в коде он может использоваться.

Ниже примеры использования.

Ниже, пример обновления элементов

При обновлении элемента виртуальный React DOM сравнивает текущее состояние элемента с его предыдущим состоянием и при наличии изменений применяет их к веб-странице и обновляет стандартный DOM. Но обновляться будет не весь пересоздаваемый элемент, а только текстовый узел, который содержит вывод текущего времени, так как только этот узел будет отличаться от предыдущего состояния.

Posted in Без рубрики | Leave a comment