176

Re: Курсы обучения и статьи о разработке приложений

CDB, согласен с вами - использование отдельных DLL для каждого вида СУБД позволит элегантно решить вопрос с поддержкой множества стандартов не утяжеляя основное приложение. Также я согласен, что Pascal Script является оптимальным решением для создания расширений.


CDB, I agree with you - the use of separate DLLs for each type of DBMS will allow you to elegantly solve the issue of supporting many standards without burdening the main application. I also agree that Pascal Script is the best solution for creating extensions.

Визуальное программирование: блог и телеграм-канал.

177

Re: Курсы обучения и статьи о разработке приложений

Константин - Я перевел ваш проект Clear App на английский язык, если вам интересно.

Я не переводил и не обновлял файл справки.


Konstantin - I've translated your 'Clear App' project into English if you are interested.

I haven't translated or updated the 'help' file though..

On a clear disk you can seek forever

178

Re: Курсы обучения и статьи о разработке приложений

CDB wrote:

Константин - Я перевел ваш проект Clear App на английский язык, если вам интересно.

Я не переводил и не обновлял файл справки.


Konstantin - I've translated your 'Clear App' project into English if you are interested.

I haven't translated or updated the 'help' file though..

Вы проделали титаническую работу! В моих первоначальных планах было добавление локализации, как это было сделано в серии проектов 2018-2019 года, но приоритеты изменились, нужно зарабатывать на хлеб насущный. В любом случае мне приятно, что ClearApp вызывает интерес.


You have done a titanic job! My original plans were to add localization, as was done in a series of projects in 2018-2019, but the priorities have changed, I need to earn my daily bread. In any case, I am pleased that ClearApp is of interest.

Визуальное программирование: блог и телеграм-канал.

179

Re: Курсы обучения и статьи о разработке приложений

QR-коды в MVDB

https://k245.ru/wp-content/uploads/2023/02/qr.jpg


В составе генератора отчетов FastReport, который интегрирован в среду разработки My Visual Database, имеется компонент для отображения QR-кодов, что позволяет создавать в разрабатываемых программах стикеры, платежные документы, рекламные объявления, которые могут содержать QR-коды. Но иногда такой код необходимо отобразить непосредственно на форме.


Читать: https://k245.ru/mvdb/qr-kody-v-mvdb.html

Визуальное программирование: блог и телеграм-канал.

180

Re: Курсы обучения и статьи о разработке приложений

Семейный альбом. Анимация

https://k245.ru/wp-content/uploads/2023/03/Semejnyj-albom-1.1.jpg


После выхода первой версии “Семейного альбома” прошло 8 месяцев. И у меня появился повод продолжить эту историю в позитивном ключе. Дело в том, что при разработке данной программы я столкнулся с очень серьёзной проблемой – низкой производительностью компонентов, отвечающих за отображение изображений: обычная загрузка картинки из файла и отображение на форме может занимать секунду и даже более, в зависимости от размера файла. С такими скоростями о режиме презентации можно забыть, а сам проект перевести в разряд учебных. Однако, после серии экспериментов с прозрачностью формы, мне удалось добиться приемлемой анимации при смене изображений с эффектом плавного перехода одного изображения в другое.


Читать: https://k245.ru/mvdb/semejnyj-albom-animatsiya.html

Визуальное программирование: блог и телеграм-канал.

181

Re: Курсы обучения и статьи о разработке приложений

Библиотека – это возможность доступа ко всем книгам и статьям, включая приложения, без покупки самих книг. Благодаря технологиям Гугл-документов, вы можете просматривать, а также скачивать книги в нужных вам форматах, чтобы читать их офф-лайн. Все издания, представленные в библиотеке, разделены на две категории по виду доступа к ним: со свободным доступом и с платным доступом. Иногда в платном доступе находятся приложения, которые включают в себя исходные коды рассматриваемых в книге или статье проектов.

https://k245.ru/wp-content/uploads/2022/06/%D0%93%D0%BE%D0%B4%D0%BE%D0%B2%D0%BE%D0%B9.png


Для студентов и пенсионеров абонемент предоставляется бесплатно.


https://k245.ru/biblioteka

Визуальное программирование: блог и телеграм-канал.

182

Re: Курсы обучения и статьи о разработке приложений

Во имя прогресса

https://k245.ru/wp-content/uploads/2023/03/a_ignore_q_80_w_1000_c_limit_001.jpg

Если выполнение действия занимает продолжительное время, то желательно сообщать пользователю о том, как идут дела: какой процент действий выполнен и что именно делает сейчас программа. И в этом нам поможет универсальная функция отображения формы прогресса выполнения.


Читать: https://k245.ru/mvdb/vo-imya-progressa.html

Визуальное программирование: блог и телеграм-канал.

183

Re: Курсы обучения и статьи о разработке приложений

Линейный раскрой

https://k245.ru/wp-content/uploads/2023/04/lazernaya_rezka_trub.jpg

Задача


Оптимальным образом осуществить нарезку линейного материала, минимизировав длину обрезков. В качестве исходных данных использовать длину заготовки, ширину разреза и перечень деталей, которые нужно изготовить, с указанием линейного размера и количества. В расчете использовать имеющиеся заготовки различной длины, которые также представлены списком с указанием их длины и количества.


Читать: https://k245.ru/mvdb/linejnyj-raskroj.html

Визуальное программирование: блог и телеграм-канал.

184

Re: Курсы обучения и статьи о разработке приложений

Универсальное копирование

https://k245.ru/wp-content/uploads/2023/04/ovechki.jpg


А можно ли скопировать запись, не зная структуры таблицы? Можно!


Читать: https://k245.ru/mvdb/universalnoe-kopirovanie.html

Визуальное программирование: блог и телеграм-канал.

185

Re: Курсы обучения и статьи о разработке приложений

Ваши проекты

https://k245.ru/wp-content/uploads/2023/04/vashi-proekty.jpg


За 5 лет использования My Visual Database в качестве инструмента разработки у меня накопилось около 500(!) различных проектов, созданных в этой уникальной среде разработки. Среди них как коммерческие программы, так и примеры решения отдельных технических задач, которые были размещены на форуме разработчиков. Поэтому я решил добавить в “Справочник разработчика” возможность учета и анализа контента проектов.


Читать: https://k245.ru/mvdb/vashi-proekty.html

Визуальное программирование: блог и телеграм-канал.

Re: Курсы обучения и статьи о разработке приложений

Является ли Кнопка "Форматировать код" в редактировании ПРИМЕРОВ обязательной ?

Если да то не лучше ли встроить ее выполнение при сохранении кода ПРИМЕРОВ.
Вопрос не просто так.


Без форматирования присходят вот такие вещи в просмотре примера (в окне редактировния все ОК):


Рисование на канве формы
GLForm.Canvas.TextOut(80,60,80,60,'Hello World');  должно быть GLForm.Canvas.TextOut(80,60,'Hello World');


или


SELECT с автонумерацией записей
countcount(*)


и т.д.

CodeHL путается.

187

Re: Курсы обучения и статьи о разработке приложений

sparrow wrote:

Является ли Кнопка "Форматировать код" в редактировании ПРИМЕРОВ обязательной ?

Если да то не лучше ли встроить ее выполнение при сохранении кода ПРИМЕРОВ.
Вопрос не просто так.


Без форматирования присходят вот такие вещи в просмотре примера (в окне редактировния все ОК):


Рисование на канве формы
GLForm.Canvas.TextOut(80,60,80,60,'Hello World');  должно быть GLForm.Canvas.TextOut(80,60,'Hello World');


или


SELECT с автонумерацией записей
countcount(*)


и т.д.

CodeHL путается.

Не все примеры содержат код программ с синтаксисом Pascal, иногда бывает текстовое описание или SQL. Поэтому кнопка - это опция.

Насчет некорректности CodeHL - подтверждаю проблему, спасибо за обратную связь, буду исправлять..

Визуальное программирование: блог и телеграм-канал.

188 (edited by k245 2023-04-26 07:55:15)

Re: Курсы обучения и статьи о разработке приложений

k245 wrote:

Насчет некорректности CodeHL - подтверждаю проблему, спасибо за обратную связь, буду исправлять..

Есть проблема с SQL в чистом виде:  сочетание символов (* интерпретируется как начало комментария, и на строке count(*) алгоритм дает сбой. Планирую отдельно сделать подсветку для SQL, а пока можно заключать текст запроса в кавычки или комментировать

http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&item=9387&download=0

Post's attachments

Attachment icon изображение_2023-04-26_105424571.png 22.62 kb, 54 downloads since 2023-04-26 

Визуальное программирование: блог и телеграм-канал.

Re: Курсы обучения и статьи о разработке приложений

Для SQL ведь комментарии  /* комментарий */

190

Re: Курсы обучения и статьи о разработке приложений

sparrow wrote:

Для SQL ведь комментарии  /* комментарий */

Всё верно. Но, как я уже заметил, пока правила форматирования не распознают язык и предполагают, что текст представляет собой исходники на Pascal

Визуальное программирование: блог и телеграм-канал.

191

Re: Курсы обучения и статьи о разработке приложений

Ресурсы и локализация

https://k245.ru/wp-content/uploads/2023/04/Flagi.png


В своей книге “Визуальное программирование” я подробно рассматривал вопросы локализации и интернационализации, настало время применить эти знания в новом проекте.


Читать: https://k245.ru/mvdb/resursy-i-lokalizatsiya.html

Визуальное программирование: блог и телеграм-канал.

192

Re: Курсы обучения и статьи о разработке приложений

Модули проекта

https://k245.ru/wp-content/uploads/2022/07/obedinenie.jpg


Обычно проекты, созданные в среде разработке My Visual Database, содержать только один модуль со скриптами – файл script.pas. Однако, если программа содержит много дополнительного функционала, то размер этого файла может быть огромным. Поэтому вполне логично разделить скрипты на логические части и хранить их в отдельных файлах.


Модульная архитектура улучшает восприятие исходного текста, позволяет повторно использовать отдельные модули, копируя нужные файлы в новый проект. Поэтому очередное улучшение “Справочника разработчика” связано с отображением модульной структуры проектов.


Читать: https://k245.ru/mvdb/moduli-proekta.html

Визуальное программирование: блог и телеграм-канал.

193

Re: Курсы обучения и статьи о разработке приложений

Анализируем модули

https://k245.ru/wp-content/uploads/2023/05/Analiziruj-eto.jpg


Хранение информации о проектах имеет далеко идущие цели: анализ исходного кода и архитектуры с выдачей рекомендаций по их оптимизации.


А начнем с простой задачи: извлечение информации о содержимом модуля, в частности – поиск и отображение процедур и функций.


Читать:  https://k245.ru/mvdb/analiziruem-moduli.html

Визуальное программирование: блог и телеграм-канал.

194

Re: Курсы обучения и статьи о разработке приложений

Кот в мешке

https://k245.ru/wp-content/uploads/2023/05/Kot-v-meshke.jpg


Механизм выбора стиля в приложениях, созданных в My Visual Database, напоминает покупку кота в мешке: до перезагрузки невозможно представить, как будет выглядеть программа с выбранным стилем. Несколько строчек кода помогут нам решить данную проблему.


Читать: https://k245.ru/mvdb/kot-v-meshke.html

Визуальное программирование: блог и телеграм-канал.

195

Re: Курсы обучения и статьи о разработке приложений

Выбор СУБД

https://k245.ru/wp-content/uploads/2023/05/Vybiraem-SUBD.jpg

Среда разработки My Visual Database (MVDB) позволяет использовать две СУБД: SQLite и MySQL. Тип используемой СУБД можно изменить в процессе разработки в любой момент. Но какую СУБД выбрать для вашего приложения?


Читать: https://k245.ru/mvdb/vybor-subd.html

Визуальное программирование: блог и телеграм-канал.

196

Re: Курсы обучения и статьи о разработке приложений

Проект “Библиотека” v.1.0

https://k245.ru/wp-content/uploads/2023/08/bib1.jpg

Приложение с одной таблицей. Компоненты TAForm и TdbStringGridEx. Свойства Name, Top, Left, Width, Height, Sizeable, Editable, Settings, Anchors.

https://k245.ru/mvdb/proekt-biblioteka-v-1-0.html

Визуальное программирование: блог и телеграм-канал.

197

Re: Курсы обучения и статьи о разработке приложений

Реляционные базы данных

https://k245.ru/wp-content/uploads/2023/08/informatsiya.jpg

Структура реляционных БД. Типы связей (один-к-одному, один-ко-многим, многие-ко-многим), нормализация (первая, вторая и третья форма).

https://k245.ru/mvdb/relyatsionnye-bazy-dannyh.html

Визуальное программирование: блог и телеграм-канал.

198

Re: Курсы обучения и статьи о разработке приложений

Редактор структуры БД

https://k245.ru/wp-content/uploads/2023/08/1647608820_12-kartinkin-net-p-kartinki-matritsi-12.jpg

Редактор структуры базы данных является одним из важнейших инструментов разработки информационной системы, которая должна хранить и обрабатывать данные. В этом разделе подробно разбираются возможности встроенного в My Visual Database (MVDB) редактора структуры БД. Первый опыт работы с редактором можно получить при создании проекта “Библиотека v.1.0”, теперь настало время подробно изучить редактор и все его возможности.


https://k245.ru/mvdb/redaktor-struktury-bd-2.html

Визуальное программирование: блог и телеграм-канал.

Re: Курсы обучения и статьи о разработке приложений

Целое число    Для хранения целых чисел в диапазоне [-9223372036854775808 .. 9223372036854775807]



При выводе из базы  в таблицу числа 9223372036854775807 получаем is not a valid integer value

type Integer = -2147483648..2147483647

200

Re: Курсы обучения и статьи о разработке приложений

sparrow wrote:

Целое число    Для хранения целых чисел в диапазоне [-9223372036854775808 .. 9223372036854775807]



При выводе из базы  в таблицу числа 9223372036854775807 получаем is not a valid integer value

type Integer = -2147483648..2147483647

Благодарю за обратную связь. Действительно, диапазоны целых чисел в SQLite и MVDB не совпадают, добавлю соотвествующее примечание.

Визуальное программирование: блог и телеграм-канал.