powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / ORM vs голый SQL
25 сообщений из 110, страница 4 из 5
ORM vs голый SQL
    #37886819
рубист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы,
авторНаличие в отдельной части приложения конструкции
User->save()
не придаёт автоматом вызываемой части статус ORM!!!
http://ru.wikipedia.org/wiki/Утиная_типизация
цитата "Если что-то выглядит как утка, плавает как утка и крякает как утка, то, вероятно, это утка"
и еще цитата "То есть считается, что объект реализует интерфейс, если он содержит все методы этого интерфейса, независимо от связей в иерархии наследования и принадлежности к какому-либо конкретному классу."
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37886843
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы http://mongoengine.org/ - Object-document mapper - ODM!!!
http://ru.wikipedia.org/wiki/ORM - Object-relational mapping - ORM!!!
авторВыходит, OJM можно реализовать в любом языке, поддерживающем такие структуры данных, как списки и словари. Ну ещё парсилка/дампилка JSON'а.
OJM можно реализовать в любом языке, где есть объекты нуждающиеся в преобразовании Object -> JSON -> Object
т.к. джейсон строка прекрасно сохраняется практически в любом хранилище и с лёгкостью преобразуется обратно в объект без лишних телодвижений, если при этом в качестве серверного яп использовать js - это вообще станет банальщиной!
Можно на основе OJM написать свою либу (fw) которая облегчит нам жизнь и будет ещё сохранять\выбирать данные, валидировать их и тд

Слова... Всего лишь название. Главная суть вот в этом "It uses a simple declarative API, similar to the Django ORM."
>Можно на основе OJM написать свою либу (fw) которая облегчит нам жизнь и будет ещё сохранять\выбирать данные, валидировать их и тд
Дедал, ну залогинься уже!
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37886876
авторЕсли что-то выглядит как утка, плавает как утка и крякает как утка, то, вероятно, это утка
Код: php
1.
2.
$mongo = new Mongo();
$mongo->archive->audio->save($audio);


гыгы - это тоже ОРМ? ;)
авторСлова... Всего лишь название. Главная суть вот в этом...
да перестань ты!
видеть больше, чем сказано - удел паталогии (С)

Удачи! С вами становиться скучно...
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37886885
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы,

Нену чувак, мне не важно что у него там под капотом, я просто знаю, что у него такой же интерфейс как и у Джанговского ОРМа. Остальное мне пофиг. В этом и есть один из основных принципов программирования - абстракция
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37886923
авторНену чувак, мне не важно что у него там под капотом
вероятнее всего, ты не программист, а, возможно - пианист, подрабатывающий созданием хоме-паг для непривередливых заказчиков! ;)
P.S. извини, если угадал! ;)))
ББ!!!
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37886953
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NekZ...В этом и есть один из основных принципов программирования - абстракция
Чтобы уметь гладить вовсе не обязательно знать, как устроен утюг. Это должны знать соответствующие специалисты.
Так вот, здесь нередко эти самые специалисты и собираются, обсуждая устройство утюгов.
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37886989
рубист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы
Код: php
1.
2.
$mongo = new Mongo();
$mongo->archive->audio->save($audio);


гыгы - это тоже ОРМ? ;)

Это не ORM.
Вы совершенно плаваете в понятиях. :)

Здесь у нас присутствует соотношение "БД хронящая Обьекты "->"Обьекты языка программирования" ,
а ORM это "БД хронящая реляционные данные "->"Обьекты языка программирования".
Чувствуете разницу?

Это скорее можно назвать OOM(Object to Object Mapping)
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887089
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeNekZ...В этом и есть один из основных принципов программирования - абстракция
Чтобы уметь гладить вовсе не обязательно знать, как устроен утюг. Это должны знать соответствующие специалисты.
Так вот, здесь нередко эти самые специалисты и собираются, обсуждая устройство утюгов.

Тогда наверное можно сказать, что нативный SQL - подошва от утуюга, в принципе и гладить можно, но геморроя много и больше вероятности обжечься.
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887389
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы,

Оу, ну прям в точку ты меня уязвил Что ж ты на похапе-то пишешь, а не Си и Асме?
У меня как бы более важные задачи, нежели копание в исходниках ОРМа. Когда я хочу посмотреть как и что там работает - лезу в исходники, но это редкость, так как, все основные плюшки документированы. В общем, сударь, думаю, мы поняли друг друга :)
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887392
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeNekZ...В этом и есть один из основных принципов программирования - абстракция
Чтобы уметь гладить вовсе не обязательно знать, как устроен утюг. Это должны знать соответствующие специалисты.
Так вот, здесь нередко эти самые специалисты и собираются, обсуждая устройство утюгов.
Ой да ладно бородой трясти. Сейчас мы обсуждаем нужность использования ОРМов, а не то как они сделаны :)
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887401
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HettТогда наверное можно сказать, что нативный SQL - подошва от утуюга, в принципе и гладить можно, но геморроя много и больше вероятности обжечься.
Нет, это голая спираль, за которую надо держаться голыми руками и гладить - оверхеда меньше, ожогов больше
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887405
авторСейчас мы обсуждаем нужность использования ОРМов, а не то как они сделаны :)
да не нужны они вовсе - тк уже существуют более подходящие решения !!!
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887423
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы,

FVMas?
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887450
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпыавторСейчас мы обсуждаем нужность использования ОРМов, а не то как они сделаны :)
да не нужны они вовсе - тк уже существуют более подходящие решения !!!
это какие?
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887548
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NekZ...Ой да ладно бородой трясти. Сейчас мы обсуждаем нужность использования ОРМов, а не то как они сделаны :)
Во-первых, у меня нету бороды, а во-вторых, ОРМы усложняют дело и подсаживают на иглу.
Короче, проект проще сделать на "голом SQL", а не на орме. Это раз.
А два - если над базой ещё висят пара-тройка десктопных приложений, написанных хоть на сях, хоть на делфях, то свои ормы можно засунуть ... . По простой причине, что твоё приложение, по сравнению с ценностью базы - г-но, которому цена три копейки.
Всё понятно?
Хотя, если это сайт-визитка, то не понятно нафига здесь серверная часть, если можно сделать всё на чистом хтмл.
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887551
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge,

По-моему у вас какие-то максималистичные понятия об этом. Только чёрное и белое - сайты визитки и сайты с бухгалтерской отчётностью. Знаете, а есть ещё и гостевухи :)) Скажите, а сайт free-lance.ru вы к какому отнесёте?
21-ый век на дворе и пора уже задуматься об удобстве разработки. К тому же, мы сейчас в вебдеве (!!!) и десктопные приложения не обсуждаем (и потом, что мешает использовать веб-интерфейс для работы с БД?). К тому же, десктопные приложения, ориентированные на работу с БД скорее всего не для всех пользователей Интернета, а лишь для корпоративных сетей (не так ли? автоматизированная система учёта компьютерного оборудования, сделанная студентом второкурсником на дельфях и акцессе. победа чо!). Я уже сказал, что говорю за большинство, а не за узкоспециализировнную область
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887563
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только когда начинаешь лабать - охота завернуть SQL-вызовы во что-то более абстрактное... Так дорастаем до DAO
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887629
рубист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeОРМы усложняют дело и подсаживают на иглу.

По моему только упрощают. Это особенно ощутимо на стадии сопровождения.

ShSergeКороче, проект проще сделать на "голом SQL", а не на орме. Это раз.

Спорное утверждение. При отсутствии опыта согласен, проще на "голом SQL".
Я меня создалось впечатление, что у вас нет достаточного опыта в использовани ORM и вы об этом судите поверхностно.
ORM ценен не сам по себе, он ценен тем, что стандартизует интерфейсы доступа к данным на уровне приложения,
заставляя разработчика следовать определенным шаблонам проектирование. Это в свою очередь дает больше возможностей
в автоматизация процесса разработки и тестирования, повторном использование кода, использовании классов и модулей от других разработчиков и т.д.
Но эфективное использование ORM подразумевает в то числе и хорошее знание SQL, иначе это будет управление атомным реактором без знания ядерной физики.

ShSergeА два - если над базой ещё висят пара-тройка десктопных приложений, написанных хоть на сях, хоть на делфях, то свои ормы можно засунуть ... . По простой причине, что твоё приложение, по сравнению с ценностью базы - г-но, которому цена три копейки.
Всё понятно?
С чего вы взяли, что использование ORM само по себе может как-то повредить БД? Если руки кривые, то БД повредится и без него.
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887667
Фотография SmeL_md
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
рубистС чего вы взяли, что использование ORM само по себе может как-то повредить БД? Если руки кривые, то БД повредится и без него.как бы Вам сказать не совсем навредить а подкинуть "мусорка". СУБД кэширует подогревает данные и если она выполняет в большинстве своем не оптимальные запросы ей придется высвобождать данные из рам и записывать на винт.
ORM ничего хорошего конечному пользователю продукта не дает.
ORM-щикам интересно знакомо такое понятие как тюнить запросы.
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887672
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
рубист...При отсутствии опыта согласен, проще на "голом SQL"... .
Феноменальное утверждение!
Короче, до свидания. Надеюсь, лет через пять.
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887673
авторORM ценен не сам по себе, он ценен тем, что стандартизует интерфейсы доступа к данным на уровне приложения
стандартизация интерфейсов доступа к данным на уровне приложения происходит за счёт хорошо спроектированной МОДЕЛИ!!!
ОРМ тут вообще ни причём!!! Тот же контроллер получает данные от представления и отдаёт их модели через её методы, либо получает данные из модели и отдаёт их в представление (если угодно) - модель в свою очередь проверяет эти данные строит зависимости (манипулирует ими) и отдаёт в БД (либо маппит в случае с ОРМ->РБД, либо напрямую в случае той же Mongo)!!!
автор21-ый век на дворе и пора уже задуматься об удобстве разработки.
NoSQL
авторЯ уже сказал, что говорю за большинство, а не за узкоспециализировнную область
тынц
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887753
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ты сначала ответьте на это 12894662
кто-то из толпыNoSQL

Не в тему сказано
кто-то из толпы тынц
Луркофакер детектед

У меня есть мнение, что вы использовали какие-то ущербные ОРМы и поэтому вот сейчас судите так обо всех и стараетесь изобретать велосипеды, называя их FW (Оу щи, FVMas же). Ну понятно, на PHP других быть и не может :) А может, вам просто лень читать TFM. Проще всё-таки так написать
Код: php
1.
2.
3.
4.
$res = mysql_query("SELECT id, name, money FROM users ORDER BY id");
while ($row = mysql_fetch_array($res)) {
//Трали-вали, выводим на страницу через echo
}



Нежели описать модель один раз и обращаться к ней в коде
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
class User(Model):
    name = StringField(default="Вася Пупкин")
    money = IntegetField(default=0)

    @property
    def first_name(self):
        return self.name.split(' ')[0]
#...

users = User.objects.order_by('id')

#передаём в шаблон
return render_to_response('my_super_template.html', { 'users': users })


Текст шаблона
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<html>
<body>
<div class="user_list>
{% for user in users %}
<span class="user_first_name">{{ user.first_name }}</span>
<span class="user_money">{{ user.money }}</span>
{% endfor %}
</div>
</body>
</html>


Пример написан на коленке и сферический в вакууме.
Удачи с сопровождением кода и рефакторингом

З. Ы. А вот похапе точно подсаживает на иглу, слезть с которой уже нельзя это точно. Слава Б-гу что я до него другие языки изучал, иначе бы сейчас спорил с рубистом по поводу ненужности ОРМов
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887784
авторНежели описать модель один раз и обращаться к ней в коде
Ааааааааааа................
MVC
Model
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
namespace models\mongo;

class administration {

    private
    $_connection,
    $_db,
    $_users,
    $_roles;

    public function __construct() {

        $this->_connection = new \Mongo();
        $this->_db = $this->_connection->selectDB('administration');
        $this->_users = $this->_db->selectCollection('users');
        $this->_roles = $this->_db->selectCollection('roles');
        
        $this->_users->ensureIndex(
                array('name' => 1),
                array('unique' => true, 'background' => true)
        );    
        $this->_roles->ensureIndex(
                array('name' => 1),
                array('unique' => true, 'background' => true)
        );
    }

    public function getRoles($sort) {
        return iterator_to_array(
                        $this->_roles->find()->sort($sort), FALSE
        );
    }

    public function getUsers($sort) {
        return iterator_to_array(
                        $this->_users->find()->sort($sort), FALSE
        );
    }
}


Controller
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
namespace controllers;

class administration {

    private
    $_administrationModel;

    public function __construct() {
        $this->_administrationModel = new \models\mongo\administration ();        
    }

    public function index_get() {        
        return array(
            'users' => $this->_administrationModel->getUsers(array('name' => 1)),
            'roles' => $this->_administrationModel->getRoles(array('name' => 1))
        );
    }
}


view
ну и шаблон!!!

заметь, в модели я волен делать что пожелаю с методами getRoles(), getUsers()!!! Это Важно!!!
могу написать прямой запрос в РБД, могу навернуть ОРМ и замапить полученные значения из РБД на объекты, могу не париться и передать так как есть!!!

Код: php
1.
2.
3.
4.
users = User.objects.order_by('id')

#передаём в шаблон
return render_to_response('my_super_template.html', { 'users': users })


гыгы!!!
и чё буш делать при смене хранилища данных - искать новый FW который обеспечит поддержку конструкции
users = User.objects.order_by('id')

12890589 - с самого начала говорил, что вы плохо втыкаете в разницу между ORM vs MODEL!!!
Теперь в этом убедился окончательно!!!
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887785
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автормогу написать прямой запрос в РБД
И давно монго стала реляционной?
...
Рейтинг: 0 / 0
ORM vs голый SQL
    #37887786
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-то из толпы,

Дедал, ну залогинься уже, мне трудно общаться с тобой, когда ты не залогинен.

Я описал MTV, это не совсем MVC ;-) Кстати, на пыхе это по-прежнему смотрится страшно, что охота вырвать на себе все волосы. Столько много лишнего кода...
>ORM vs MODEL!!!
RTFM MAZAFAKA
А я ведь говорил, что похапе влияет на моск... И лишний раз в этом убеждаюсь
>и чё буш делать при смене хранилища данных - искать новый FW который обеспечит поддержку конструкции.
Нет, дорогуша, у джанги под разные хранилища единый интерфейс. Как и у SQLAlchemy. Видимо, у похапе с этим делом совсем всё плохо, коль вы на каждый чих ищете "FW"... Мне вас жаль.
...
Рейтинг: 0 / 0
25 сообщений из 110, страница 4 из 5
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / ORM vs голый SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]