Самая удобная ORM

Печать RSS
807

А
Автор
Оранжевые штаны
0
del

Добавлено через 00:54 сек.
Даже 145

Добавлено через 01:34 сек.
Через пару минут удалю ссылку ) "секрет"
Прикрепленные файлы:
Изменил: Артур (19.05.2013 / 23:45)
A

Чатланин
0
ок, проехали

Добавлено через 02:16 сек.
Башка (19 Мая 2013 / 23:37)
Вообще есть одна важная вещь, которую по сути AR делать не может. Как правило при расширении проекта сторонней группой программистов приходится расширять сущности через наследование, в AR сталкивася с тем, что код в объектных-записях либо очень раздут либо вообще не позволяет без переписывания существующих табилц и кода что то расширять

многое не понял, но как с этими же проблемами помогает справиться датамаппер?

Добавлено через 05:01 сек.
хотя, у меня проблем не возникало, всё ок. я не знаю как вы там работаете.
А
Автор
Оранжевые штаны
0
Вот, глянь тесты, думаю будет понятно

Добавлено через 02:24 сек.
Вот к примеру задача. У тебя есть класс User который имеет свойства login и pass. Для него есть таблица в БД USERS[LOGIN, PASS]. Тебе нужно добавить в класс дополнительное свойство IP. Как ты это сделаешь? При это добавлять прямо в класс нельзя, нужно наследовать
Прикрепленные файлы:
dm.zip (3.33Kb)
A

Чатланин
0
Вот к примеру задача. У тебя есть класс User который имеет свойства login и pass. Для него есть таблица в БД USERS[LOGIN, PASS]. Тебе нужно добавить в класс дополнительное свойство IP. Как ты это сделаешь? При это добавлять прямо в класс нельзя, нужно наследовать

зачем? я создаю миграцию с добавлением поля ip в таблицу и работаю с этим свойством - всё.

Добавлено через 01:53 сек.
orm сама добавит в свойства на основе структуры таблицы. а она это умеет) и не только это)

Добавлено через 03:38 сек.
другой человек может выкачать с помощью git эту миграцию, выполнить ее и так же работать с этим новым свойством. никакой магии. ничего сложного нет.

Добавлено через 06:43 сек.
офф, лучше бы я в это время лингво львенка накормил, чем доказывал тебе простые вещи)
Изменил: Ant0ha (20.05.2013 / 00:00)
А
Автор
Оранжевые штаны
0
Еще один запрос для получения информации о структуре таблицы?

Вот об этом я и говорю, мы работает иначе, мы создаем наследника, добавляем ему все что надо и работаем с ним как с обычным объектом. Как бы правильно выразиться - мы работаем с объектами классическим образом, а вы работаете с базой данных через объекты. Вот это мне не нравиться

Добавлено через 00:14 сек.
У меня сущности это котлеты, а база это мухи
A

Чатланин
0
> Еще один запрос для получения информации о структуре таблицы?

запрос можно кэшировать либо добавлять поле явно в свойства

> У меня сущности это котлеты, а база это мухи

вот расскажи мне, нафига это надо? если твоя цель как раз таки в объединении записей бд с этими сущностями?
А
Автор
Оранжевые штаны
0
Для того чтобы иметь высокое зацепление и низкое связывание - GRASP
Цель решить задачу так, чтобы потом можно было изменять реализацию без переписывания всей библиотеки
A

Чатланин
0
Вот, типичное мышление астронавта архитектуры. Сори, нам просто не понять друг друга.

Добавлено через 03:09 сек.
Я легко расширяю проект и не переписываю ORM. Цель достигнута изначально и не мной. КПД тут повыше будет.
A

Чатланин
0
Я, как бы, делегирую разработку моста между относительно низкоуровневым программированием и программированием на более высоком уровне (разработку фреймворка) другим людям. А сам занимаюсь тем, чем мне нужно заниматься - разработкой конечного продукта. Тут как бы разделение труда идет.
Изменил: Ant0ha (20.05.2013 / 00:41)
А
Автор
Оранжевые штаны
0
Дело в том, что я не прикладной программист, я ведущий разработчик и координатор проекта, тут нельзя по принципу - главное чтоб работало - нужно все тщательно придумывать, чтоб эффективно использовать время
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск