Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
Блок try... finally впервые появился в «Delphi 1.0». С того момента прошла четверть века.
Эту конструкцию потом унаследовали все реализации языка «Object Pascal» («Free Pascal», «PascalABC», «Oxygene» и ещё несколько компиляторов, которые оказались тупиковыми ветвями). Да, творение «Борланда» можно называть новым языком программирования.
Пепси, пейджер, эм-ти-ви
2. '{"login":"user","password":"pass999 "}' несильно похоже на 'application/x-www-form-urlencoded'. httpconn умеет перекодировать JSON в x-www-form-urlencoded?
3. Магическая константа: httpconn.Request.ContentLength:=68;
Откуда она взялась? И как её корректировать, если вдруг пароль сменится?
4. Вызов httpconn.Post('https://api.owencloud.ru/v1/auth/open', RequestBody) у нас два раза? Почему результат первого помещается в мемо, а второго — в XML?
Няшненько. Здесь Паскаль выглядит очень даже не дерьмово.
>TStringStream
>finally
Паскаль с запахом жабизны.
Но всё-таки это же не Ява, могли бы и RAII завезти.
А если уж косить под яву, то try-with-resources, чтобы ресурсы автоматически освобождать.
Эту конструкцию потом унаследовали все реализации языка «Object Pascal» («Free Pascal», «PascalABC», «Oxygene» и ещё несколько компиляторов, которые оказались тупиковыми ветвями). Да, творение «Борланда» можно называть новым языком программирования.