![]() |
![]() |
#136 | ||
Активный Участник
|
![]() Цитата:
Цитата:
- пл-скл никуда не перенесешь, жава может если пое.. то может что-то и удасться - а вот тут все сложнее. у меня ощущение, что то что раньше работало на 4х процах с пл-скл оторваная логика в орм долбит субд так, что 4х процев субд уже не достаточно, а стоимость лицензий оракла ... - ИДЕ под пл-скл как раз есть и есть хорошо навороченые, но в принципе согласен, красиво разложить код по пакетам пл-скл будет посложней, хотя жава со своими тараканами Rich vs Anemic ... |
||
![]() |
![]() |
Зарегистрируйтесь или войдите под своим именем, чтобы спрятать этот рекламный блок |
![]() |
#137 | ||||
Спам-робот
|
![]() Цитата:
Они убоги как языки программирования. Синтаксически и семантически. Там нет даже лямбды! ![]() Цитата:
"Алгоритмы + структуры данных = программы" ![]() Цитата:
А почему никто не подумал, что оперативная БД для приложения и БД для отчетов - могут быть разными? svu добавил 02.05.2010 в 21:56 Цитата:
В треде про производительность я показал код, который без особых усилий с моей стороны шел на двух очень разных платформах. Покажите мне поддержку рефакторинга в этих IDE. Последний раз редактировалось svu, 02.05.2010 в 20:56. Причина: Добавлено сообщение |
||||
![]() |
![]() |
Благодарность от: | Kot (02.05.2010) |
![]() |
#138 | |
Заслуженный Участник
|
![]() Цитата:
Дело не в красоте... "Код пишется не для босса, не за деньги и не для заказчика, он пишется для тех кто его будет сопровождать". Почитайте что такое рефакторинг. Kot добавил 03.05.2010 в 00:28 Целостности чего?.. "Когда вы хотите доехать вам шашечки нужны или средство передвижения?" Данные могут хранится де угодно, главное это не усложнять процесс их обработки. Мне стало интересно как вы будете рассказывать клиенту про важность целостности данных в БД. Особенно в приложении где БД используется как временное хранилище или как средство обмена данными... Или рипортами весь ИТ для вас ограничен? ![]() Не, правда, это разговор глухого с немым... Последний раз редактировалось Kot, 02.05.2010 в 23:28. Причина: Добавлено сообщение |
|
![]() |
![]() |
![]() |
#139 | |
Активный Участник
|
![]() Цитата:
для пл-скл юнит тесты выглядят так: http://unittest.inside.quest.com/product_info.jspa |
|
![]() |
![]() |
Благодарность от: | svu (03.05.2010) |
![]() |
#141 | ||
Активный Участник
|
![]() Цитата:
я не говорю, что ооп плохо, я объясняю очень простую вещь - ормы, кеширование, ленивая загрузка, все это попытка присобачить объектную модель на совершенно другую реляционную. еще раз, я не говорю что ооп плохо, я утверждаю, что мыслящий объектами жава девелопер создает проблемы рсубд неестественной для рсубд нагрузкой (обычно это запросы в цикле) Цитата:
![]() |
||
![]() |
![]() |
![]() |
#142 | |
Спам-робот
|
![]()
Тестировать надо с данными. Обязательно. Но данные должны быть на входе теста в виде структур данных, а не в виде таблиц. Иначе вы тестируете одновременно хранилище и алгоритмы. Это, конечно же тесты. Безусловно полезные, даже возможно автоматизированные - но это НЕ юнит-тесты.
Спасибо за ссылку, любопытные картинки - но они только подтверждают то, что я ожидал - в мире plsql не может быть юнит тестов. Точнее, теоретически может, но за юнит-тестируемый код отрывают гениталии, как Вы любезно нам сообщили (ибо они действительно идут в разрез с принятым стилем разработки plsql) И да, как там насчет рефакторинга в IDE? svu добавил 03.05.2010 в 11:15 Цитата:
PS Про рефакторинг нашел кое-что сам. Любопытно. Небогато, но в мире без нормального ОО лучше вряд ли получится http://www.toadworld.com/Default.asp...67&EntryID=321 http://www.toadworld.com/Default.asp...67&EntryID=328 http://www.toadworld.com/Default.asp...67&EntryID=346 Последний раз редактировалось svu, 03.05.2010 в 10:31. Причина: Добавлено сообщение |
|
![]() |
![]() |
![]() |
#143 | |||
Активный Участник
|
![]() Цитата:
Цитата:
tpc добавил 03.05.2010 в 12:13 Цитата:
Последний раз редактировалось tpc, 03.05.2010 в 11:13. Причина: Добавлено сообщение |
|||
![]() |
![]() |
![]() |
#144 |
Спам-робот
|
![]()
Ни в коем случае. Нафиг. Это называется эклектика в ЯП. Если язык ОО - он должен оставаться ОО. Попытка зафигачить SQLоиды в ОО язык - это синтаксический бардак. Я очень рад, что жабка (пока что) не идет этим путем. Правда, тут оракл купил сан...
Не надо это все выносить на уровень языка - оставьте это все библиотекам. А в виде библиотек это те же ОРМы. На самом деле, то, чего не хватает - оно все из мира ОО (работа с классами, наследованием и пр.), поэтому я и сказал, что лучше вряд ли получится. |
![]() |
![]() |
![]() |
#145 | ||
Активный Участник
|
![]() Цитата:
Цитата:
вот они, уже зажившие шрамы на теле пл-скл: ![]() http://www.oracle.com/global/ru/oram...3/dev_aoo.html |
||
![]() |
![]() |
![]() |
#146 |
Спам-робот
|
![]()
Честно говоря, я не очень понимаю, где тут консерватории и филармонии. От ОО никто не собирается отказываться, LINQ ничего принципиально нового по сравнению с тысячелетним ProC не дает. Это же все синтаксический сахар, бессмысленно портящий язык - а по сути тот же ОРМ (я, думаю, справлюсь написать Вам код на LINQ, который будет правильным ОО и будет "внизу" кошмарным сиквелем
![]() http://en.wikipedia.org/wiki/Languag...ry#LINQ_to_SQL - найдите 10 отличий от обычного жабского орма, если убрать синтаксический сахар. Делая шаг назад. Есть мысль, что чем менее сиквельным будет ОО интерфейс, тем больше простор для "ума" (оптимизации) на уровне ОРМ. Это как с языками программирования и компиляторами (в сущности, это даже не аналогия, это частный случай). Чем высокоуровневей язык, тем больше простор для оптимизации в компиляторе. Поэтому правильно было бы в ОО языках использовать не подход "выдай мне конструкцию, наиболее близкую к окончательному сиквелю", а "скажи мне, чего ты НА САМОМ деле хочешь, я соптимизирую это так, чтобы базе было удобно с тобой работать". Причем конкретной базе, можно тюнить оптимизацию под вендора, под версию... Но это налагает высокие требования на качество оптимизации внутри ОРМа. И, как уже было заявлено, закрывает доступ к базе всем, кроме этого приложения. Но это архитектурно правильно в любом случае. Да, жестко. Мы тоже таким баловались в 2000г (не прямо таким, а пытались писать в ОО стиле на plsql - выглядело сурово) Последний раз редактировалось svu, 03.05.2010 в 12:59. |
![]() |
![]() |
![]() |
#147 | |
Активный Участник
|
![]() Цитата:
LINQ это декларативные вставки позволяющие работать с данными как с данными, а не пытаться превратить все и вся в полноценный объект. Код:
var q = animals .Where(a => a.CanFly) .Select(a => new { a.Id, a.Name }) .OrderByDescending(a => a.Id); |
|
![]() |
![]() |
![]() |
#148 | |
Спам-робот
|
![]() Цитата:
Я же говорю - разница между LINQ и современными ОРМами только в синтаксе, по большому счету. Точнее, LINQ является (ИМХО ужасной по определению) попыткой сделать ОРМ в базовом ОО языке, вместо библиотеки. |
|
![]() |
![]() |
Благодарность от: | Kot (03.05.2010) |
Зарегистрируйтесь или войдите под своим именем, чтобы спрятать этот рекламный блок |
![]() |
#149 | |
Заслуженный Участник
|
![]() Цитата:
Еще раз: я правда не могу понять ваши аргументы почему ОРМ создает проблемы... Даже не думал выгибать пальцы... Вы понаблюдайте как джавер делает изменения (рефакторинг) и скажите есть ли подобные инструменты, можно ли так же быстро это делать для пл/скль? Второй момент - читабельность кода. Для автора это, само собой, не вопрос. Сможет ли другой разработчик быстро понять смысл этого пл/скль? Мне кажется процедурный подход будет всегда менее читабельным по своей природе. Вы не согласны? |
|
![]() |
![]() |
![]() |
#150 |
READ ONLY
|
![]()
весь спор крутится вокруг навязанных svu трех причин:
1. архитектурная правильность 2. оо девелоперы не должны разбираться в sql коде 3. портируемость приложений выскажу свое мнение, так как я более 10 лет разрабатывал оо приложения: 1. довод о том что получается мешанина, если бизнес логика присутствует и в базе и в приложении имеет место быть, в том случае если нет четкого понимания, что наиболее эффективно выполняется субд, а что приложением. мешанина также получается из-за недостатков в организации труда, когда девелоперы зачастую не знают что делает их коллега. 2. проблема оо девелоперов, каждый уважающий себя оо девелопер обязан знать основы СУБД. 3. возникают из-за проблем с архитектурой, неправильным выбором технологий, средств разработки и средств хранения данных.
__________________
Хотели всё и сразу, а получили ничего и надолго. [url=http://www.visited.ru][img]http://www.visited.ru/flagmap.php?visited=ATBEBGCZFRDEIEITMTNLRUESUKVATR[/img][/url] |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщ. |
Вопросик | Asiza | Вопросы и предложения | 13 | 13.02.2010 21:44 |
Вопросик! | ProGameR | Автотранспорт | 14 | 31.01.2010 20:59 |
вопросик | Ратобор | Вопросы и предложения | 5 | 25.01.2010 16:03 |
вопросик. | xandrey | Иммиграция | 9 | 15.12.2009 21:31 |
Вопросик | Irinak | Работа в Ирландии | 12 | 20.01.2006 11:20 |