Обновить
30
0
Артур Ломакин@arthurlomakin

User

Отправить сообщение

Если я испорчен C#, это плохо или хорошо?

Я думал, что не все поймут, потому что не знают Razor и C#, а в своем коде не пишу, только мешает.

даже в 2021 даже опытные разработчики склонны писать бизнес-логику в onClick

Я так тоже делал, пока не понял, что так делать нельзя, сейчас изучаю архитектуры и паттерны, уже критично.

Я как раз использовал ts-node.


Про репозиторий в TypeORM вам писали, можно проще и лучше.

Я это тоже использовал. Но оно же все равно не подскажет, если я опечатался, а это и было целью

~250 KB. У меня Blazor Server, а не Blazor WebAssembly, там намного больше, как вы и говорите.

Согласен, что не все претензии весомые. Но добавилась весомая проблема независимости миграций в ORM. Дописал в статье.

Думаю норм. Только это же для IndexedDB

Дописал в статье. Независимость от базы при создании новой миграции.

Большой опыт C# - это +- 2 месяца до написания интернет-магазина. Я тогда узнал хоть, что такое БД, умел только SELECT, UPDATE, DELETE. Не знал даже, что нужно таблицы связывать по ключу. И писал приложение на WPF. А JS я тоже знал, но бек не писал и фронт писал без фрейворков и библиотек.

Опыта до Blazor у меня было тоже +- 2 месяца, я писал приложение на WPF. И это все.

Есть Blazor Server, а есть Blazor Webassembly. Я писал на Blazor Server.

Я это смотрел. Все равно, если я напишу вместо name nam, то будет все ОК. Хотя я хотел добиться, чтобы IDE мне сообщило об ошибке. Я правда уже нашёл способ. Дописал в статье. Но все равно миграций нормальных нет нигде в JS.

В том то и дело, что плохо

Я думал написать, но мне лично кажется, что соревноватся с 1С, ikko, poster, r-keeper. Хотя можно ориентироваться на рынок всяких там кафешек(соревноватся с Poster). Но это про рестораны, а большинство компаний устраивает 1С. Это если бы лет 15 назад... Но я тогда ещё не родился))

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

Не соглашусь. Мне 15 лет. Перешёл в дистанционную школу на екстерн. Пишу интернет-магазины. Если бы я терял время и пичкал себя всякими ненужными предметами, то не знал бы и десяти процентов того, что я знаю

А почему вы советуете именно WTL, а не, например, Qt? И почему C++?

Мне вот 15 лет. Написал интернет-магазин на Blazor(не Webassembly). Сайт типа своя CMS, с редактором страниц(ckeditor). Есть программа на WPF. Там всякие справочники. Писал про это статью.

Решил переписать на React + Node. Прошёл месяц. Возненавидел всю экосистему JS. Начал учить React. Понял, что JSX - полная фигня, по сравнению с Razor-шаблонами. Эти фигурные скобки)). Ну с этим можно смирится. Начал писать сервер. Node + express + typeorm+ mssql база данных. Сразу добавил typescript и на сервер и в React, потому что intellisense для js вообще не работает толком.

Typeorm, по сравнению с Entity Framework Core - кусок.. не знаю даже чего. Миграции вообще не работают!!! Они просто не работают! Из всего месяца, я потратил 3 недели пытаясь настроить typeorm миграции. Я пробовал все. У меня не работал template проекта от typeorm! Причём такая проблема была не только у меня(на Github есть issue по миграциям с mssql). Иногда typeorm говорит, что нет изменений, когда я добавил новые сущности и поля, хотя первая миграция генерится нормально, было такое, что миграции генерируются нормально, изменения находит(это было уже чудо), пишу npm run migration-run(скрипт, в котором уже вызываю typeorm, он должен запустить миграции, т. е. применить изменения в бд), а typeorm мне пишет "нет изменений в схеме"! Да как же нет, если только что typeorm сгенерила миграции. Тестовую базу удалял миллион раз, проекты пересоздавал, пробовал postgres, тоже. самое. Уже вообще думал не писать на node, но знал ещё про mikroorm, там есть нормальный unit of work. Попробовал с mikroorm, mssql поддержки нет, стороняя библиотека не работает, заработало с postgres, но все равно не нравится то, что миграции при генерации проверяют схему бд, а не самого проекта.

Вот почему это плохо. Я добавил новое поле, сгенерил миграцию, потом добавил ещё одно поле, пытаюсь сгенерить миграцию, ORM сравнивает с базой структуру, и в новой миграции добавляет два поля, хотя в прошлой миграции оно тоже добавляется. Это потому, что в ORM миграции - это sql запросы в чистом виде, а в ef core, миграция - это набор вызовов методов(типа AddColumn) и ORM может быть независимая от бд, и знать свою структуру.

Ещё нет LINQ. В JS нельзя разобрать функцию на Expression, хотя я узнал, что можно менять AST дерево Typescript кода и реализовать LINQ в TS, но не в JS. Есть даже библиотека для typeorm для поддержки LINQ в Typescript. Но, для MikroOrm такой библиотеки нет, а самому писать как-то долго.

Хочу про это все статью написать и там все подробнее описать.

Короче, один негатив у меня вышел. Удивлён, что JS-сообщество не смогло написать orm лучше, или хоть вровень ef Core. Причина понятна, в JS обществе коммерческой цели нет это делать у больших компаний, а Entity Framework написала Microsoft и поддерживает это ORM. Как после этого можно писать что-то на JS? Сам JS как язык, конечно, тоже не супер, но на это не жалуюсь. Чуть захейтил JS

Эх, а сильно хочется

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность