А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
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

Работа над ядром программы завершена

 

Ну вот, и закончил переделывать ядро программы. Получилось довольно неплохо. Код стал гораздо лаконичнее, изящнее и, главное, более стабильным. Архитектура кода стала гораздо лучше, то есть менее запутанной, загроможденной, а значит, более простой в дальнейшей поддержке, чтобы этот код можно было и дальше улучшать и дополнять. Тестов для проверки работоспособности ядра я сделал не мало - 201 штука. Жаль, что не вписался в более круглое число - 200, ну да ладно, это мои причуды в стремлении к круглым числам. Они никак делу мешать не должны. Но улучшения в классах ядра программы проведены существенные. Всё теперь сделано гораздо больше по уму, чем то было в прошлый раз. И гораздо более, чем в позапрошлый раз, и гораздо-гораздо более, чем в поза-поза-прошлый раз. Ну а уж в сравнении с разами трех-четырех-пяти летний давности и говорить даже нечего. Там бы у меня вообще ничего не получилось сделать, даже цельную но хромую программу собрать бы не удалось. Но зато вот сейчас, спустя пять лет и спустя раз двадцать переделывания программы, наконец-то можно сказать, что я стремлюсь к идеальной версии программы...

0 + 0 -

Горное озеро

 
Ну вот, моё новое творение, насколько то позволяют время и средства. Потянуло меня на тему пейзажей и ландшафтов. Видимо, хочу делать виды, в которых сам хочу побывать. На этот раз озеро в горах. Мне нужен был горный ландшафт с углублением в центре для озеро. Долго я возился с тем, чтобы найти способ сделать этот ландшафт. Хотел использовать плоскость с применением деформации. Но нужный ландшафт для этом не получался. А заготовка "ландшафт" тоже капризная...
0 + 0 -

Улучшение нейросетевых возможностей программы

 

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

1 + 0 -

Дождь в бамбуковой роще

 

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

1 + 0 -

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

 

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

1 + 0 -

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

 

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

1 + 0 -

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

 

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

1 + 0 -

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

 

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

1 + 0 -

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

 

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

1 + 0 -

Работа над визуальным моделированием БД продолжается

 

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

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