|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||||
Архитектура: парсинг и выгрузка текстовиков11.03.2020, 10:51. Показов 32490. Ответов 421
Метки вопросы наследования (Все метки)
начало было положено в ветке - Считать текстовые файлы из папки - там и возник вопрос об Архитектуре...
собрала... осталось отображение создать (типа I_tbl_Show) и пронаследовать ? в разные классы пункта назначения (или на консоль, или в файл, или в БД, или допустим ещё в форму)... N.B. классы (пункты-назначения) делать не надо - эти View уже реализованы разработчиками того ПО, на котором сейчас идёт работа... а) пока что можно просто прописать функции-члены класса; и по месту использовать, что надо при разработке - в файл или на консоль; б) в перспективе для Release - реализовать и откомпилировать и выгрузку и в файл, и выгрузку в БД, и отражение в DataGrid... === !! Т.Е. если в Release захочется и выгрузку в текст, и в БД, и допустим ещё в форму (например с разных кнопок сделать) - тут уж лучше и писать, как положено, наследование??... -- к слову из прошлой ветки о: === Обоснование выбора уровня Абстракции (I_tbl_Show со всеми виртуальными функциями): чтобы не дублировать код-сбора-для-выгрузки -- сделать class Table - и класс-интерфейс I_tbl_Show, в котором обозначить virtual-функции выгрузки... эти функции определить в др. классах - типа Interface (IwriteCSV, IwriteDB, IwriteDataGrid)... p.s. классы консоль, файл, бд, DataGrid - не создаём, т.к. эти пункты назначения уже присутствуют... p.p.s. вывести конечные интерфейсы с определёнными методами записи на кнопки... === ИЛИ то, что подчёркнуто чуть выше, стоит реализовать в одном классе Table, и здесь же задать все virtual функции ?? === на скрине: синие - классы, зелёные - интерфейсы (в с++ по сути тоже классы) птицами отмечены уже кое-как реализованные классы (2 птицы) курсивные стрелки - отсутствие наследования ![]() Добавлено через 7 минут вобщем вопрос: class Table и класс I_Tbl_Show - объединить или нет? Добавлено через 10 минут p.p.s. чтобы избежать проблем Ромба и такого: Неоднозначность при множественном наследовании
0
|
||||
| 11.03.2020, 10:51 | |
|
Ответы с готовыми решениями:
421
Проверка двух текстовиков
Сделать скрипт для вывода текстов из текстовиков |
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|
| 28.03.2020, 18:26 [ТС] | |
|
ок, посмотрю - но видела в Code::Blocks какие-то QT4 и QT5 appl. заготовки - думала одно и то же... и wxWidgets видела - вроде компактные для многих device'ов интерфейсы... даже Win32 видела... скромно, но по делу - то, что надо...
хотя к json в U++ уже привыкла... boost только строила в прошлом году - так и не подрядила для своих нужд p.s. а вообще, насколько поняла в CodeBlocks и Qt подключение GCC MinGW (более нового) и libs проблем нет (в Settings->ToolchainExecutables)... в отличие от VS (куда Microsoft свои постоянно обновляет для своего компилятора - т.е. не оч. универсально)... с Borland у меня такая же история вышла - свой (его) компилятор, да ещё старенький, - многие из boost и не собрались под него
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 28.03.2020, 18:45 | |
|
JeyCi, к Code::Blocks нормально прицепить Qt достаточно трудно. Ну то есть прицепить получится, конечно, но неудобно.
1
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|
| 28.03.2020, 18:58 [ТС] | |
|
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 28.03.2020, 19:09 | |
|
JeyCi, в смысле библиотеку Qt, чтобы можно было пользоваться всеми ее возможностями.
1
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|
| 29.03.2020, 07:43 [ТС] | |
|
но линк по Элементам Управления C всё-таки оставлю...
0
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|
| 29.03.2020, 18:05 [ТС] | |
|
всё-таки однозначно надо подтянуть UML -
Где реально используют UML кроме образовательного процесса? а то потом будет поздно... === 11. ОСНОВЫ УНИФИЦИРОВАННОГО ЯЗЫКА МОДЕЛИРОВАНИЯ - тогда и рисунок будет лучше.....
0
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||
| 31.03.2020, 10:46 [ТС] | |||
-GOAL: свой Appl. для взаимодействия с бд (1-й шаг - загрузка в бд из сети или файлов)... ВАЖНО: данные по сути - отображение 3х измерений (не путать с количеством файлов для join)... [вот тут карты не раскрою - и так понятно, кому не понятно - нечего забивать себе голову]БЫЛО: - file load_from_url (with PQ forming links) - file parse (with PQ parse jsons & unifying some fields) - тот же file (get data to DB with VBA) => т.е. по сути поведенческий Шаблонный паттерн проектирования, распределённый на 3 шага по 2м файлам; НО N.B. "хороший интерфейс - это невидимый интерфейс" - поэтому - ЕСТЬ желание перевести всё это на C++ в связи с этим ЗДЕСЬ СЕЙЧАС ВАЖНО для меня - правильно выстроить иерархию Классов в ООП... - т.к. С++ - строго типизированный язык - выделить и потом задать все нужные мне типы -- ну это уже Implementation (насколько понимаю) - как Сущности... и их зависимости или взаимодействия - как Отношения... С ПОМОЩЬЮ Декомпозиции, где надо, и использованием выгодных паттернов проектирования, где можно... и С ПЕРСПЕКТИВОЙ масштабирования на др. продукты... о кроссплатформенности пока не думаю (там , если сейчас будет хорошая модель взаимодействия с бд, проблем быть не должно)... --наконец высказала Цель этой ветки под названием Архитектура... === пока, наверно, бОльшего не вижу смысла хотеть от 1-го этапа взаимодействия с БД... (кроме как разбросать подзадачи на те, которые надо выполнить на уровне Клиента, и те, которые надо выполнить на уровне Сервера, - условно) - в принципе в этой ветке все ответы и советы прямо в точку были - всем Спасибо!.. === если будут нюансы в проектировании Классов и подклассов в такой архитектуре - спрошу ещё... - просто последовательность шагов, которую хочется скрыть от глаз юзера - понятна (изложена, да и на vba+pq реализована), а вот структура входящих данных (ввиду разношёрстности) - для выделения в Классы (Сущности) - ввиду начала знакомства с ООП - пока чуть-чуть в тумане... чуствую нутром, что надо как-то обобщать что-то в Абстрактных классах, но такааая разношёрстность ! - что в принципе - в Абстракции её загнать можно -- но паттерны проектирования чувствую, что применить стоит (для уменьшения количества кода) - но немного глаза разбегаются по паттернам пока (структурным и порождающим)... === т.е. по сути условно Алгоритм обработки данных понятен, а Структура даже данных, не говоря уже о структуре appl'e - немного под вопросом... особенно с учётом того, что структура Данных и структура Приложения разрабатываемого - это вообще разные вещи... вобщем пункт условно алгоритм и условно структура классов (имеющихся/отображённых в файлах входящих) - как бы понятны... - структура, но пока не методы в полной мере... а вот как сократить количество кода исходя из выделенного зелёным - каким паттерном?? пока в задумчивости... Добавлено через 19 минут кстати инфо для однократной обработки 10-200мб -- т.е. в оперативку влезть должно при 40% свободной оперативки от 2гб... Добавлено через 1 час 28 минут ЭВРИКА, о которой bedvit уже предупреждал когда-то! ![]()
ВОТ рисую ручками своё ТЗ из уже имеющихся Excel+PQ файлов, чтобы то же самое написать на С++ [поскольку, как уже отметила выше, win10 не даёт load_urls из-за SSL/TLS проблем к интересующему чужому сайту]... тут в принципе не суть важно, откуда json'ы - из файлов на локал компе тестово или из сети по сути... И получаю ТЗ в несколько строк, которое при имеющихся Классах по структуре json-файлов формирует нужные линки в 2-счёта... а в Excel для этого пришлось отводить целый файл, чтобы на PQ выразить в много шагов само формирование линков и форматирования отдельных его частей (тектовый формат дат по шаблону и др) с последующей загрузкой... ВОБЩЕМ чувствую я, что переходя на ООП и имея возможность задавать свои типы - мы Качественно облегчаем себе жизнь... ну да время покажет... просто сама удивлена - какое короткое ТЗ и как много пришлось сделать шагов в PQ, чтобы учесть все нюансы, излагая алгоритм на функциональном языке... и как проще его (это ТЗ) даже просто прочитать ! без PQ-кода, и нарисовать Классами в ООП... !!!!!!!! всё может быть, что и с Архитектурой я зря усложняю (думая, что 2 файла Excel+PQ+VBA мне будет сложно перевести на C++, ну или даже Python)... -- не смогла не поделиться этой радостью (т.к. давно не читала тот свой длинноватый код на PQ+VBA)
0
|
|||
|
|
|
| 31.03.2020, 17:24 | |
|
JeyCi, про функциональщину не припомню, но если вам это как-то это помогло, то ОК. Мне пока трудно понять вашу конечную цель: Написать свою СУБД на С++, заменить инструменты Excel+PQ+VBA своей программой на С++, или что то другое, я бы исходил из следующего:
1.Приоритетной является задача, а не инструменты ее решения. А значит, возможно вам не нужно копировать функционал Excel+PQ+VBA, а нужно просто решить свою задачу наиболее оптимально, наиболее удобными инструментами, того языка на котором вы хотите ее решить. 2.Если вы все же решили написать свое СУБД. Нужно этот проект разбить по отдельным задачам, и начинать с простого и необходимого, далее добавляя функционал. По каждой задаче, можно на этом форуме, спросить, ту часть, которая не получается. Сразу объять необъятное непростая задача. Знаю одного человек, который задачи ставит себе - как два дня работы. Если больше дней - разбить блок или не берется. Он, в отличии от меня, тру-программист, и за два дня сделает, то что я пилю месяц. 3.Если вы хотите перейти на С++, потому что это быстрее - это не очевидный результат. Возможно стоит поспрашивать у спецов, так ли это и взлетит ли данный подход. ИМХО
0
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||
| 31.03.2020, 20:16 [ТС] | |||||
|
P.S. про "функциональщину" p.p.s пока от новизны ООП подхода ещё немного в растерянности, как перевести процедурный яз в ООП... но понимаю, что это и не надо...а надо всё те же задачи реализовать совершенно по-новому... надо ещё помозговать - чтобы нормальный UML прикинуть на Input-данные того скрина, который в 1-м посту этой ветки... с аггрегированием и экспортом уже вроде здесь по ветке разобрались... (но пока ещё тоже не реализовала)... время однако - надо первостепенно подгрузку из сети перевести на новые рельсы... т.е. эти Input-data Добавлено через 28 минут даже если и не взлетит - но мне будет легче прочитать то, что писала уже давно в контексте общей структуры, - тоже будет хорошо...а на Python - честно говоря, подгрузка взлетает с использованием асинхронности - но опять же ввиду многоплановости входящих данных - ещё дорабатывать и дорабатывать тот код... а по уму - то тоже лучше используя норм. ооп, чтобы потом читать и сопровождать легче было... p.s. или Boost asio для начинающих ещё при случае посмотреть... p.p.s. на win10 конкретно интересующий сайт в PQ2016 даёт ошибку "SSL/TLS" для подгрузки с линков - поэтому и задумалась вообще о переезде... на C++ достучаться по линкам могу - проверено...
0
|
|||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|
| 01.04.2020, 06:17 [ТС] | |
|
Boost.Asio - для примера...
=== ВСЁ - вроде поняла, что мне надо сделать, чтобы перевести проект с процедурного яз на ООП: надо НЕ последовательность шагов прописывать, а задать нужные Типы (их свойства и методы), которые смогут реализовать эту последовательность шагов своими силами (методами и свойствами)... а саму последовательность шагов прописать в int main()... и благодаря возможности создавать свои Типы и их иерархию мы можем значительно сократить саму нужную нам последовательность шагов по ТЗ в int main()... т.к. всю нагрузку из процедуры обработки данных можем переложить на плечи Классов, разработанных!... благодаря этому сам код последовательности шагов в int main() может значительно сократиться и стать более прямолинейным логически, нежели когда мы вынуждены использовать только объекты, которые нам даёт процедурный язык - не всегда удобные для нас в полной мере... вобщем как-то так... EDGE - возможность создавать Нужные объекты Нужных типов с Нужным функционалом, а не искать обходные пути и бег с препятствиями и возможность выкрутиться общими заданными кем-то (не нами) объектами процедурного языка... p.s. т.е. самой надо написать более прямолинейное ТЗ для обработки данных - а для его реализации подрядить свои типы... aka ТЗ может быть иное, т.е. проще и короче (при том, что все типы разработать надо под свои нужды)это и есть Формализовать логику проекта...
0
|
|
|
|
|||
| 01.04.2020, 11:46 | |||
|
0
|
|||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||
| 01.04.2020, 17:45 [ТС] | |||||||
|
перейти на C++ чтобы быть более свободной от Microsoft... формирование линков тяжёлое на функциональном PQ (хоть PQ и понимает json), парсинг json модулем класса JsonBag через vba - не очень приятен... - через пол-года с трудом вчитываюсь, что я там наворотила - хотя работает, но громоздкое описание всех шагов в процедурном vba на разношёрстные json-структуры ... хочу получить приятную структуру кода - который легко будет сопровождать (т.к. сайт сторонний, на него влиять не могу, периодически какие-то корректировки приходится делать)... также структура файлов разношёрстна - умаялась парсить (потом читать нелегко) - хочу иметь приятные глазу Классы - по структуре входящих json... + на С++ есть приятные библиотеки для парсинга json... вобщем решение имеет корни из этих соображений ![]() P.S. в #67 под флагом БЫЛО... там кстати каждое слово file - это всего лишь файл Excel - а в нём работа сразу со всеми разношёрстными нужными json'ами, да ещё на PQ... от ~400 шт и более... не нравится мне рекурсивная природа PQ и как он (PQ) её реализовывает на 2х гб RAM Добавлено через 57 минут вобщем Дату выбрала Basic CtrlLib appl U++
- в принципе, имея класс Формы - в main'e всё стандартно, как в процедурном vba - работаем по схеме Объект.Свойство.Метод. MyAppWindow наследует от TopWindow (базовый класс в одной из библиотек U++ ), насколько понимаю... дальше начинается самое интересное - писать свои классы - чтобы с ними работать по схеме Объект.Свойство.Класс... вобщем-то - начало положено - выпадающий календарь есть... === приложила кодом, как было отмечено ранее - struct - это, как и класс, тип класса... взаимодействие с Main в принципе отражено... начало положено!
0
|
|||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||
| 02.04.2020, 15:28 [ТС] | |||||||
|
15.1. Применение указателей функций для их обратного вызова Callback (программирование) P.S. Делегат (программирование) Делегаты (C++/CX) подписаться на событие. Когда экземпляр класса инициирует событие
Делегаты на C++ === Коллбэки и Делегаты, используемые в мониторинге событий, - в принципе используются в некоторых паттернах... но не уверена, что нужную мне последовательность шагов/процедур стоит завязывать на события... а в некоторых паттернах даже - Перехват (программирование) - как в Шаблонном что-то было... НО - всё проще во взятии json'ов - хоть из сети, хоть из файлов... имхо... вот уж, действительно: т.е. поняла! - сначала разбить на Классы, а потом, если у классов имеются точки соприкосновения в жизненном цикле или повторяемые несколькими сущностями действия, - то выделить в некую бОльшую систему - Паттерн !.. а иногда даже просто Абстрактного класса хватит для облегчения сопровождения кода... или даже просто friend'a... p.s. а "событийное" программирование - вероятно, вообще более актуально для сетевого программирования... имхо ну или события с формы... p.p.s. хотя callback'и и в std::algorithms некоторых уже исполизованы - например, for_each... - так сказать, паттерн Итератор уже есть в std ... да и даже Lambda expressions начиная с C++v.11... - и нечего создавать Америку...Добавлено через 1 час 11 минут === вот что-то такое надо бы обкатать Скачать html страницу (boost.beast) , но в U++ есть и свои примеры Async в Tutorial'e... Добавлено через 3 часа 0 минут HTTP downloader using Beast - C++v.14
Добавлено через 47 минут и наконец, знакомые из Python слова -
link
на ru_stackoverflow_com - /questions/496002/%D0%A1%D0%BE%D0%BF%D1%80%D0%BE%D0%B3%D1% 80%D0%B0%D0%BC%D0%BC%D1%8B-%D0%BA%D0%BE%D1%80%D1%83%D1%82%D0%B8%D0% BD%D1%8B-coroutine-%D1%87%D1%82%D0%BE-%D1%8D%D1%82%D0%BE
Coroutines (C++20) === если либы и компилятор обновить... хоть и
поэтому можно std::async std::future и функции-члены === ВОЗМОЖНО, И STD - ДОСТАТОЧНО чтобы сильно не заморачиваться Архитектурой и boost'ом ...- всё-таки пока не для сетевых технологий делаю, а для себя...
0
|
|||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||||||
| 03.04.2020, 12:59 [ТС] | ||||||
|
и часто уже реализованы они в самих библиотеках... таких, как async, thread... может Microsoft просто как-то не очень хорошо их подрядил для своих задач (раз тормозит иногда)... + всё-таки эти технологии, действительно, привязал к мощи железа (размеру RAM или количеству ядер) уж очень с перебором (может и не всегда нужное)... имхо... надо просто новый инструментарий (эти библиотеки) применять соответствующе... == C++11 Multithreading – Part 9: std::async Tutorial & Example Асинхронное вызов функции - хоть здесь и предупреждают
C++11 Multithreading – Part 4: Data Sharing and Race Conditions
P.S. чуть что - C++11 Multithreading – Part 5: Using mutex to fix Race Conditions
от boost'a не отказываться, т.к. есть boost::coroutines (Техника написания аналога await/async из C# для C++ ) == Всем спасибо за неоценимые подсказки, чтобы сориентироваться в такой сложной системе, как новый язык и MyProject. Полагаю, остальные вопросы - это подробности для вынесения в отдельные ветки. Overview в этой ветке считаю полным, хоть и немного сумбурным Добавлено через 1 час 56 минут понимаю, почему его используют для создания софта - т.е. когда нужно создать по сути UI (user Interface), которым user будет манипулировать на своё усмотрение на этапе Run-time и, как следствие, софт будет выполнять те или иные действия... в зависимости от того, что разработчик прописал в Классах (управляющих Объектами) на этапе до Complile-time... т.е. ООП выгодно именно для обеспечения Interaction between soft (game or etc, т.н. Виртуальной Реальностью) & user... а не для перевода процедурного языка в ООП... но т.к. возможности C++ (т.е. библиотеки) шире, чем vba - пока начну с такого простого своего задания - выполнить процедуру из 3х шагов на C++ (подгрузить [из 2х альтернативных источников - folders & http], распарсить, закинуть в бд)... кнопку "достать из бд" - бонусом... ![]() Добавлено через 23 минуты и кстати работать с указателями надо лишь в том случае, когда в библиотеке нет соответствующего wrapper'a или adapter'a или декоратора или etc., скрывающих эту потребность использовать указатели... как правило либы C++ как раз нейтрализуют необходимость использовать указатели, а чистый С - работает с ними как есть... поэтому по совету из 1й моей ветки - определиться, какой файл писать - .c или .cpp - и, желательно, "не смешивать языки", в крайнем случае в рамках проекта, полагаю, можно создать файл нужного типа... другой вопрос - как потом скомпилируется такой "разношёрстный проект" - но это уже на усмотрение компилятора... или на собственном опыте... p.s. кстати clang - вроде быстрее компилирует, чем gcc... - есть инфо на форуме
0
|
||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||
| 07.04.2020, 06:13 [ТС] | |||
|
полагаю, - по аналогии...
0
|
|||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||||||
| 07.04.2020, 20:25 [ТС] | |||||||||||
|
или кодом из предыдущего вложения
Кликните здесь для просмотра всего текста
Добавлено через 4 минуты Добавлено через 3 часа 32 минуты
p.s. в CodeBlocks и QT, как уже отмечала - проще, можно задавать в настройках... p.p.s. а новый boost со старым компилятором, полагаю, погоды не сделает... Добавлено через 15 секунд вспомнила:>> пока даже проверять не хочется асинхронность саму по себе - она просто даёт возможность appl'у не зависать, загоняя процесс в фон. >> чтобы добиться реального ускорения, - полагаю, надо подрядить параллельность именно библиотеки, выполняющей то или иное действие, совокупно с возможностью выделения Task'ов, например, в цикле по линкам (как, например, было в Python, где я получила оооч. хорошее ускорение)...например, используя async await + aiohttp (или aiofiles)... >> пока же в стандарте C++ беглым взглядом не вижу подобных библиотек, вобщем надо изучать сами библиотеки (какие из них уже перешли на параллельность) стандарта - чтобы потом их подрядить в Couroutines, дающий возможность запускать это добро в Tasks... >> либо весь параллелизм прописывать самостоятельно, заботясь о thread safety и НЕ на библиотеках С++ (fopen, fread, GetLine etc)... а на начальном С - создать свою библиотеку, полагаю... >> коллбэки и делегаты стоит подрядить для создания параллельного чтения GetLine... но вряд ли это сильно поможет (у json - 1 строка)... и у меня ещё не тот уровень для написания библиотек... >> ... или хотя бы своих Классов с использованием design patterns с этими коллбэками и делегатами для реализации параллельности... ====== ====== вобщем ВЫВОД: >>>> ООП - (помимо его реального предназначения) - удобен, когда проект разрастается... >>>> Py для ускорения уже имеет реальные инструменты (библиотеки), пока С++, вероятно, ещё только разрабатывает их... (не уверена, т.к. не видела внутренностей этих библиотек) >>>> в Ultimate++ (last version - compiler 7.3 - для стандарта С++v.17 норм), ещё не v.20... но есть свой набор plug-in'ов - e.g. SSL, чтобы решить мою проблему... пример асинхронности тоже есть, как и CoWork - но реализовано это всё силами Core.h, родной для U++ >>>> LINQ C#'а (возник на основе Haskell lambdas, перерос в язык реальных запросов, правда синтаксис немного др., чем SQL, есть LINQ to Json) тоже не будет быстрее, чем Серверный SQL... поэтому по возможности выполнять операции на стороне сервера... >>>> компактный SQLite - обкатать P.S. c boost'ом в U++ может быть - U++ Problem using boost library
0
|
|||||||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
|||||||||
| 08.04.2020, 08:52 [ТС] | |||||||||
|
A lightweight worker thread for non-blocking operations. примеры отсюда - дают error: call of overloaded 'Async(GuiMainFn_()::<lambda()>)' is ambiguous as example p.3
(закомментированное размещаем в заголовочный файл) - так создаются библиотеки... ... результат...
Добавлено через 5 минут P.S. всё есть - simple download test app that concurrently downloads a number of jpg files - 2016г. - и уже даже лучше может быть... reading the new libs
0
|
|||||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||
| 09.04.2020, 11:58 [ТС] | ||
|
=== т.к. функций пока нет - про разброс по ядрам пока не думаю... т.к. параллельное вычисление пока не надо, а если и понадобится - то это доп расходы... не думаю, что на 500-10000 файлах сильно сэкономлю, хотя всё зависит от того, что там считать надо будет (да и, в приципе, расчёты не сложные - и на сервере посчитать можно будет)... имхо... честно говоря, вопрос о том ИДУТ ЛИ lambda выражения через стэк или через кучу - до сих пор для меня не отвечен - если кто в теме? === coroutines ещё не пробовала - v.20 ... да и без них считывание с файлов быстрое... теперь вижу, что все тормоза идут из IO-процессов... в PQ вероятно из его функциональной природы, а в VBA из-за медленного взаимодействия его с объектной моделью Excel - заметно становится при выгрузке больших объёмов... если выгружать сразу в Access - то его движок тоже не быстрый... ПРОБЛЕМЫ ВСКРЫТЫ, ПУТИ ОПТИМИЗАЦИИ ПОНЯТНЫ... остальные подзадачи обработки данных - это лишь вопрос алгоритмов... кстати в U++ есть CoSort и несколько др. с приставкой Co... - that are Parallel Algorithms - справка об этом и не умалчивает... Хорошая Библиотека - друг разработчика... намного более useful чем форумные "мобберы" === а bedvit'у и DrOffset'у - ещё раз отдельные спасиба... ![]() p.s. Input из сети всё-таки ещё покручу в голове и в коде (если можно ускорить)... и как альтернатива Абстрактному классу выше - Runtime Polymorphism with std::variant and std::visit - вот из названия мне уже не очень нравится - после того, как благодаря DrOffset'у узнала слова Compile-Time И Run-Time... но этот контейнер просто буду иметь ввиду...
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,549
|
||||
| 12.04.2020, 09:44 [ТС] | ||||
|
вот оно для U++
p.s. и в U++ для работы с сервером SQLite - видимо, всё-таки надо файл схемы ещё иметь(делать) в проекте.. но почему-то запросом (Execute) простые tbls достаёт из бд, а views не хочет, даже если обратиться не к view, а подобной sql-инструкцией по коду к тблице... ![]() p.p.s. и несколько простых правил для - Ускорение сборки C и C++ проектов и наконец, мой ВЫВОД из жизненного опыта - по словам не сразу начинаю верить:-- хоть чтение json - и не совсем парсинг, но по моей задаче, например, значения некоторых полей json-структуры - вынуждает копаться в строковой переменной - для приведения к единообразию и логической обоснованности выбранного атрибута... p.p.p.s. и интересный нюанс sqlite3 - ещё не тестила... sqlite3+regex - есть линки...
0
|
||||
|
|
||
| 12.04.2020, 13:17 | ||
1
|
||
| 12.04.2020, 13:17 | |
|
В указанном dsn архитектура драйвера и архитектура приложения не соответствуют друг другу архитектура процессоров и компьютерная архитектура,Intel32. для первокурсников Ошибка "в указанном dsn архитектура драйвера и архитектура приложения" Архитектура бд Архитектура БД Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
начало и оглавление
-
Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|
|
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
|
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
|
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0)
Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона
Уважаемые коллеги!
В продолжение. . .
|
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии
Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
|