PL/SQL в TypeScript
Одна и та же процедура, написанная руками на PL/SQL и на TypeScript. Она здесь, чтобы вы увидели, что меняется, а что остаётся, до того как кто-то назовёт вам цену.
Что у вас есть · 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;Во что это превращается · TypeScript
export function interest(balance: bigint, rateBasisPoints: bigint): bigint {
return (balance * rateBasisPoints + 5000n) / 10000n
}Прочитать два файла рядом легко. Трудное начинается дальше, в остальной системе: какие файлы уже никто не вызывает, какое задание пишет в 02:00 запись, которую потом читает другое, и выдаёт ли переписанная версия те же числа, которые ваши аудиторы видели в прошлом месяце. Эта работа идёт на нашей платформе под присмотром инженера и начинается с того, что мы смотрим вашу кодовую базу.
Когда конвертера перестаёт хватать
Сравнить два файла легко. Ничто на этой странице не скажет вам, какие файлы уже никто не вызывает, какое батч-задание пишет в 02:00 запись, которую потом читает другое, и выдаёт ли переписанная версия те же числа, которые ваши аудиторы видели в прошлом месяце. На это отвечает аудит по вашей настоящей кодовой базе.