К содержимому

Конвертеры кода

Python в PL/SQL

Одна и та же процедура, написанная руками на Python и на PL/SQL. Она здесь, чтобы вы увидели, что меняется, а что остаётся, до того как кто-то назовёт вам цену.

Что у вас есть · Python

from decimal import Decimal, ROUND_HALF_UP

def interest(balance: Decimal, rate: Decimal) -> Decimal:
    return (balance * rate).quantize(Decimal("0.01"), ROUND_HALF_UP)

Во что это превращается · PL/SQL

CREATE OR REPLACE FUNCTION interest(
  p_balance NUMBER, p_rate NUMBER
) RETURN NUMBER IS
BEGIN
  RETURN ROUND(p_balance * p_rate, 2);
END;
Одна процедура: остаток умножить на ставку, округлить до копейки. На обоих языках её писал человек, инструмент тут ни при чём. Ваш файл длиннее, и в нём происходит больше, в этом и дело.
Прочитать два файла рядом легко. Трудное начинается дальше, в остальной системе: какие файлы уже никто не вызывает, какое задание пишет в 02:00 запись, которую потом читает другое, и выдаёт ли переписанная версия те же числа, которые ваши аудиторы видели в прошлом месяце. Эта работа идёт на нашей платформе под присмотром инженера и начинается с того, что мы смотрим вашу кодовую базу.

Когда конвертера перестаёт хватать

Сравнить два файла легко. Ничто на этой странице не скажет вам, какие файлы уже никто не вызывает, какое батч-задание пишет в 02:00 запись, которую потом читает другое, и выдаёт ли переписанная версия те же числа, которые ваши аудиторы видели в прошлом месяце. На это отвечает аудит по вашей настоящей кодовой базе.