Инструмент Orm, не позволенный:Чем Вы занимаетесь? [закрытый]

Я проверил ваши коды и обнаружил, что это больше, чем просто 2 ключа, на самом деле вы можете воспроизвести его проще с помощью большего количества ключей; попробуйте одновременно нажать asdjkl (6 клавиш), и вы увидите еще больше беспорядка.

И я думаю, что проблема заключается в том, что цикл перерисовки реакции не работает со слушателем событий dom, что означает, что onKeyDown и onKeyUp запускаются всякий раз, когда он хочет, но реакция не перерисовывается при каждом их запуске. Просто войдите [...activeKeys, e.key] и [...activeKeys].filter(i => i !== e.key), и вы увидите это.

Я думаю, что решение состоит в том, чтобы использовать простую локальную переменную для обновления activeKeys, затем метод render должен использовать эту переменную вместо результата хука, и, наконец, сделать forceUpdate в каждом onKeyDown и [ 117], чтобы сделать реактивный повтор.

7
задан Robert S. 5 March 2009 в 19:51
поделиться

14 ответов

Строго говоря Ваши опции:

  1. Не используйте реляционную базу данных
  2. Не используйте язык ООП

Иначе некоторое решение ORM неизбежно (даже если Вы самокрутка, все еще простой уровень ORM).

12
ответ дан 6 December 2019 в 04:49
поделиться

Во-первых, всего я найду РЕАЛЬНЫЙ ответ для вопроса, "Почему ORM с открытым исходным кодом не имеет место?"

Если это из-за человека, кто принял это решение 1) имеет страх в замедлении производительности - докажет, что не будет проблемы с ним. 2) если это из-за страха, что "мы не можем позволить себе еще один инструмент, потому что система является уже сложной" - объяснит, почему ORM будет ускорять мою скорость.

Я думаю, что другие решения (центральное таблицей кодирование, владейте DAL) - не красивые решения. Я думаю, что, если Нельзя использовать ORM для Вашего задания - я не знаю.. Я оставил бы такой проект на вашем месте.

-1
ответ дан 6 December 2019 в 04:49
поделиться

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

Никакой ORM какой-либо вид ИЛИ просто открытый исходный код / $$$?

Существуют бесплатные версии больших инструментов ORM:

-4
ответ дан 6 December 2019 в 04:49
поделиться

Спросите, почему ORM's не позволяется, что составляет как ORM, и затем решите оттуда 1 из двух возможностей:

  1. Соглашение
  2. Никакое соглашение не (завершено)
0
ответ дан 6 December 2019 в 04:49
поделиться

Я прокрутил бы свое собственное решение, вероятно, с помощью некоторого инструмента генерации кода. Tecnically при переводе результатов (быть этим datareaders, таблицы, recordset или безотносительно) к объектам, у Вас есть маленький o/r картопостроитель, очень недостающий, но все еще... Это - вопрос определения, которое я предполагаю.

Моя основная цель состояла бы в том, чтобы не повторять CRUD в моем коде, это занимает время, скучно и является источником дефектов.

Как указано: если реляционная база данных не требуется, Вы могли бы всегда идти с некоторой объектной базой данных. Но это намного более редко и если Ваш босс будет против orm:s, то он вряд ли пойдет для этого.

1
ответ дан 6 December 2019 в 04:49
поделиться

Прежде всего это абсолютно задержано, что Вы не можете даже использовать с открытым исходным кодом.

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

2
ответ дан 6 December 2019 в 04:49
поделиться

Посмотрите то, что они думают о iBatis (http://ibatis.apache.org/), который не является ORM, но помогает Вам получить объекты от запросов базы данных без непостижимого волшебства ORM, большого количества XML все же.

Как они делают вещи теперь?

1
ответ дан 6 December 2019 в 04:49
поделиться

Если это о компании, являющейся слишком дешевым для покупки один, то запишите, что собственные, и в конце проекта показывают им стоимость с точки зрения времени. (Я предполагаю, что они против свободных альтернатив на принципе),

Если это о производительности, Вам, возможно, придется проверить, есть ли у них точка.

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

Если это - потому что приложение уже очень "центрально таблицей", необходимо будет также думать, улучшит ли добавление ORM вещи или просто добавит большую ненужную сложность отображения.

(О, и считайте это: http://blogs.tedneward.com/2006/06/26/The+Vietnam+Of+Computer+Science.aspx)

4
ответ дан 6 December 2019 в 04:49
поделиться

Я прокрутил бы свой собственный DAL, с помощью чего-то вроде Универсальных ДАО для абстракции его таким способом, с которым не сильно связывается остальная часть моего кода однако, я добираюсь до данных.

Это помогает подкачать все это к ORM, если они приходят позже.

4
ответ дан 6 December 2019 в 04:49
поделиться

Здесь существует три возможности:

  1. Ваши боссы не понимают преимуществ использования ORM.
  2. Ваши боссы делают вещи путем, они всегда делали вещи и не рассмотрят изменение.
  3. У Ваших боссов есть допустимые причины того, что не был выбор ORM.

Более, чем вероятный, хотя, это - комбинация этих трех вещей. У них, вероятно, есть обоснованная озабоченность, которая могла быть исправлена через лучшее понимание ORMs. Мой совет состоит в том, чтобы попытаться продать их на ORMs. Найдите особенно противную часть кода, который мог быть исправлен при помощи ORM и сделать прототип, который показывает, насколько тот код мог быть упрощен. Кроме того, быть готовым пойти на компромисс.

Если они не готовы сдвинуться с места на этом, необходимо спросить себя, если это - действительно место, Вы хотите работать. Не потому что они не позволят Вам использовать ORMs (который Вы могли, вероятно, жить без), но потому что они не будут слушать Вас. У Вас не может всегда быть своего пути, но необходимо было ввести на процессе разработки.

5
ответ дан 6 December 2019 в 04:49
поделиться

На основе Вашего имени пользователя я сказал бы "использование LINQ". Это встроено в.NET, и это не ORM (строго говоря).

9
ответ дан 6 December 2019 в 04:49
поделиться

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

Можно обойтись без ORM при применении шаблонов как "RowDataGateway" или "TableDataGateway" от Шаблонов Fowler Архитектуры приложений для предприятия.

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

6
ответ дан 6 December 2019 в 04:49
поделиться

Опции:

  1. Самокрутка
  2. Выход
  3. Используйте с открытым исходным кодом так или иначе, не говоря им, покажите им прототип, когда он работает хорошо, затем попросите, чтобы они пересмотрели открытый исходный код.
9
ответ дан 6 December 2019 в 04:49
поделиться

Обработайте свой собственный DAL, как мы выполнили искони, длинное давно... 2004.

3
ответ дан 6 December 2019 в 04:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: