Фронт работы выходит на реализацию программных объектов-дескрипторов SQL
Новая неделя и новые свершения прибыли сей час. Проект наполняется функционалом без оглядки на всякие там старые версии, которые удерживали меня как в трясине и не давали по-настоящему двигаться вперед. А зачем эти старые версии, если с помощью ИИ можно закодить весь этот функционал. В смысле весь функционал программы. Чем я сегодня и занимался весь день. И сделал за сегодня то, что бы я, наверное, вручную делал бы всю неделю.
Утро началось с создания C#-класса сервиса для глубокого клонирования программных объектов. Сделал его сразу и заранее, так как он мне понадобится в работе с классами-дескрипторами SQL-запросов. И тесты к нему тут же сгенерил. Ну а затем пришла очередь к самому важному и главному C#-классу "DatabaseProject", который нужен для хранения настроек проектов БД, с которыми работает программа. Также этот класс имеет и функции для работы с проектами. Для создания проектов, для открытия файлов БД, для настройки проектов и для закрытия и удаления этих самых проектов. Большую часть функций уже реализовал. Вот, к примеру, на верхнем скриншоте показано окно для открытия файлов баз данных.
Но пока что сей класс работает не в полной мере. Потому как для этого сначала требуется создать классы для работы с базой данных, а да этого ещё и упомянутые выше классы-дескрипторы SQL-запросов. Да, ещё добираться далековато до полной реализации этого класса. Но с ИИ это не так долго на самом деле.
Ну а под конец дня я сгенерил с помощью флагманской модели ИИ "Claude Opus 4.6" класс сервиса для токенизации SQL-запросов. Это не простая задача, поэтому я использовал эту мощнейшую и недешевую модель ИИ. Опусом я на самом деле пользовался впервые. Он, долго думая, и сгенерил мне код этого сервиса. Ну а потом я добавил NUnit-тесты, которые показали исправную работу этого сервиса. Ну и при парсинге SQL-запросов в объекты-дескрипторами я, пожалуй, буду использовать Опус, так как это тоже не простая да и не слишком стандартная задача. Так что вот так.
Ну и ещё нужно добавить то, что я делал вчера. А вчера я устанавливал обновление Avalonia с версии 11 на версию 12. Это крупное обновление, которое выходит раз в несколько лет. Я чувствовал, что после перехода на новую версии Авалонии меня будут ждать проблемы, основанные на потери обратной совместимости некоторого функционала. И не ошибся. Головной боли мне это задало не мало. Но это ожидаемо. Так каждый раз бывает. И так было 3 года назад, когда я обновился до 11-й версии Авалонии. У меня в программе тогда сломалось ВСЁ и мне пришлось переделывать всю программу в новом проекте. Вот такие несладкие пироги. Ну а вчера же (нет, к счастью, я не начал снова переделывать программу) я разгребал немалые завалы. какой-то функционал, конечно, перестал работать. И мне пришлось вносить поправки точечно, что называется. То есть БЕЗ переделывания ВСЕГО. Так же это сказалось и на одной используемой в программе библиотеке. Её тоже пришлось обновлять на RC-версию. Релиза пока ещё нет. Потому как та версия (библиотеки Irihi.Ursa) на новой Авалонии перестала работать. Во как. И мне пришлось подтягивать предрелизную версию "урсы". Да и косяки некоторые там есть. В частности с контролом для окон `UrsaWindow`, на котором, кстати, сделано главное окно программы. Там покосячились стили. И мне пришлось их подшлифовывать. Так что вот. Привел-таки программу после этого крупного обновления в приемлемый вид и поправил все возникшие несовместимости. Пришлось, ведь не сидеть же на старой версии этого фреймворка.
Ну и на этом я бы хотел закончить сей сказ. Завтра с утра я начну снова пилить функционал программы не без помощи так называемого "искусственного интеллекта". Ну а на этом я хотел бы закончить. Ну и уже теперь до новых постов и до новых свершений.

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.