А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Работа над финальной версией: диалоговые окна

 

Да, уже давненько сюда не постил. Нужды большой нет, потому как всё повторяется по новому кругу, где всё уже сто раз пройдено. И вот она, новая итерация в этом кажущемся бесконечном цикле по глобальному рефакторингу программы. И вот, пошел очередной круг, где сейчас я нахожусь на стадии работы с базовыми диалоговыми окнами, для вывода сообщений, ввода данных, выбора и сохранения файлов, настройки шрифта и выбора цвета. Всё это мной уже многократно делалось. Но в каждый раз всё лучше, каждый раз убирались какие-то косяки. Так и на этот раз. Вот они, диалоговые окна, на верхнем скриншоте, Для вывода простых сообщений. Внес корректировки в оформление. Ширина окон тут теперь не задана по-жесткому, то есть с фиксированными размерами. Размеры окон теперь автоматически подгоняются под размеры контента...

1 + 0 -

Назад, к истокам

 

Да, пора тестирования и отладки готовой программы пришла и ...отошла. Начав тестирование программы стало видно всю неидеальность организации кода. Косяки буквально градом полились. Это, конечно, было ожидаемо. Но вся соль состоит в том, что эти косяки можно было поправить только путем накручивания всё новых и новых костылей, которые только могут делать код менее надежным и стабильным. Да, это назревало месяца полтора последних. Что архитектура кода получилась кривой. И вот оно тут вскрылось. Не нужно было даже сильно заглубляться в тестирование, чтобы понять, что эта версия программы не потянет. И что архитектуру кода нужно значительно улучшить. И лучше это сделать, чем городить тонну новых костылей...

1 + 0 -

Невероятное событие: полное завершение разработки функционала программы

 

Сегодня я вздохнул с облегчением. Невероятно, но факт: разработка функционала программы полностью завершена и все функции полностью реализованы. В прошлый раз это было не так. А именно с облачным сервисом для работы с YandexGPT. Там у меня вышло недопонимание. В своём прошлом посте я написал, что туда нужно заплатить 5000 рублей. А потом я создал на облаке новый платежный аккаунт (вместе с новым облаком и каталогом в нём) и о, благо, минимальный платеж там был всего-то 10 рублей 😂 и после этого я без проблем смог положить туда 300 рублей, чтобы можно было пользоваться API к сервисам облака. И да, в конечном счете всё получилось!!! Ох как было не просто наладить работу функций нейросетей YandexGPT, чертовски просто трудно. Ну да ладно, не буду тут много расписывать. Время - золото, а жизнь - мимолетна. Так что вот так. Короче, сделал я функцию языкового перевода сначала. Там была "заглушка", или, как сказать, не проверенный код функции. Ну и конечно же, как стал я его тестировать, ничего не заработало...

1 + 0 -

Завершение работы над функционалом программы

 

Да, тот самый день. о котором мечталось долгих пять лет наконец-то наступил. Сегодня я доделал весь оставшийся не реализованным функционал. Две последние функции для генерации SQL-запросов через облачную нейросеть YandexGPT. Но это с одной оговоркой. Доступа к этой самой нейросети у меня пока нет. А в этих функциях работает имитация получения SQL-запроса от нейросети с выполнением этого запроса в базе данных. А вот реального обращения к YandexGPT нет. Причина тому - этот сервис платный. И всё бы ничего, если бы на его счет можно было бы перевести рублей 500. Но не тут-то было! Этот жадный сервис требует минимального платежа от 5000 рублей!!! Этого я сейчас не могу себе позволить. Только ради того, чтобы проверить работоспособность парочки функций...

1 + 0 -

Завершение работы над визуальным моделированием базы данных

 

Вот, очередная функция закончена. Одна из самых крутых функций. И тут у меня вышла значительная заминка. Потому что совершенно внезапно возник загадочный косяк, который нарушил работу всей программы. И мне этот косяк пришлось долго искать. И оказалось что это - зацикленный вызов функции моей C#-библиотеки функций, где был запуск новых потоков с задержкой выполнения этих потоком и вызовом после этой задержки переданной в качестве аргумента функции. Во как! Причем природа происхождения этого зацикленного вызова не ясна. Эти вызовы запускались внутри контрола для компоновки панелей макета, там, где происходило обновление сетки этих панелей. Почему-то раньше, ещё неделю назад такого не наблюдалось. А вот тут вдруг в четверг или чуть раньше возникло. Точный момент я не отследил, поскольку работал в программе без открытия базы данных. А без открытия БД не было и развертки этих панелей компоновки, в результате чего этот косяк себя не проявлял. Но стоило мне установить соединение с БД и вот тебе пожалуйста. Вот такие несладкие пироги...

1 + 0 -
  • Яндекс.Метрика