Для входа на форум нажмите здесь
Computer programming
Автор темы: Aft3rmath_renamed_580476_10042022
Дата создания:
Old 02.05.2011, 09:13
ВедхийТип's Avatar
Предводитель
Join Date:
28.09.2007
Re: ADO.Net + C#
ну Страуструп припедалил туда обьектную модель и часть кода для шаблонов, потому что его задолбало писать куски на асме, а еще один чувак написал слт.

если это была шутка, то она была весьма удачной.
Old 02.05.2011, 10:17
Re: ADO.Net + C#
Originally Posted by OleLukoe:
В своё время слышал что язык Си это вообще шутка двух очень умных людей, но именно шутка. Или это очередное расхожее клише?
Old 02.05.2011, 10:29
Re: ADO.Net + C#
Originally Posted by ВедхийТип:
ну Страуструп припедалил туда обьектную модель и часть кода для шаблонов, потому что его задолбало писать куски на асме, а еще один чувак написал слт.
stl ?

Originally Posted by ВедхийТип:
если это была шутка, то она была весьма удачной.
Настолько, что стала индустриальным стандартом де-факто.
Хотя, оратор, на пост которого был ответ, приведенный в цитате, говорил про си.
Old 02.05.2011, 10:37
Re: ADO.Net + C#
Originally Posted by ВедхийТип:
ну Страуструп припедалил туда обьектную модель и часть кода для шаблонов, потому что его задолбало писать куски на асме, а еще один чувак написал слт.

если это была шутка, то она была весьма удачной.
Это уже Си++, я же говогрил про Си.

Играю в то, что сам не понимаю.
Old 02.05.2011, 10:48
Re: ADO.Net + C#
Originally Posted by OleLukoe:
В своё время слышал что язык Си это вообще шутка двух очень умных людей, но именно шутка. Или это очередное расхожее клише?
Какая еще шутка? Керниган и Ричи создали Си специально для переноса Unix на различные платформы.

Поскольку изначальный интернет держался на Unix-системах, то с тем же успехом Си создали для создания среды распространения постов "хомяки-йогурты".
Old 02.05.2011, 11:22
ВедхийТип's Avatar
Предводитель
Join Date:
28.09.2007
Re: ADO.Net + C#
таки си. натурально.

Добавлено через 2 минуты
Originally Posted by _3V:
stl ?
да.
Last edited by ВедхийТип; 02.05.2011 at 11:22. Reason: Добавлено сообщение
Old 02.05.2011, 13:33
Leledinn's Avatar
Забаней
Join Date:
08.09.2005
Re: ADO.Net + C#
Originally Posted by ВедхийТип:
этот вопрос решает метод GetId =)
Он это должен решать не в методе, реализующем делегат, а ДО его вызова.

Пропаганда нацелена на удобрение дерева, на котором растет плод нашего воображения. (с)
При каждом пробитии дна открываются новые горизонты развития. (народная мудрость)
...зато рыночек, джинсы, жвачка, колбаса и можно заграницу ездить без отчета коммисару в райком.. oh, wait...
Цель капитализма всегда одна: Эксплуатация. Гнет. Война. Чтоб народных масс нищета и гибель ему несли максимальную прибыль!
Old 02.05.2011, 13:36
ВедхийТип's Avatar
Предводитель
Join Date:
28.09.2007
Re: ADO.Net + C#
кстати неплохая оптимизация... спасибо :)

Добавлено через 1 минуту
но все равно... у меня есть параметр Id, который принимает функция GetById

и этот Id надо реализовать, а делегат принимает обьект......
Last edited by ВедхийТип; 02.05.2011 at 13:36. Reason: Добавлено сообщение
Old 02.05.2011, 13:37
Re: ADO.Net + C#
Originally Posted by ВедхийТип:
неплохая оптимизация
в этом контексте, оптимизация может быть только оптимальной, а если "неплохая" то это не оптимизация, а повышение эффективности. русский язык, блеять!

ничего личного, просто с некоторых пор слово "оптимизация" для меня как красная тряпка :(
Old 02.05.2011, 13:39
Leledinn's Avatar
Забаней
Join Date:
08.09.2005
Re: ADO.Net + C#
Originally Posted by OleLukoe:
В своё время слышал что язык Си это вообще шутка двух очень умных людей, но именно шутка. Или это очередное расхожее клише?
Аж жир из монитора течет...

Добавлено через 1 минуту
Originally Posted by ВедхийТип:
и этот Id надо реализовать, а делегат принимает обьект......
Бле.... Ты явно не понял мою идею..

Пропаганда нацелена на удобрение дерева, на котором растет плод нашего воображения. (с)
При каждом пробитии дна открываются новые горизонты развития. (народная мудрость)
...зато рыночек, джинсы, жвачка, колбаса и можно заграницу ездить без отчета коммисару в райком.. oh, wait...
Цель капитализма всегда одна: Эксплуатация. Гнет. Война. Чтоб народных масс нищета и гибель ему несли максимальную прибыль!
Last edited by Leledinn; 02.05.2011 at 13:41. Reason: Добавлено сообщение
Old 02.05.2011, 14:05
ВедхийТип's Avatar
Предводитель
Join Date:
28.09.2007
Re: ADO.Net + C#
наверно... ща перечитаю...

з.ы. просто меня сейчас заставляют ебашить маркап - это такой пздц.

Добавлено через 8 минут
Originally Posted by Leledinn:
после этого ты спокойно в делегат передашь логическое выражение, где будешь проверять условие: id == very_unusual_long_name_for_primary_key и получать искомый объект.

Тебе даже не придется СВОЙ делегат писать, обойдешься анонимным l-выражением:

id =>very_unusual_long_name_for_primary_key == id
а, я понял. ты немного ошибся.

делегат в данном случае принимает объект, и по этому в данном контретном случае id будет обьектом типа Т и оно тебе выругается с фразой - падре, вы шо творите?

Добавлено через 1 минуту
ой, ладно, забей - напишу как нить на досуге. :)
Last edited by ВедхийТип; 02.05.2011 at 14:05. Reason: Добавлено сообщение
Old 02.05.2011, 14:07
Re: ADO.Net + C#
Originally Posted by Leledinn:
Аж жир из монитора течет...
Не пытайся найти то, чего не существует. Добрый совет.

Играю в то, что сам не понимаю.
Old 02.05.2011, 14:51
Leledinn's Avatar
Забаней
Join Date:
08.09.2005
Re: ADO.Net + C#
Originally Posted by OleLukoe:
Не пытайся найти то, чего не существует. Добрый совет.
Не пытайся влезать в то, о чем не имеешь четкого представления. Тоже вот такой добрый совет.

Добавлено через 9 минут
Originally Posted by ВедхийТип:
а, я понял. ты немного ошибся.

делегат в данном случае принимает объект, и по этому в данном контретном случае id будет обьектом типа Т и оно тебе выругается с фразой - падре, вы шо творите?
Да не ошибся, просто я не понимаю, нахрена с делегатом морочиться, если тип Id следует выяснить до вызова SingleOrDefault, а в SingeOrDefault отправить уже l-выражение с конкретным условием выборки. Чем ты конкретнее определишь условие поиска, тем быстрее выполнится операция выборки из СУБД, не так ли?

Сначала ты метаданные читаешь и выясняешь, к какой таблице обратиться. А потом уже делашь выборку из конкретной таблицы. Фишка в том, чтобы SELECT * FROM <table> с миллионом записей лишний раз не делать. Я правильно понимаю принцип lazy ?

Добавлено через 40 секунд
Похоже, мы о разных вещах говорим немного.

Добавлено через 2 минуты
Я ща попробую накидать некую хрень и опробовать свою идею. Заодно и с делегатами разберусь получше.

Пропаганда нацелена на удобрение дерева, на котором растет плод нашего воображения. (с)
При каждом пробитии дна открываются новые горизонты развития. (народная мудрость)
...зато рыночек, джинсы, жвачка, колбаса и можно заграницу ездить без отчета коммисару в райком.. oh, wait...
Цель капитализма всегда одна: Эксплуатация. Гнет. Война. Чтоб народных масс нищета и гибель ему несли максимальную прибыль!
Last edited by Leledinn; 02.05.2011 at 14:51. Reason: Добавлено сообщение
Old 02.05.2011, 17:54
Leledinn's Avatar
Забаней
Join Date:
08.09.2005
Re: ADO.Net + C#
Code:
interface IMotorVehicleDAO<T, K>
    {
        void Create ( T t );
        void Update ( T t );
        //IQueryable<T> GetAll ();
        bool Delete ( K id );
        bool Delete ( T t );
        T GetById ( K id );
    }

abstract class MotorVehicleDAO : IMotorVehicleDAO <MotorVehicle, ValueType>   
    {
        protected List<MotorVehicle> ds = null;

        public MotorVehicleDAO ( List<MotorVehicle> ds )
        {
            this.ds = ds;
        }

        #region Члены IMotorVehicleDAO<MotorVehicle,ValueType>

        public virtual void Create ( MotorVehicle t )
        {
            ds.Add( t );
        }

        public virtual void Update ( MotorVehicle t )
        {
            
        }

        public virtual bool Delete ( ValueType id )
        {
            throw new NotImplementedException();
        }

        public virtual bool Delete ( MotorVehicle t )
        {
            throw new NotImplementedException();
        }

        public virtual MotorVehicle GetById ( ValueType id )
        {
            return this.ds.SingleOrDefault(element => MySingleOrDefault(element, id));
        }

        protected bool MySingleOrDefault ( MotorVehicle element, ValueType id )
        {
            PropertyInfo [] props = element.GetType().GetProperties();

            // А вот тут вставить проверку по id и все прочие шняги
            
            return false;
        }
        #endregion
    }
Вот такая конструкция компилируется без проблем.

Рантайм не проверял, естественно, ибо иерархия классов-интерфейсов не доделана.

ValueType, в принципе, можно заменить на ссылочный тип. Он просто для примера.

Пропаганда нацелена на удобрение дерева, на котором растет плод нашего воображения. (с)
При каждом пробитии дна открываются новые горизонты развития. (народная мудрость)
...зато рыночек, джинсы, жвачка, колбаса и можно заграницу ездить без отчета коммисару в райком.. oh, wait...
Цель капитализма всегда одна: Эксплуатация. Гнет. Война. Чтоб народных масс нищета и гибель ему несли максимальную прибыль!
Last edited by Leledinn; 02.05.2011 at 18:35.
Old 02.05.2011, 18:17
ВедхийТип's Avatar
Предводитель
Join Date:
28.09.2007
Re: ADO.Net + C#
А***ТЬ!!!

Пасибы
Old 02.05.2011, 18:34
Leledinn's Avatar
Забаней
Join Date:
08.09.2005
Re: ADO.Net + C#
Короче, сделал консольное приложение, которое работает.

При вызове GetById последовательно 3 раза вызывается метод MySingleOrDefault (в коллекции 3 объекта находятся).

ИМХО, это не очень хорошо....

Могу проект тестовый скинуть, чтоб воочию увидеть...

Если что, кинь сообщение на e-mail: leledinn СОБАКА ГУГЛОПОЧТА ТОЧКА com

Добавлено через 3 минуты
Code:
return this.ds.SingleOrDefault(element => MySingleOrDefault(element, id));
element подразумевается MotorVehicle, поскольку ds - это List<MotorVehicle>

в твоей реализации для каждой таблицы, в принципе, будет своя реализация паттерна DAO, ну или CRUD...

Добавлено через 3 минуты
Originally Posted by ВедхийТип:
Пасибы
не за что

Мне это самому пригодится рано или поздно.

Если не трудно, приведи потом содержимое своего метода GetId. Я так понимаю, что атм рефлексия используется - я хочу посмотреть пример ее использования.

Пропаганда нацелена на удобрение дерева, на котором растет плод нашего воображения. (с)
При каждом пробитии дна открываются новые горизонты развития. (народная мудрость)
...зато рыночек, джинсы, жвачка, колбаса и можно заграницу ездить без отчета коммисару в райком.. oh, wait...
Цель капитализма всегда одна: Эксплуатация. Гнет. Война. Чтоб народных масс нищета и гибель ему несли максимальную прибыль!
Last edited by Leledinn; 02.05.2011 at 18:45. Reason: Добавлено сообщение
Old 03.05.2011, 22:20
Re: ADO.Net + C#
Предлагаю модерам гостинной на полном серьезе закрепить тему, переименовав ее по более общему принципу.
Лелег вобще красавец)
И кто еще сталкивался: посоветуйте русскоязычной литературы на тему Objective C в Xcode, на торрентах на глаза только англоязычная попадалась.
И в догонку вопрос: где можно взять Xcode для 10.6.2 Snow Leopard'a? просто это последний, который я нашел OSX x86 для виртуал бокса, и так до конца и не понял, мне на свой i5-760 x4 можно ставить оригинальный MacOSX, или только модифициорванные OSX? Т.к. поставил вышеупомянтуого леопарда, а найти на него старый хкод не могу
Old 03.05.2011, 22:26
ВедхийТип's Avatar
Предводитель
Join Date:
28.09.2007
Re: ADO.Net + C#
Originally Posted by Aft3rmath:
Objective C в Xcode
ты на айфоны педалить решил. или так под яблоко?

кстати, что-то я не встречал заказов под макось, разве что под ифон или ипады всякие... этих хоть задом ешь. :)

з.ы. книжек не встречал ибо не сталкивался ниразу
Old 03.05.2011, 22:56
Leledinn's Avatar
Забаней
Join Date:
08.09.2005
Re: ADO.Net + C#
Мак купить проще чем хакинтоши *****ть.

Пропаганда нацелена на удобрение дерева, на котором растет плод нашего воображения. (с)
При каждом пробитии дна открываются новые горизонты развития. (народная мудрость)
...зато рыночек, джинсы, жвачка, колбаса и можно заграницу ездить без отчета коммисару в райком.. oh, wait...
Цель капитализма всегда одна: Эксплуатация. Гнет. Война. Чтоб народных масс нищета и гибель ему несли максимальную прибыль!
Old 03.05.2011, 22:56
Re: ADO.Net + C#
Originally Posted by Aft3rmath:
закрепить тему, переименовав ее по более общему принципу.
закреплять, конечно, лишнее - тут не так много кодеров. а вот переименовать это да. чтобы не потерялась. а то стопицот тем "как сделать..." уже было и прошло, а какого-то более-мене постоянного дискуссионного топика - нету.
Old 03.05.2011, 23:44
Rival_renamed_616464_12072021's Avatar
Like a Rolling Stone
Join Date:
30.06.2008
Re: ADO.Net + C#
Прикреплять не стану. Я бы вообще с удовольствием еще парочку открепил бы, потому что вся суть прикреплённой aka важной темы в том, чтобы она(они) выделялась(лись) на общем фоне и сразу бросалась в глаза. А когда заходишь в раздел и видишь среди обновленных тем 8 прикрепленных и 5 обычных - вся суть теряется.

Переименовать могу, конечно, хотя не совсем понимаю смысл в этом.
Old 04.05.2011, 00:11
Re: ADO.Net + C#
Originally Posted by Rival1:
Переименовать могу, конечно, хотя не совсем понимаю смысл в этом.
ну вот смотри, появилась тема по конкретному вопросу. проблему, в общем-то решили на второй странице. остальное - дискуссия уже о другом, но всё в рамках одной области. у кого-то появились вопросы, кто поделился знаниями. потребность в теме есть. но от изначальной точки ушли уже далеко.

поэтому, как уже сказали, хорошо бы этот топик обозначить как более "широкий", что ли. вон, как "Политота" та же, куда в последнее время сместилось всё обсуждение политических явлений. обсуждать, например, арабские революции в теме о каком-нибудь Лукашенко ведь нелепо же? вот тут примерно то же самое :)
Old 04.05.2011, 00:20
Rival_renamed_616464_12072021's Avatar
Like a Rolling Stone
Join Date:
30.06.2008
Re: ADO.Net + C#
Originally Posted by Anquiatus:
например, арабские революции в теме о каком-нибудь Лукашенко ведь нелепо же? вот тут примерно то же самое :)
Почему же? Мы тут этим не первый год занимаемся. Пока людям интересна проблема лукашенкота - обсуждают его. Как только он большинству перестаёт быть интересным и у людей есть желание обсудить арабскую революцию - обсуждают арабскую революцию. В таком небольшом разделе как гостиная подобный, как бы его назвать, массовый оффтоп явление частое и вполне нормальное.

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

Но опять же, мне, в общем-то, всё равно. Хотите переименовать - говорите название, сделаем.
Old 04.05.2011, 00:31
Re: ADO.Net + C#
Originally Posted by Rival1:
В таком небольшом разделе как гостиная подобный, как бы его назвать, массовый оффтоп явление частое и вполне нормальное.
просто людей, готовых обсуждать политику, тут гораздо больше, чем кодеров. в итоге, такие темы как эта теряются, а новые создаются только когда у кого-то появляется действительно важная и срочная проблема. т.е. раз в три-четыре месяца.

вот у меня, например, часто возникало желание поднять какой-нибудь небольшой вопрос по соответствующей тематике, а темы нет. создавать новую - вроде как вопрос не такой уж и существенный. "апнуть" старую - тоже непонятно, какую из них? все обросли тремя слоями оффтопа, и название перестало отражать суть уже спустя сутки после создания. и всё.
Originally Posted by Rival1:
Но опять же, мне, в общем-то, всё равно. Хотите переименовать - говорите название, сделаем.
хотим, хотим :)
завтра скажем название тогда.
Old 04.05.2011, 08:30
Re: ADO.Net + C#
Originally Posted by ВедхийТип:
ты на айфоны педалить решил. или так под яблоко?

кстати, что-то я не встречал заказов под макось, разве что под ифон или ипады всякие... этих хоть задом ешь. :)

з.ы. книжек не встречал ибо не сталкивался ниразу
да предлоижили попробовать, на айфоны айподы айпэды, еще пока не вдавался в подробности
Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off