powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
151 сообщений из 151, показаны все 7 страниц
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026718
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изучал использования NHibernate и паттернов и в итоге пришел к такому коду, это тестовый набросок, хочу подобное использовать в одном солюшене в котором будут два проекта, один в виде сервисов, другой в виде ASP.NET MVC. Задаю вопрос с целью понять, правильно ли я понял эти паттерны, правильно ли их использовал и не лишние ли они вообще и можно было все не усложнять?
Исходный код (в виде одного файла, для запуска необходимы пакеты System.Data.SQLite, NHibernate, NHibernate.Mapping.Attributes):

Код: c#
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.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
using System;
using NHibernate;
using NHibernate.Cfg;
using NHibernate.Mapping.Attributes;
using NHibernate.Tool.hbm2ddl;

namespace NhSQLiteTest
{
    [Class]
    [Serializable]
    public class Product
    {
        [Id(0, Name = "Id", Column = "Id", TypeType = typeof (int))]
        [Generator(0, Class = "identity")]
        public virtual int Id { get; set; }

        [Property]
        public virtual string Name { get; set; }
    }

    internal class Program
    {
        private static void Main()
        {
            using (var uow = new UnitOfWorkFactory().Create())
            {
                var productRepo = new Repository<Product>(uow);
                productRepo.SaveOrUpdate(new Product {Name = "TestRepo"});
            }
            Console.WriteLine("Success!");
            Console.ReadLine();
        }
    }

    public interface IUnitOfWorkFactory
    {
        IUnitOfWork Create();
    }

    public class UnitOfWorkFactory : IUnitOfWorkFactory
    {
        private ISessionFactory _sessionFactory;

        public ISessionFactory SessionFactory
        {
            get
            {
                if (_sessionFactory == null)
                {
                    BuildSessionFactory();
                }
                return _sessionFactory;
            }
        }

        public IUnitOfWork Create()
        {
            return new UnitOfWork(SessionFactory.OpenSession());
        }

        private void BuildSessionFactory()
        {
            var config = new Configuration();

            config.Configure();
            config.AddAssembly(typeof (Product).Assembly);
            HbmSerializer.Default.Validate = true;
            var stream = HbmSerializer.Default.Serialize(typeof (Product).Assembly);
            stream.Position = 0;
            config.AddInputStream(stream);

            new SchemaUpdate(config).Execute(false, true);

            _sessionFactory = config.BuildSessionFactory();
            _sessionFactory.OpenSession();
        }
    }

    public interface IUnitOfWork : IDisposable
    {
    }

    internal class UnitOfWork : IUnitOfWork
    {
        public UnitOfWork(ISession session)
        {
            if (session == null) throw new ArgumentNullException(nameof(session));
            Session = session;
        }

        public ISession Session { get; private set; }

        public void Dispose()
        {
            Session.Dispose();
            Session = null;
        }
    }

    public interface IRepository<T> where T : class
    {
        void SaveOrUpdate(T obj);
    }

    public class Repository<T> : IRepository<T> where T : class
    {
        private readonly UnitOfWork _uow;

        public Repository(IUnitOfWork uow)
        {
            if (uow == null) throw new ArgumentNullException(nameof(uow));
            _uow = uow as UnitOfWork;
            if (_uow == null)
            {
                throw new ArgumentException("Этот репозиторий принимает только единицу работы NHibernate");
            }
        }

        private ISession Session
        {
            get { return _uow.Session; }
        }

        public void SaveOrUpdate(T obj)
        {
            Session.SaveOrUpdate(obj);
        }
    }
}


...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026723
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTi,

зачем же так усложнять... почему IUnitOfWork -- бессмысленная ничего неумеющая хрень? и почему репозиторий, вдруг, решает задачи UOW?

я так понимаю, то что ты назвал «Unit of Work» на самом деле переносчик болезни, т.е. заразы, т.е. ISession?

как только люди паттерны не каверкают. с таким же успехом можно класс Program переименовать в UnitOfWork, а остальное обозвать как в голову взбредёт, смысл не поменяется ни на йоту.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026854
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

В связи с пониманием, что я все не правильно сделал я и начал эту тему) IUnitOfWork появился в связи с тем, что мне советовали использовать интерфейсы, так же он был нужен когда я использовал EF и там нужно было сохранять изменения, так же здесь можно сделать транзакции, но сейчас я их проигнорировал для упрощения. Теперь более конкретные вопросы. А разве это не задача UnitOfWork нести в себе подключение к БД и управлять им (создавать, уничтожать)?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026856
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiА разве это не задача UnitOfWork нести в себе подключение к БД и управлять им (создавать, уничтожать)?Нет. Эту задачу лучше возложить на DI-контейнер.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026868
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiтак же здесь можно сделать транзакции, но сейчас я их проигнорировал для упрощенияТо есть Вы проигнорировали суть паттерна.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026888
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiА разве это не задача UnitOfWork нести в себе подключение к БД и управлять им (создавать, уничтожать)?Задача UnitOfWork - отследить изменения и зафиксировать их в рамках единой транзакции, либо откатить всё.

У Вас Nhibernate, там уже есть реализация ISession. Вам только нужно начать транзакцию (BeginTransaction) и реализовать Commit и Rollback.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39026889
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029144
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAУ Вас Nhibernate, там уже есть реализация ISession. Вам только нужно начать транзакцию (BeginTransaction) и реализовать Commit и Rollback.
Спасибо за ответ, я еще изучаю ту ссылку которые вы дали. Пока получилось вот так вот, это больше похоже на то что надо?
Код: c#
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.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
    public interface IUnitOfWork : IDisposable
    {
        bool InTransaction { get; }

        IGenericTransaction BeginTransaction(IsolationLevel? isolationLevel = null);
    }
------
    internal class UnitOfWork : IUnitOfWork
    {
        public UnitOfWork(ISession session)
        {
            if (session == null) throw new ArgumentNullException(nameof(session));
            Session = session;
        }

        public ISession Session { get; private set; }

        public void Dispose()
        {
            Session.Dispose();
            Session = null;
        }

        public bool InTransaction
        {
            get { return Session.Transaction.IsActive; }
        }

        public IGenericTransaction BeginTransaction(IsolationLevel? isolationLevel = null)
        {
            if (isolationLevel == null)
            {
                return new GenericTransaction(Session.BeginTransaction());
            }
            return new GenericTransaction(Session.BeginTransaction(isolationLevel.Value));
        }
    }
------
    public interface IGenericTransaction : IDisposable
    {
        void Commit();
        void Rollback();
    }
------
    public class GenericTransaction : IGenericTransaction
    {
        private readonly ITransaction _transaction;

        public GenericTransaction(ITransaction transaction)
        {
            if (transaction == null) throw new ArgumentNullException(nameof(transaction));
            _transaction = transaction;
            _transaction.Begin();
        }

        public void Dispose()
        {
            _transaction.Dispose();
        }

        public void Commit()
        {
            _transaction.Commit();
        }

        public void Rollback()
        {
            _transaction.Rollback();
        }
    }


Использование получается вот таким:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
        private static void Main(string[] args)
        {
            using (var uow = new UnitOfWorkFactory().Create())
            {
                using (var tran = uow.BeginTransaction())
                {
                    var repo = new Repository<Server>(uow);
                    repo.SaveOrUpdate(new Server {Name = "SERV " + DateTime.Now.TimeOfDay});
                    tran.Commit();
                }
            }
            Console.WriteLine("Success!");
            Console.Read();
        }
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029182
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTi, такое чувство, что Вы дочитали до первого примера кода в статье, типа что-то поняли и принялись писать свой код.

Вышло у Вас совершенно не то, что нужно. Пожалуйста, прочитайте статью внимательно и полностью.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029187
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S.: обратите внимание, что там есть жирная ссылка на готовую реализацию UnitOfWork и Repository для NHibernate.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029500
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiИспользование получается вот таким:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
        private static void Main(string[] args)
        {
            using (var uow = new UnitOfWorkFactory().Create())
            {
                using (var tran = uow.BeginTransaction())
                {
                    var repo = new Repository<Server>(uow);
                    repo.SaveOrUpdate(new Server {Name = "SERV " + DateTime.Now.TimeOfDay});
                    tran.Commit();
                }
            }
            Console.WriteLine("Success!");
            Console.Read();
        }



чёза????....
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029916
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

А чем плох метод SaveOrUpdate?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029934
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вы чего?

Признайтесь уже себе, что в 99.9999% никакой замены СУБД или ORM в вашем проекте и не планируется и репозитории никому не пригодятся. И что для всей CRUD-подсистемы вы может и напишете с десяток тестов -- по всем правилам, с моками и стабами -- а потом новые писать станет лень, старые покроются плесенью и будут закомментированы. А вы будете ругаться, продираясь через изо всех щелей текущие абстракции фабрик репозиториев юнит-оф-ворков с хитрыми лайфтаймами.

Не надо всего этого; делайте максимально просто.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029961
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTihVostt,

А чем плох метод SaveOrUpdate?

Тем, что сидит в репозитории.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029963
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучНе надо всего этого; делайте максимально просто.

Вредные советы раздаешь?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39029999
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНахлобучНе надо всего этого; делайте максимально просто.
Вредные советы раздаешь?
Истинно вам говорю!
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030045
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучПризнайтесь уже себе, что в 99.9999% никакой замены СУБД или ORM в вашем проекте и не планируется и репозитории никому не пригодятся.

Весьма распространённое заблуждение, что репа нужна для замены СУБД
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030093
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучПризнайтесь уже себе, что в 99.9999% никакой замены СУБД или ORM в вашем проекте и не планируется и репозитории никому не пригодятся.
В чем признаваться, это тестовый проект и я просто пытаюсь научиться писать правильно.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030104
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiНахлобучПризнайтесь уже себе, что в 99.9999% никакой замены СУБД или ORM в вашем проекте и не планируется и репозитории никому не пригодятся.
В чем признаваться, это тестовый проект и я просто пытаюсь научиться писать правильно.
Нахлобуч все правильно говорит... Но вы же "научившись" в боевой код это потащите... бездумно...
Правильно это следовать заветам Оккама... ну и помнить о принципах до сих пор модного аджайла - KISS & YAGNI
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030110
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiНахлобучПризнайтесь уже себе, что в 99.9999% никакой замены СУБД или ORM в вашем проекте и не планируется и репозитории никому не пригодятся.
В чем признаваться, это тестовый проект и я просто пытаюсь научиться писать правильно.
Мое "воззвание" было адресовано в основном советчикам.

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

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

Одно из самых главных умений разработчика -- это умение есть слонов по кусочкам, то есть умение разбивать большую проблему на ряд мелких, ad infinitum. Не давайте "запрограммировать себя в угол". Не гонитесь за многомудрыми евангелистами от энтерпрайза. Не бойтесь экспериментировать и ошибаться. Старайтесь отдавать предпочтение простым решениям.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030120
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser, Нахлобуч,

Ни разу с вами обоими не согласен.

Призываю вас прекращать раздавать глупые советы направо и налево.

А теперь поцитируем:

buserНо вы же "научившись" в боевой код это потащите... бездумно...

А куда ещё свои знания и опыт тащить? К бабульке на чердак? На свалку? Вы хоть перечитывайте что несёте.

buserПравильно это следовать заветам Оккама...

Звучит настолько же глупо, как «Правильно это поступать правильно». Бритва Оккама это хороший принцип, но в отрыве от контекста он бесполезен, и даже вреден, как нож без ручки.

buserну и помнить о принципах до сих пор модного аджайла - KISS & YAGNI

Самый сок в принципе KISS состоит в том, что простые вещи делаются сложно. А сложные просто. Чтобы сделать систему простой в использовании, сопровождении и поддержке -- надо постараться, это сложно. А говна накидать большой лопатой -- очень просто, с этим справится даже обезьяна.

То, к чему вы призываете, звучит как -- будь тупорылой обезьяной, не нужны тебе ни паттерны, ни методики, ничего не нужно. Закатываешь рукава и начинаешь говнокодить. Индусы же могут? МОжешь и ты

НахлобучЕсли хотите научиться, то не нужно забивать себе голову паттернами. Книжку про них почитайте, но не надо бросаться их всюду втыкать. Почитайте, осмыслите, и отложите на полку. Потом, года через три, вернётесь к ней снова.

Бред. Для начала разберись с тем, что вообще такое «паттерн». Я подскажу, паттерн -- это выработанные годами, готовые, решения распространённых задач и проблем. А вы призываете человека отказаться от них в пользу... чего? Типа если ты хочешь научиться готовить, не надо тебе пользоваться рецептами -- это ПЛОХО! Ну книжку там конечно прочитай, но не стоит им следовать и готовить по рецептам, так что ли?

Паттерны -- это одно из самых первых, что должен освоить программист. И пускай в начале не будет получаться использовать их в меру и по уму, это всего лишь вопрос опыта, не более того.

Отказавшись от изучения паттернов, программист обречён открывать америку множество раз, бессмысленно растрачивая своё время.

НахлобучОдно из самых главных умений разработчика -- это умение есть слонов по кусочкам, то есть умение разбивать большую проблему на ряд мелких, ad infinitum. Не давайте "запрограммировать себя в угол". Не гонитесь за многомудрыми евангелистами от энтерпрайза. Не бойтесь экспериментировать и ошибаться. Старайтесь отдавать предпочтение простым решениям.

Много слов и ни о чём. Какие ещё евангелисты, какие простые решения? Паттерны --- это И ЕСТЬ ГОТОВЫЕ ПРОСТЫЕ РЕШЕНИЯ

В общем, не включайте философов, спуститесь на грешную землю. Сами говорите о простоте и тут же растекаетесь в какие-то филосовские словоформы, говоря сразу обо всём, и ни о чём. Т.е. не помогаете человеку вообще ни чем. Никакой конкретики.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030167
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНахлобучНе надо всего этого; делайте максимально просто.

Вредные советы раздаешь? на git что-ли переходить?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030175
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAна git что-ли переходить?

Угу
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030189
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучНу вы чего?

Признайтесь уже себе, что в 99.9999% никакой замены СУБД или ORM в вашем проекте и не планируется и репозитории никому не пригодятся. И что для всей CRUD-подсистемы вы может и напишете с десяток тестов -- по всем правилам, с моками и стабами -- а потом новые писать станет лень, старые покроются плесенью и будут закомментированы. А вы будете ругаться, продираясь через изо всех щелей текущие абстракции фабрик репозиториев юнит-оф-ворков с хитрыми лайфтаймами.

Не надо всего этого; делайте максимально просто.+123

Переезд на другую СУБД в перспективе можно ещё допустить, но тут EF может сильно помочь сделать легко переносимое решение. Переезд на другой ORM - это уже за пределами разумного. Ладно ещё, если бы EF не реализовывал UoW, но он реализует.

А тестирование можно организовать и поверх EF, подсунув ему тестовую БД.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030195
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нахлобуч, buser, hVostt

Спасибо за интересный диалог, внимательно читаю и вникаю) В особенности спасибо hVostt за подробные ответы
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030205
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНахлобучЕсли хотите научиться, то не нужно забивать себе голову паттернами. Книжку про них почитайте, но не надо бросаться их всюду втыкать. Почитайте, осмыслите, и отложите на полку. Потом, года через три, вернётесь к ней снова.Бред. Для начала разберись с тем, что вообще такое «паттерн». Я подскажу, паттерн -- это выработанные годами, готовые, решения распространённых задач и проблем.
Нет. Шаблон проектирования -- он потому и "шаблон"; он по определению не может быть готовым решением. Это всего лишь описание того, как ту или иную задачу можно реализовать; описание взаимодействий классов, если угодно.
hVosttА вы призываете человека отказаться от них в пользу... чего? Типа если ты хочешь научиться готовить, не надо тебе пользоваться рецептами -- это ПЛОХО! Ну книжку там конечно прочитай, но не стоит им следовать и готовить по рецептам, так что ли?Типа, давай дискутировать без аналогий.

Я призываю отказаться от бездумного (а по первости оно так и будет) использования паттернов в пользу своих шишек. Я насмотрелся на код новичков (и помню себя таким же), прочитавших GoF: паттерны ради паттернов; паралич при выборе "правильного" шаблона для решения тривиальнейшей задачи; пропасть между теоретическими знаниями о паттернах и практическом опыте их применения. А задача все еще не решена. Вот от такого развития событий я и предостерегаю.

Потом, спустя несколько лет, GoF можно и перечитать -- и тогда эффект будет гораздо более значительным.
hVosttПаттерны -- это одно из самых первых, что должен освоить программист. И пускай в начале не будет получаться использовать их в меру и по уму, это всего лишь вопрос опыта, не более того.Нет, это не так. Паттерны по важности плетутся где-то в конце. Первоочередное: умение декомпозировать проблему, писать ясный, понятный и простой код, знать структуры данных и алгоритмы.

hVosttНахлобучОдно из самых главных умений разработчика -- это умение есть слонов по кусочкам, то есть умение разбивать большую проблему на ряд мелких, ad infinitum. Не давайте "запрограммировать себя в угол". Не гонитесь за многомудрыми евангелистами от энтерпрайза. Не бойтесь экспериментировать и ошибаться. Старайтесь отдавать предпочтение простым решениям.Много слов и ни о чём. Какие ещё евангелисты, какие простые решения? Паттерны --- это И ЕСТЬ ГОТОВЫЕ ПРОСТЫЕ РЕШЕНИЯ Нет, паттерны -- это не готовые решения. И некоторые из них уж точно не простые. И слова эти таки о чем.
hVosttВ общем, не включайте философов, спуститесь на грешную землю. Сами говорите о простоте и тут же растекаетесь в какие-то филосовские словоформы, говоря сразу обо всём, и ни о чём. Т.е. не помогаете человеку вообще ни чем. Никакой конкретики.Мне кажется, я вполне конкретно сказал в первом же сообщении: "делайте максимально просто".
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030206
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучSMARTiпропущено...

В чем признаваться, это тестовый проект и я просто пытаюсь научиться писать правильно.

Что касается обучения, то -- к сожалению или к счастью -- в нашей отрасли нет ничего абсолютно правильного, как, например, в физике и математике. Есть какие-то решения и подходы, являющиеся компромиссами и правильные в данном конкретном месте.Абсолютно правильная программа (АПП) - это программа, не противоречащая техническому заданию и написанная в оговорённые сроки. Одному техническому заданию может соответствовать множество АПП.

зы: Просто мысли вслух. :-)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030218
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КПереезд на другой ORM - это уже за пределами разумного.

Т.е. тебе не доводилось переводить проект с NHibernate на EF, или вытаскивать критичные части на Dapper?

Ну тут, как говорил мой дядя, обычному радиолюбителю подойдёт и обычный раздолбанный паяльник, нафига ему паяльная станция с сотней наконечников
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030219
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КА тестирование можно организовать и поверх EF, подсунув ему тестовую БД.

Бред. Сразу говорю.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030222
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НахлобучНет. Шаблон проектирования -- он потому и "шаблон"; он по определению не может быть готовым решением. Это всего лишь описание того, как ту или иную задачу можно реализовать ; описание взаимодействий классов, если угодно.

Ты перечитывай, что пишешь Противоречишь себе.


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

Да божешь ты мой. Я призываю бездумно даже глаза не открывать. Это применительно к чему угодно. Просто так, бездумно даже мухи, как говорится, не ипутся. В чём смысл этого высказывания? Включайте мозг, типа? Ну и при чём тут, конкретно, паттерны?

НахлобучПотом, спустя несколько лет, GoF можно и перечитать -- и тогда эффект будет гораздо более значительным.

Т.е. сначала оперируй, потом уже книжки читай, так? Не говори чепухи.

НахлобучНет, это не так. Паттерны по важности плетутся где-то в конце. Первоочередное: умение декомпозировать проблему, писать ясный, понятный и простой код, знать структуры данных и алгоритмы.

Опять ни о чём. Опять словоблудие. Опять высокопарные высказывания в стиле "Делай хорошо". Что такое ясный, понятный и простой код? ЧТо это? Какие структуры данных надо знать? Какие алгоритмы надо знать? Что такое умение декомпозировать (кстати, да...))))) проблему? Как это вообще? Что ты вообще под всем этим понимаешь? Как тебя понять? Что такое вообще говоришь ))))

О чём ты????


НахлобучМне кажется, я вполне конкретно сказал в первом же сообщении: "делайте максимально просто".

Ещё раз говорю. Ни о чём.

Как построить дом? -- Делай максимально просто.. Оооокееей.

Как вырастить дерево? -- Делай максимально просто... А, ну понел, ооооокей.

Я тоже так могу советы раздавать. Бесмысленные, глупые и абсолютно бесполезные. Ни грамма пользы.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030252
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
Нахлобуч прав, с начало был код, много кода, потом какая то опг решила срубить денег через издательский бизнес,
систематизировала этот код в так называемые паттерны и предложила эту матрицу..
примеров много, с начало было много слов, много рифмы, потом часть критиков ( которые постоянно вьются как шакалы вокруг щелкоперов) систематизировала это в ямы , хореи, амфибрахии и т.д. но не один из них не написал чего то серьезного..
на волне этой дискуссии вспомнилось:
"На третьем ходу выяснилось, что гроссмейстер играет восемнадцать испанских партий. В остальных двенадцати черные применили хотя и устаревшую, но довольно верную защиту Филидора"
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030253
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Развели флейм на ровном месте. В статье есть ссылка на код, работающий в продакшн.
ТСу надо только прочитать статью и разобраться в нем.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030254
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и первый пост топика прочитайте. Человек изучает использования NHibernate и паттернов.
Значит ему это надо.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030282
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,

т.е. вы хотите сказать, что паттерны не несут никакой пользы, кроме того что приносят деньги издателям которые печатают о них книги?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030292
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиНахлобуч прав, с начало был код, много кода, потом какая то опг решила срубить денег через издательский бизнес,
систематизировала этот код в так называемые паттерны и предложила эту матрицу..

«Так называемые паттерны» ты, как программист, будешь применять в любом случае. Хочешь ты этого или нет. Даже если ты упоротый в край фанатик против паттернов, ты не сможешь написать ни одну более менее сложную систему, не воспользовавшись ни одним паттерном. Даже не зная этого.

Посему. Какого хрена? Ну систематизировали люди знания, ну срубили на этом бабла? А ты типа хотел, чтобы кто-то это сделал просто так, забесплатно? Я не понимаю к чему ты клонишь. Отменить книжки, сжечь всё к чертям и кодить по наитию? Как?

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

Это жизнь, чувак. Это жизнь. Программирование, это дисциплина прежде всего. И дисциплина подразумевает систематизацию знаний. Развитие. Что-то постоянно переосмысляется, дополняется, видоизменяется. И я вижу, что люди, учившиеся по одним книгам когда-то давно, видят, что сейчас знания трансформировались, и большая часть того, что они учили уже не актуально, начинают грубо истекать желчью. Почему так? Старческий маразм? Вот, дескать, в наши времена всё делали на перфокартах, а доступ к компьютеру имели лишь избранные, и тогда я был крут, как переваренные яйца. А щас любой сопляк скачивает студию и он уже программер. Не хорошо это, не хорошо...

Проблема опытного специалиста в том, что он тупо забыл напрочь, что значит быть новичком.

И вот он видит, как новички начитавшись про паттерны начинают лепить их как попало, куда попало, и потекло...... Ну это же новички, ну что вы хотите? Вы ему советуете, выбрось книжки, и делай проще.

Это как, проще??? Может проще вообще не заниматься программированием, завернуться в простыню и ползти на кладбище? Может проще веником махать на улице по утрам? Может проще курить бамбук нихрена не делая ночным охранником?

Что вы такое городите?

Где-то в степина волне этой дискуссии вспомнилось:
"На третьем ходу выяснилось, что гроссмейстер играет восемнадцать испанских партий. В остальных двенадцати черные применили хотя и устаревшую, но довольно верную защиту Филидора"

Быть новичком и познавать -- это круто! Делать ошибки, учиться -- круто! Круто знать, что ты ещё столького не знаешь, и столько ещё впереди!

Нехрена не круто быть упоротым старпёром, который пересёк границы маразма и резко превратился в седого старика, сидящего на лавочке и порицающего каждого проходящего мимо него сопляка, с горьким «эх, вы...». Решить, что ты уже всё знаешь и вывести формулы жизни «ду ит симпле маза фак, маленький гоунюк», значит просто переместить себя на свалку истории.

Если кто-то сам так для себя решил, -- да не вопрос. Но не надо раздавать плохие, вредные советы новичкам, познающим азы офигенной, крутой дисциплины.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030301
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КПереезд на другой ORM - это уже за пределами разумного.

Т.е. тебе не доводилось переводить проект с NHibernate на EFНет, не доводилось.
hVostt, или вытаскивать критичные части на Dapper? Критичные части надо вытаскивать в хранимые процедуры.
hVosttАлексей КА тестирование можно организовать и поверх EF, подсунув ему тестовую БД.

Бред. Сразу говорю.Спасибо за интересное мнение. Есть о чём задуматься.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030304
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
использовать или нет паттерны - зависит от заказчика, если он за это платит (т.е. платить за то, что бы прогер сделал себе всякие темплейты для других заказчиков)
я когда то автоматизировал дверную фабрику, естественно полез изучать технологии деревообработки и с удивлением обнаружил - оказывается есть 46 паттернов как "две палки соединить" :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030311
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а так важных :) паттернов немного -
если тебе нужен Лист, то создай Дикшинари
если тебе нужна табличка, то создай индекс
зачем Инт, когда можно писать Вар
зачем ЕФ..., когда можно ДБ...
...
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030312
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
когда ВИПРОС просишь создать Тип, то она автоматом создает Тип, оставляет возможность создать проекции, генерирует надтип (агрегат) и включает этот тип в агрегат, создает дефольтный макротип (ассоциация типов) :)
потому что все эта кухня тебе обяхательно будет нужна как только пойдешь дальше :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030313
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
иногда Декомпозиция слишком дорогое удовольствие, а Обобщение дается легко, потому лучше Декомпозицией повременить
сначала частная (понятная) задача, потом Обобщение, потом Декомпозиция, потом Расширение, потом О потом Д....
но вот начальные структуры сразу должны быть заточены на эти циклические пересмотры
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030314
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в воще на программирование свет клином не сошелся, ищите себе норм профессию, пока молоды :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030319
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAРазвели флейм на ровном месте. В статье есть ссылка на код, работающий в продакшн.
ТСу надо только прочитать статью и разобраться в нем.Действительно, развели на пустом месте целую науку .

В былые времена было бы написано что-то вроде:
Код: sql
1.
2.
3.
4.
begin tran
delete from orders where ClientID = @ClientID and IsApproved = 1
update clients set Disabled = 1 where ID = @ClientID
commit tran


Теперь было бы написано как-то так:
Код: c#
1.
2.
3.
db.orders.Where(o => o.ClientID == clientID && o.IsApproved).ForEach(o => db.orders.Remove(o));
db.clients.First(c => c.ID == clientID).Disabled = true;
db.SaveChanges();


"Но мы не ищем лёгких путей, нам нужны абстракции, нам важен процесс а не результат" - что и было сказано топикстартеру. :-)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030326
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, забавный ты человек. 32 строки кода у тебя уже наука :) А что тогда для тебя EF? Чёрная магия? :)

Код: c#
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.
internal class NHibernateUnitOfWork : IUnitOfWork
{
    private readonly ISession session;
    private ITransaction transaction;

    public NHibernateUnitOfWork(ISession session, IsolationLevel isolationLevel = IsolationLevel.ReadCommitted)
    {
        if (session == null)
            throw new ArgumentNullException("session");

        CurrentSessionContext.Bind(session);

        this.session = session;
        transaction = session.BeginTransaction(isolationLevel);
    }

    public void Dispose()
    {
        if (!transaction.WasCommitted && !transaction.WasRolledBack)
        {
            transaction.Rollback();
        }
        transaction.Dispose();
        transaction = null;

        CurrentSessionContext.Unbind(session.SessionFactory);
        session.Dispose();
    }

    public void Commit()
    {
        transaction.Commit();
    }
}
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030330
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КВ былые времена было бы написано что-то вроде:
Код: sql
1.
2.
3.
4.
begin tran
delete from orders where ClientID = @ClientID and IsApproved = 1
update clients set Disabled = 1 where ID = @ClientID
commit tran


Теперь было бы написано как-то так:
Код: c#
1.
2.
3.
db.orders.Where(o => o.ClientID == clientID && o.IsApproved).ForEach(o => db.orders.Remove(o));
db.clients.First(c => c.ID == clientID).Disabled = true;
db.SaveChanges();


"Но мы не ищем лёгких путей, нам нужны абстракции, нам важен процесс а не результат" - что и было сказано топикстартеру. :-)
Где ты опять увидел сложные пути и лишние абстракции? Вот код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
public class Client
{ 
    public void Lock()
    {
        IEnumerable<Order> notApprovedOrders = orders.Where(o => o.IsApproved == false);
 
        foreach (Order order in notApprovedOrders)
            orders.Remove(order);
 
        Account.Disable();
    }
}


Что с ним не так? Тебя пугает то, что класс ничего не знает о db и содержит только логику? :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030331
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, забавный ты человек. 32 строки кода у тебя уже наука :) А что тогда для тебя EF? Чёрная магия? :)Да мне сам подход не нравится. В наш век LINQ-ORM применять старые подходы, на мой взгляд, неразумно.

Да и вообще:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
public void LockClient(int clientId)
{
  using (var transactionScope = new TransactionScope())
  {
      Client client = clientRepository.GetById(clientId);

      // принято фильтровать данные на сервере
      IEnumerable<Order> notApprovedOrders = client.Orders.Where(o => o.IsApproved == false);

      foreach (Order order in notApprovedOrders)
      {
          client.RemoveOrder(order); // это зачем? у нас кэш не уходит дальше этого метода
          orderRepository.Remove(order);
      }

      client.Account.Disable(); // не надо мешать в одном классе логику и данные

      accountRepository.Save(client.Account);

      transactionScope.Complete();
  }
}

Сами создаём проблемы, потом сами их решаем:
авторВсе действия происходят внутри одной транзакции. Мы учли все изменения данных: удалили неподтвержденные заказы, сохранили измененный объект Account. В принципе этот код можно было бы так и оставить, но мы этого не сделаем по нескольким причинам:

Это код доменной логики и он должен находится в корне агрегации - доменном объекте Client. Но в таком виде этот код нельзя переносить в объект Client, т.к. придется передать в него и интерфейсы репозиториев

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

Мы дублируем доменную логику с вызовами соответствующих репозиториев. Например, при удалении заказов вызывается сначала client.RemoveOrder, а потом удаление из БД orderRepository.Remove

Есть шанс забыть вызвать репозиторий для одного из измененных объектов, тогда не все изменения попадут в БД
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030333
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей КВ былые времена было бы написано что-то вроде:
Код: sql
1.
2.
3.
4.
begin tran
delete from orders where ClientID = @ClientID and IsApproved = 1
update clients set Disabled = 1 where ID = @ClientID
commit tran


Теперь было бы написано как-то так:
Код: c#
1.
2.
3.
db.orders.Where(o => o.ClientID == clientID && o.IsApproved).ForEach(o => db.orders.Remove(o));
db.clients.First(c => c.ID == clientID).Disabled = true;
db.SaveChanges();


"Но мы не ищем лёгких путей, нам нужны абстракции, нам важен процесс а не результат" - что и было сказано топикстартеру. :-)
Где ты опять увидел сложные пути и лишние абстракции? Вот код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
public class Client
{ 
    public void Lock()
    {
        IEnumerable<Order> notApprovedOrders = orders.Where(o => o.IsApproved == false);
 
        foreach (Order order in notApprovedOrders)
            orders.Remove(order);
 
        Account.Disable();
    }
}


Что с ним не так? Тебя пугает то, что класс ничего не знает о db и содержит только логику? :)Да, я против смешивания логики и данных в одном классе.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030335
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, ты уже глупости начал писать: "В наш век LINQ-ORM применять старые подходы, на мой взгляд, неразумно".

UnitOfWork старый подход? А то что ORM-ы именно его и реализуют тебя не смущает? Получается, что ты каким-то старьём пользуешься. :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030338
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAпропущено...

Где ты опять увидел сложные пути и лишние абстракции? Вот код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
public class Client
{ 
    public void Lock()
    {
        IEnumerable<Order> notApprovedOrders = orders.Where(o => o.IsApproved == false);
 
        foreach (Order order in notApprovedOrders)
            orders.Remove(order);
 
        Account.Disable();
    }
}


Что с ним не так? Тебя пугает то, что класс ничего не знает о db и содержит только логику? :)Да, я против смешивания логики и данных в одном классе.То есть предлагаешь добавить ещё классов? Типа ClientService какой-нибудь? Или логику в контроллеры запихать? Что из этого более современно? :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030339
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, ты уже глупости начал писать: "В наш век LINQ-ORM применять старые подходы, на мой взгляд, неразумно".

UnitOfWork старый подход? А то что ORM-ы именно его и реализуют тебя не смущает? Получается, что ты каким-то старьём пользуешься. :)Я в первую очередь про смешивание логики и данных в одном классе, как это раньше было принято.

А то, что в EF данные можно сохранять только через жопу UoW - это на мой взгляд недостаток, а не преимущество.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030341
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Да, я против смешивания логики и данных в одном классе.То есть предлагаешь добавить ещё классов? Типа ClientService какой-нибудь? Или логику в контроллеры запихать? Что из этого более современно? :)Да.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030342
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, а напиши-ка мне unit-тест к своей реализации. :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030344
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КА то, что в EF данные можно сохранять только через жопу UoW - это на мой взгляд недостаток, а не преимущество.Я EF не пользуюсь, но походу ты нас обманываешь: Raw SQL Queries .
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030346
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAпропущено...
То есть предлагаешь добавить ещё классов? Типа ClientService какой-нибудь? Или логику в контроллеры запихать? Что из этого более современно? :)Да.Ну добавь сервис, что это тебе такого даст?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030365
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, а напиши-ка мне unit-тест к своей реализации. :) Есть способы, но не всем они нравятся. :-)
skyANAАлексей КА то, что в EF данные можно сохранять только через жопу UoW - это на мой взгляд недостаток, а не преимущество.Я EF не пользуюсь, но походу ты нас обманываешь: Raw SQL Queries .Ну и накой мне тогда EF? Рукописный SQL я через DbCommand сам могу запустить.
skyANAАлексей Кпропущено...
Да.Ну добавь сервис, что это тебе такого даст?Ну представь, что в этом методе потребуются ещё какие-нибудь данные, захочется сделать запрос к БД, обратиться к какому-нибудь репозитарию - и всё, приплыли. Или допускаешь инкапсуляцию репозитариев в бизнес-объекты?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030383
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, а напиши-ка мне unit-тест к своей реализации. :)

Человек не пишит юнит-тесты, так как ето ниже его достоинства


Короче, сытый умного не разумеет
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030384
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К Есть способы, но не всем они нравятся. :-)

При чём тут нравится-ненравится? Глянец чтоли обсуждаем? Затести таким образом реальную живую систему из более сотен таблиц, с бизнес-данными. Ты только одними тестами и будешь заниматься, а система продакшен так не увидит. Но вернее всего то, что ты тестов не пишешь вообще, хотя вроде бы знаешь что это такое в самых общих чертах.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030385
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНу представь, что в этом методе потребуются ещё какие-нибудь данные, захочется сделать запрос к БД, обратиться к какому-нибудь репозитарию - и всё, приплыли. Или допускаешь инкапсуляцию репозитариев в бизнес-объекты?

Репозитории прекрасно решают эту задачу, ты через интерфейс репы скрываешь все свои запросы к БД, хоть самые долбанутые, с генерацией SQL-я вручную, вообще пофигу. Через слой доступа к данным видно только конкретные методы репы. Но ты попробуй как нибудь, вдруг понравится. Или using(new DbConext) наше всё?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030387
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosиспользовать или нет паттерны - зависит от заказчика, если он за это платит (т.е. платить за то, что бы прогер сделал себе всякие темплейты для других заказчиков)

Рукалицо. Етить.... Ахахаххахх.... слёзы....


ViPRosоказывается есть 46 паттернов как "две палки соединить" :)

Это способ соединения двух палок. Ты перепутал с шаблоном разработки. Это разные уровни и разные концепции. В общем, рекомендую изучить немного хотя бы, литературку там почетать... И не покурить, а именно почетать
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030388
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosкогда ВИПРОС просишь создать Тип, то она автоматом создает Тип, оставляет возможность создать проекции, генерирует надтип (агрегат) и включает этот тип в агрегат, создает дефольтный макротип (ассоциация типов) :)
потому что все эта кухня тебе обяхательно будет нужна как только пойдешь дальше :)

Вообще всё неправильно. Понаделали всяких типов. Какие ещё проекции, чувак?? Делай проще!

Проще, говорю! Вынить все типы надтипы огрегаты инфотипы макротипы -- это всё для полных мудаков. Буть проще, бритва Оккамаа! Кисс! Ягни! Секс, рокенрол!!! Ахахаххха))))))
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030390
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К"Но мы не ищем лёгких путей, нам нужны абстракции, нам важен процесс а не результат" - что и было сказано топикстартеру. :-)

Угу. Как построить будку? 3 доски, пара гвоздей... А теперь перенесём тот же принцип на разработку зданий. Нах чертежи, вжопу архитекторов! В шею этих раздолбаев. Обычный вася с молотком и гвоздями за 3 дня подымит стоэтажку. Усложнили гады все, лиши бы бабло срубить.

Делай проще!

Чуваки, ето деградация. Тут похоже новичёк вам нос утерает по полной. Пока вы там киссаетесь и ягни употребляете ))
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030396
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

так и делается, просто не надо покупать хохляндскую арматуру и не жидиться на счет цемента
открой глаза и смотри как строят
а вот если заказчик плаааатит, то можно и все 46 способов применить для постройки бани
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030397
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот ты то ж взял какой то МОДх и че то туда залил, то есть -сделал как проще, лишь до бабла дорваться быстрее, а других баснями про паттерны кормишь
конкурентов что ли гнобишь?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030402
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosа вот если заказчик плаааатит, то можно и все 46 способов применить для постройки бани

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

Способ варьирования уровня распиздяйства, по принципу: раз мало бабла дают, то и напрягаться особенно не буду, мне глубоко омерзителен и противен.

ViPRosвот ты то ж взял какой то МОДх и че то туда залил, то есть -сделал как проще, лишь до бабла дорваться быстрее, а других баснями про паттерны кормишь
конкурентов что ли гнобишь?

Я выбрал наиболее подходящий инструмент для решения поставленной задачи. Задача была разместить контент в сети и дать возможность им управлять. Дело-то вовсе не в простоте. Вот тебе и КИСС.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030403
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

ну я и говорю, тут уж бабки (быстро и без паттернов) важнее - пофиг что там за МОДх :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030408
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

ну я и говорю, тут уж бабки (быстро и без паттернов) важнее - пофиг что там за МОДх :)

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

От использования паттернов, кроме всего прочего, есть бонус: приходит в команду новый человек и ему пол часа хватает разобраться что к чему, так как он знает паттерны и узнаёт их в проекте. Через пол часа, он уже может выполнять задачи.

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

Вот если ты пилишь свой проект в свою одиночку, то пофигу и наплевать с высоченной колокольни как ты его пишешь, чем пишешь и под чем пишешь. По барабану вообще. Никому же не придётся вникать в эти бредни.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030410
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

у меня команда разработчиков и прогеров, они лепят типы и туфту гнать не могут, так как невозможно это практически
т.е. паттерн уже задан навеки (вот персистентная часть, вот динамическая, вот методы, вот события, а вот и связи)
как только разработчик слепил каркас задачи, у него на выходе автоматом появляются набор методов (получают на входе контекст стандартный и ничего не возвращают)
вот прогеры их и пишут
а там низзя влево - вправо, все дороги правами заминированы, всего то можно, дай вниз по навигацию, дай вверх по навигацию, сумма там этих или еще че
вот это паттерн
а ты каждый раз одни и те ж паттерны (тьфу) лепишь, не надоело?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030411
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я возвысил разрабов и низверг прогеров :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030413
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosони лепят типы и туфту гнать не могут, так как невозможно это практически

Кастанул заклинание что ли?


ViPRosт.е. паттерн уже задан навеки (вот персистентная часть, вот динамическая, вот методы, вот события, а вот и связи)

Зачем на веки-то? ))) аххаах... т.е. у вас один паттерн на весь проект? ну вы дайоте, джедаи

ViPRosкак только разработчик слепил каркас задачи, у него на выходе автоматом появляются набор методов

Ещё одно заклинание? Етить, Гарри ПОттер курит в сторонке

ViPRosа ты каждый раз одни и те ж паттерны (тьфу) лепишь, не надоело?

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

Возьмём обычный пример. Есть класс, который создаёт инстансы других классов, это фабрика. Ну назову я эту концепцию, не фабрика, а курица. Придёт программер и спросит «че за курица нах???», а я такой ему. Ну типа она несёт классы... Он скажет «так это же фабрика!?», а я ему ннннннааа по башке линейкой — не перечь старшему билять, сказал куризца, значит курица
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030415
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

класс который создает классы не должен быть доступен прогеру
классы должен создавать только аналитик
прогер не должен создавать никаких классов - да воще прогер нафиг не нужен, только вот без них аналитикам работа добавляется быдлятская, надо много че настраивать - типа значение этого поля равна - сумма(а.цена*(Сумма(б.кол)).... а им это не нравится, вот и приходится прогеров нанимать
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030417
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну а если ты имеешь ввиду "создавать" тип new или create, то это воще дело системное, не касается ни аналитика ни прогера, не их это собачье дело
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030418
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosкласс который создает классы не должен быть доступен прогеру
классы должен создавать только аналитик

Ну во-первых... ты там бухаешь чтоли, признавайся давай? Я говорил про инстансы классов. Ну да ладно. Похоже тут топикастер в паттернах больше шарит, чем ты, Алексей К, Нахлобуч и Бузер вместе взятые... Могу дать ссылку на книжку по паттернам




ViPRosпрогер не должен создавать никаких классов - да воще прогер нафиг не нужен, только вот без них аналитикам работа добавляется быдлятская, надо много че настраивать - типа значение этого поля равна - сумма(а.цена*(Сумма(б.кол)).... а им это не нравится, вот и приходится прогеров нанимать

Ты опять про свой випрос? Хранилок структуированной информации сегодня пруд пруди. Просто навалом. Просто тьма тьмущая. Мне одно время наперебой звонили один за другим и каждый пытался втюхать свой никому не нужный аналог випроса. Бизнес он сложней и интеренсей, чем хранение инфотипов-макротипов и укладывания информации по табличкам. Вообще, часто развитие программного комплекса и бизнес-процесса идёт рука об руку, редко когда бывает, что надо тупо закодить существующий и проработанный от и до бизнес-процесс. А там где нужна просто тупая вколачивалка данных для обезьян, подойдёт даже долбанный эксель, или аксес.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030420
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosну а если ты имеешь ввиду "создавать" тип new или create, то это воще дело системное, не касается ни аналитика ни прогера, не их это собачье дело

Я не совсем понимаю о чём ты говоришь. Ну да, бывает, что в определённый момент от команды отпочковывается команда прикладных программистов, которые классов никаких не создают, а просто делают фронт-енд, т.е. обслуживают бизнес-задачи, а уже даже не решают их. Но при этом остаются программисты, которые продолжают делать фреймворк и решать архитектурные задачи, профилировать и заниматься крутым кодингом.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030422
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosтипа значение этого поля равна - сумма(а.цена*(Сумма(б.кол))

аналитики настолько тупорылые, что не могут формулу в поле вбить? не понимаю, зачем ради формул нанимать программистов? ну т.е. это уже и не программисты, хотя как вы их там не назовёте, можете хоть андроидами кликать, или «эй ты айтишник, дика сюда.. ну-ка замонстрячь мне эту формулу вот сюда в поле, мне впадлу, я великий аналитик, мне это не сподручно, давай, живо!»
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030425
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

давай вернемся к истокам и отбросим рукоблюдие всякое
что такое программа
это - черный ящик, который
[Принимает информацию - пофиг откуда и пофиг в каком виде],
[Хранит информацию - пофиг как и пофиг где],
[Перемалывает информацию (тут ничего не пофиг) - по событию, пофиг характер событий],
[Выдает информацию - пофиг куда и по фиг в каком виде]

ну если теперь ты начнешь анализировать все эти пофиги, то увидишь что их ограниченное количество и от них можно избавиться до следующего скачка технологий (физических)
где тут ты ваще видишь какие то классы, паттерны и т.д.?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030428
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRosтипа значение этого поля равна - сумма(а.цена*(Сумма(б.кол))

аналитики настолько тупорылые, что не могут формулу в поле вбить? не понимаю, зачем ради формул нанимать программистов? ну т.е. это уже и не программисты, хотя как вы их там не назовёте, можете хоть андроидами кликать, или «эй ты айтишник, дика сюда.. ну-ка замонстрячь мне эту формулу вот сюда в поле, мне впадлу, я великий аналитик, мне это не сподручно, давай, живо!»
да трудно как то нормального чека завставить вводить все эти формулы
они норм вводят каркасы (считай твои интерфейсы), вводят на них ограничения (это интересно - сузить свободу) и т.д., а как только все это превращается в рабочую фигню у них интерес пропадает, типа дальше любой дурак может
я когда то счел что и каркасы эти любой дурак может (если знает чьи эти каркасы), потому и свалил каркасостроение на них, а они свалили формулостроение на прогеров - так мы счас живем
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030431
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosну если теперь ты начнешь анализировать все эти пофиги, то увидишь что их ограниченное количество и от них можно избавиться до следующего скачка технологий (физических)
где тут ты ваще видишь какие то классы, паттерны и т.д.?

Я не знаю какой ты чёрный ящик имеешь в виду. Программный пакет Фотошоп? Или Майкрософт Офис? Или чего? Винрар? Программы всякие бывают.

У меня энтерпрайз. В пятницу был хотфикс, в среду очередной двухнедельный релиз, который теперь умеет живой GPS-трекинг с сотнями грузовых автомобилей на карте в живом времени, с оповещениями, типа такой-то такой-то пересёк границу области, предполагаемое время до прибытия на место назначение столько-то столько-то. Или, что такой-то задерживается и отклонился от маршрута... А до этого был релиз с USSD приёмом. А потом ещё будут релизы с генерацией топологии цифровых и электрических сетей. А потом будут релизы с генерацией логистики, оптимальные расчёты маршрутов доставки. И в ПО работает очень многие люди, и каждые видят только маленькую её часть, те фукнции, которые к ним относятся, как по уровню доступа, так и по периметру, так и по области ответственности. А ещё у нас в UserVoice прямо сейчас 80 заявок всего, за прошлую неделю поступило 11, закрыто 14, отклонено 7. У нас разработка ПО -- это живой процесс, нет никакого чёрного ящика, есть процесс автоматизации, на благо пользователей, мы работаем напрямую с пользователями по горизонтали от самых низов до самых верхов. Какой ещё черный ящик? Про какой продукт ты говоришь?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030432
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosя когда то счел что и каркасы эти любой дурак может (если знает чьи эти каркасы), потому и свалил каркасостроение на них, а они свалили формулостроение на прогеров - так мы счас живем

Чёто это похоже на какой-то Директум или Шарепоинт с наворотами. Ну это скукота вообще.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030433
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

угу
любая программа - скукота, как только разберешься в предметной области
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030434
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а то что вы пишите - игра, уж сколько движков готовых, даже лоб в лоб или пьяного водителя моделируют
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030437
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRosну если теперь ты начнешь анализировать все эти пофиги, то увидишь что их ограниченное количество и от них можно избавиться до следующего скачка технологий (физических)
где тут ты ваще видишь какие то классы, паттерны и т.д.?

Я не знаю какой ты чёрный ящик имеешь в виду. Программный пакет Фотошоп? Или Майкрософт Офис? Или чего? Винрар? Программы всякие бывают.

У меня энтерпрайз. В пятницу был хотфикс, в среду очередной двухнедельный релиз, который теперь умеет живой GPS-трекинг с сотнями грузовых автомобилей на карте в живом времени, с оповещениями, типа такой-то такой-то пересёк границу области, предполагаемое время до прибытия на место назначение столько-то столько-то. Или, что такой-то задерживается и отклонился от маршрута... А до этого был релиз с USSD приёмом. А потом ещё будут релизы с генерацией топологии цифровых и электрических сетей. А потом будут релизы с генерацией логистики, оптимальные расчёты маршрутов доставки. И в ПО работает очень многие люди, и каждые видят только маленькую её часть, те фукнции, которые к ним относятся, как по уровню доступа, так и по периметру, так и по области ответственности. А ещё у нас в UserVoice прямо сейчас 80 заявок всего, за прошлую неделю поступило 11, закрыто 14, отклонено 7. У нас разработка ПО -- это живой процесс, нет никакого чёрного ящика, есть процесс автоматизации, на благо пользователей, мы работаем напрямую с пользователями по горизонтали от самых низов до самых верхов. Какой ещё черный ящик? Про какой продукт ты говоришь?
сколько народу работает над это задачей?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030438
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosсколько народу работает над это задачей?

Чуть больше 30 человек, включая тех. поддержку.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030439
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosа то что вы пишите - игра, уж сколько движков готовых, даже лоб в лоб или пьяного водителя моделируют

Мы пишем только то, что реально требуется пользователю. Категорий пользователей очень много. И программа для разных категорий разная. Но это одна большая система. Пиковая нагрузка 500 обращений в секунду в праймтайм.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030440
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRosсколько народу работает над это задачей?

Чуть больше 30 человек, включая тех. поддержку.
давай посчитаем сколько надо реально
структурно задача мелкая
Граф (пункты назначения и дороги)
Пункты
Водилы
Транспорт
Начальное состояние (кто где находится)
Поток заказов
ни всякие атрибутивные типы описательные (типа кто че может возит, кто на чесм мжет ехать, кто чего может хранить и т.д.) штук так 15-20

Один алгоритм - Диспетечеризация (самая сложная часть - добиться того что бы водила к началу отпуска попал в родной город)
два стандартных компонента - прием ДЖПС сигналов и визуализация на карте
ну всякие расчеты зарплат и другая экономика 100 пудов на 1С
дык вот, что там делают 30 человек?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030443
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя вопрос риторический
употреблЯют паттерны :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030447
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosдык вот, что там делают 30 человек?

Решают задачи бизнеса, и успешно решают. Автоматизируют процессы, создают и формализуют эти самые процессы. Работы много.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030449
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosдва стандартных компонента - прием ДЖПС сигналов и визуализация на карте

Напомни-ка мне год и место стандартизации? Гдеж я был-та в это время? ))))

ViPRosОдин алгоритм - Диспетечеризация (самая сложная часть - добиться того что бы водила к началу отпуска попал в родной город)

Алгоритм более сложный, чем диспетчеризация. Более того, отлично учитывает людской фактор, с чем ни один випрос не справится с деревянным макротипами. Скажи, Випрос умеет работать через USSD? А на андроиде/iOS? Ась? Можно это обеспечить без программистов? )))


ViPRosну всякие расчеты зарплат и другая экономика 100 пудов на 1С

Естественно
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030450
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosхотя вопрос риторический
употреблЯют паттерны :)

Все употребляют
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030455
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

Не ВИПРОС, а ВИП.Производство уделает любого по части оптимизации производственного расписания, в том числе и транспортного.
Но отслеживания в режиме онлайн там нет, не заказывали.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030456
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да я уверен, что там не учтено ничего - никаких ремонтов, профилактики машин и т.д., а про людей уж точно забыли, с кем хотят ехать, куда не хотят ехать и т.д.
тупо просто запустили начальное состояние, звонят - езжай туда и отвези че нить туда и ОТСЛЕЖИВАЮТ, что бы бензин не слил и к девкам не заехал :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030466
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насчет стандартов
ОПС серверам 40 лет (джпс один из разновидностей УСО)
карты теперь даже в девекспресс можно прикрутить
а вот Солвер редкая птичка
даже восхваленный Айлог всего 16000 констрейнтов тянет и то еле еле
В ВИП.Производство всех их рвет на части :)
покупайте пока не поздно

вощем такие задачи я делаю один, хотя всяких плющек типа андроид и т.д. уже нет времени изучить :(
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030485
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КНу представь, что в этом методе потребуются ещё какие-нибудь данные, захочется сделать запрос к БД, обратиться к какому-нибудь репозитарию - и всё, приплыли. Или допускаешь инкапсуляцию репозитариев в бизнес-объекты?

Репозитории прекрасно решают эту задачу, ты через интерфейс репы скрываешь все свои запросы к БД, хоть самые долбанутые, с генерацией SQL-я вручную, вообще пофигу. Через слой доступа к данным видно только конкретные методы репы. Но ты попробуй как нибудь, вдруг понравится. Или using(new DbConext) наше всё? Как будешь инжектировать репозитарий в бизнес-объект? Бизнес-объект не создаётся DI-контейнером, а репозитарию нужен DI-контейнер. Читал вообще о чём речь?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030486
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAАлексей К, а напиши-ка мне unit-тест к своей реализации. :)

Человек не пишит юнит-тесты, так как ето ниже его достоинства


Короче, сытый умного не разумеет Что, организация тестирования с использованием тестовой БД выходит за рамки стандартных паттернов, поэтому ты его осилить не в состоянии?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030488
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы: к слову, о вреде паттернов. :-)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030511
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может кто-нибудь объяснить в каком контексте и о чем пишет ViPRos , почти ничего не понимаю.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030613
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SMARTiМожет кто-нибудь объяснить в каком контексте и о чем пишет ViPRos , почти ничего не понимаю.
Это форум "старых друзей"... лет через пять все поймете... По поводу моего замечания - паттерны вы будете использовать всегда... осознанно или нет... я к тому, что не стоит зацикливаться на "правильно"... не существует серебряной пули... Решение строится от задачи, а не наоборот... 99% процентов покрытия кода тестами - не гарантия успеха приложения, как, собственно, и реализация по всем правилам военной науки unitofworks в вашем приложении... и т.п. и т.д. ...
P.S.: у меня так, в последнее время глаз начинает дёргаться, когда я слышу слово scalability :)
P.P.S.: а вообще знание типовых решений - штука полезная... и пригодится вам наверняка... странно, что начали с enterprise, а не с GoF
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030695
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей ККак будешь инжектировать репозитарий в бизнес-объект? Бизнес-объект не создаётся DI-контейнером, а репозитарию нужен DI-контейнер. Читал вообще о чём речь?

Кто создаёт бизнес-объект в твоей схеме? Различаются ли бизнес-объекты и POCO для базы данных?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030697
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КЧто, организация тестирования с использованием тестовой БД выходит за рамки стандартных паттернов, поэтому ты его осилить не в состоянии?

Это плохо соотносится с концепцией юнит-тестирования. Разработчики СУБД уже свою систему протестировали, зачем я буду заниматься этим ещё раз? Для чего? За каким хреном мне это может понадобится?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030698
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buserЭто форум "старых друзей"... лет через пять все поймете... По поводу моего замечания - паттерны вы будете использовать всегда... осознанно или нет... я к тому, что не стоит зацикливаться на "правильно"... не существует серебряной пули... Решение строится от задачи, а не наоборот... 99% процентов покрытия кода тестами - не гарантия успеха приложения, как, собственно, и реализация по всем правилам военной науки unitofworks в вашем приложении... и т.п. и т.д. ...
P.S.: у меня так, в последнее время глаз начинает дёргаться, когда я слышу слово scalability :)
P.P.S.: а вообще знание типовых решений - штука полезная... и пригодится вам наверняка... странно, что начали с enterprise, а не с GoF

+1
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030736
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAАлексей К, а напиши-ка мне unit-тест к своей реализации. :) Есть способы, но не всем они нравятся. :-)Потому как это не unit-тесты уже будут, а интеграционные, если подсовывать БД.

То есть модульные тесты ты не пишешь и вряд-ли умеешь.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030740
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНу представь, что в этом методе потребуются ещё какие-нибудь данные, захочется сделать запрос к БД, обратиться к какому-нибудь репозитарию - и всё, приплыли. Или допускаешь инкапсуляцию репозитариев в бизнес-объекты?Если кому такое захочется, то придётся ему руки выпрямлять :) Потому как не так делается то, о чём ты пишешь.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030769
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей КНу представь, что в этом методе потребуются ещё какие-нибудь данные, захочется сделать запрос к БД, обратиться к какому-нибудь репозитарию - и всё, приплыли. Или допускаешь инкапсуляцию репозитариев в бизнес-объекты?Если кому такое захочется, то придётся ему руки выпрямлять :) Потому как не так делается то, о чём ты пишешь.

Сам себе выпрямлять руки он не будет, а других вокруг нет, так как человек работает один. А одиночное программирование, которое изначально не предполагает команду и сопровождение другими людьми, обсуждать вообще бессмысленно. Путь говнокодит, как ему хочется. Я просто против глупых советов новичкам. Захотелось топикастеру паттерны изучить, тут же набросились: «да зачем тебе это надо, да брось ты это дело... бла-бла-бла...». Это не профессионально и неприемлемо.

Если кто-то там сам не в состоянии ни паттерны осилить, ни юнит-тестирование, зачем палки в колёса другим вставлять?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030804
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, +1

18024695
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030817
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Есть способы, но не всем они нравятся. :-)Потому как это не unit-тесты уже будут, а интеграционные, если подсовывать БД.Задача тестирования прикладной логики выполнена, и мне похер, как это в народе называется.

skyANAАлексей КНу представь, что в этом методе потребуются ещё какие-нибудь данные, захочется сделать запрос к БД, обратиться к какому-нибудь репозитарию - и всё, приплыли. Или допускаешь инкапсуляцию репозитариев в бизнес-объекты?Если кому такое захочется, то придётся ему руки выпрямлять :) Потому как не так делается то, о чём ты пишешь.skyANAТо есть модульные тесты ты не пишешь и вряд-ли умеешь.Чё там уметь?

Инкапсулировать в бизнес-объект все данные, которые могут потребоваться алгоритму, и навесить на этот класс тест - велика наука. Но этих данных может оказаться много, все их на сервер приложений не вытянешь - поэтому захочется выполнить запрос в БД, поэтому нужен доступ к репозитарию, поэтому предлагаемая концепция вызывает сомнения.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030828
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, если не умеешь, не писал, то не стоит пальцы гнуть.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030836
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

ну я как то тут просил ответа - как написать тест для алгоритма генерации расписания работ? (да и любого алгоритма комбинаторного характера - а они почти все такие, кроме а+б)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030840
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAпропущено...
Если кому такое захочется, то придётся ему руки выпрямлять :) Потому как не так делается то, о чём ты пишешь.

Сам себе выпрямлять руки он не будет, а других вокруг нет, так как человек работает один. А одиночное программирование, которое изначально не предполагает команду и сопровождение другими людьми, обсуждать вообще бессмысленно. Путь говнокодит, как ему хочется.Откуда такие выводы?
hVosttЯ просто против глупых советов новичкам. Захотелось топикастеру паттерны изучить, тут же набросились: «да зачем тебе это надо, да брось ты это дело... бла-бла-бла...». Это не профессионально и неприемлемо.

Если кто-то там сам не в состоянии ни паттерны осилить, ни юнит-тестирование, зачем палки в колёса другим вставлять?Просто озвучили альтернативную точку зрения, чтобы ТС было из чего выбирать при формировании собственного мнения по заданному вопросу. Но ты как всегда читаешь по диагонали и слышишь только себя.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030843
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, если не умеешь, не писал, то не стоит пальцы гнуть.Это ты что ли будешь решать, что я умею, а чего нет? Удачи!
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030846
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosskyANA,

ну я как то тут просил ответа - как написать тест для алгоритма генерации расписания работ? (да и любого алгоритма комбинаторного характера - а они почти все такие, кроме а+б)Это тут при чём? Я же о конкретном куске кода, что в этой ветке был обозначен.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030847
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAАлексей К, если не умеешь, не писал, то не стоит пальцы гнуть.Это ты что ли будешь решать, что я умею, а чего нет? Удачи!Да я буду решать для себя, составлять мнение о тебе. Удача тут не нужна :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030855
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КОткуда такие выводы?

Из того, что ты говоришь. А ещё я видел твой код.

Алексей КПросто озвучили альтернативную точку зрения, чтобы ТС было из чего выбирать при формировании собственного мнения по заданному вопросу. Но ты как всегда читаешь по диагонали и слышишь только себя.

Озвучили какой-то глупый бред, при чём то, что ТС не просил. Он не просил посоветовать ему использовать паттерны или нет.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030857
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosну я как то тут просил ответа - как написать тест для алгоритма генерации расписания работ? (да и любого алгоритма комбинаторного характера - а они почти все такие, кроме а+б)Помнится мне, что тебе было предложено оценивать агрегированные показатели сгенерированного журнала работ: равномерность наработки сотрудников и т. п.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030867
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КОткуда такие выводы?

Из того, что ты говоришь. А ещё я видел твой код.Ну и что? У меня у самого есть к нему ряд замечаний. Это мой не первый код и не последний. Это пример, решающий конкретную задачу. Показанная программа не менее правильная, чем все остальные, потому что она работает согласно заявленной документации. Но тебе, теоретику, этого не понять.

Кто-то может вынести из прочитанного что-нибудь полезное, кто-то наоборот решит, что ему так лучше не делать. Я многое освоил, пока делал этот проект. Польза от того, что я опубликовал, есть в любом случае. А "критики" вроде тебя всегда были и всегда будут, я к этому отношусь совершенно спокойно.
hVosttАлексей КПросто озвучили альтернативную точку зрения, чтобы ТС было из чего выбирать при формировании собственного мнения по заданному вопросу. Но ты как всегда читаешь по диагонали и слышишь только себя.

Озвучили какой-то глупый бред, при чём то, что ТС не просил. Он не просил посоветовать ему использовать паттерны или нет.Давай ты не будешь за остальных решать, кому чего полезно, а чего нет. Без тебя разберутся.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030869
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[spoiler] Вспомнилось
YouTube Video
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030886
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, прекращай бессмысленный флейм. Пора уже модератору писать, чтобы топик почистил.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030888
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КViPRosну я как то тут просил ответа - как написать тест для алгоритма генерации расписания работ? (да и любого алгоритма комбинаторного характера - а они почти все такие, кроме а+б)Помнится мне, что тебе было предложено оценивать агрегированные показатели сгенерированного журнала работ: равномерность наработки сотрудников и т. п.
Алексей, это детский лепет - если было возможно агрегировать информацию без потерь существенной ее части, то все NP задачи давно бы стали P
просто неохота на этом уровне дискутировать, это все ж не паттерны :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030892
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, прекращай бессмысленный флейм. Пора уже модератору писать, чтобы топик почистил.Путину напиши.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030906
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAАлексей К, прекращай бессмысленный флейм. Пора уже модератору писать, чтобы топик почистил.Путину напиши.Чего тебя так бомбит-то? :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39030947
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей ККто-то может вынести из прочитанного что-нибудь полезное, кто-то наоборот решит, что ему так лучше не делать. Я многое освоил, пока делал этот проект. Польза от того, что я опубликовал, есть в любом случае. А "критики" вроде тебя всегда были и всегда будут, я к этому отношусь совершенно спокойно.

Ну ок. А я ничего не имею против. Ты спросил, откуда такие выводы, я ответил. Нес па?

Алексей КДавай ты не будешь за остальных решать, кому чего полезно, а чего нет. Без тебя разберутся.

Если ты, или кто-то другой здесь будет говорить очевидные глупости, я молчать не буду. Не надо вредить, понятно? Хочешь говнокодить, ради бога, говнокодь на здоровье. Не хочешь учить паттерны? Дело сугубо твоё.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031105
SMARTi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttОн не просил посоветовать ему использовать паттерны или нет.
Очень верное замечание) В виду моего текущего положения и проекта в котором я принимаю участие, для меня очень важно правильное понимание как тут выразились enterprise-паттернов, в частности UoW и Repository.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031155
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЕсли ты, или кто-то другой здесь будет говорить очевидные глупости, я молчать не буду. Не надо вредить, понятно? Хочешь говнокодить, ради бога, говнокодь на здоровье. Не хочешь учить паттерны? Дело сугубо твоё.
Почему глупости? Конкретно по репозитарию в сети вал критики.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031233
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонhVosttЕсли ты, или кто-то другой здесь будет говорить очевидные глупости, я молчать не буду. Не надо вредить, понятно? Хочешь говнокодить, ради бога, говнокодь на здоровье. Не хочешь учить паттерны? Дело сугубо твоё.
Почему глупости? Конкретно по репозитарию в сети вал критики.В сети вообще полно "критики" на любые темы, и что?
Значит надо разбираться в сути, а не наоборот.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031235
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонПочему глупости? Конкретно по репозитарию в сети вал критики.


Как-то раз отец со своим сыном и ослом в полуденную жару путешествовали по улицам города. Отец сидел верхом на осле, а сын вёл его за уздечку.
— Бедный мальчик, — сказал прохожий, — его маленькие ножки едва поспевают за ослом. Как ты можешь лениво восседать на осле, когда видишь, что мальчишка совсем выбился из сил?
Отец принял его слова близко к сердцу. Когда они завернули за угол, он слез с осла и велел сыну сесть на него.

Очень скоро повстречался им другой человек и сказал:
— Как не стыдно! Малый сидит верхом на ослике, как султан, а его бедный старый отец бежит следом.
Мальчик очень огорчился от этих слов и попросил отца сесть на ослика позади него.

— Люди добрые, видали вы где-либо подобное? — заголосила женщина под чадрой. — Так мучить животное! У бедного ослика уже провис хребет чуть ли не до земли, а старый и молодой бездельники восседают на нём, будто он диван, о несчастное животное!
Не говоря ни слова, отец и сын, посрамлённые, слезли с осла.

Едва они сделали несколько шагов, как встретившийся им человек стал насмехаться над ними:
— Чего это ваш осёл ничего не делает, не приносит никакой пользы и даже не везёт кого-нибудь из вас на себе?

Отец сунул ослику полную пригоршню соломы и положил руку на плечо сына.
— Что бы мы ни делали, — сказал он, — обязательно найдётся кто-то, кто с нами будет не согласен. Я думаю, мы сами должны решать, как нам путешествовать.

Иной раз полезней, не слушая чужих советов, следовать своим путем по своему плану. Ведь свою жизнь проживаем мы, а не посторонние советчики.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031240
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

Бывает забавно наблюдать, как люди развертывают аццкие архитектуры. В итоге прострают все сроки, а проект так и не взлетает )
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031294
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонhVostt,

Бывает забавно наблюдать, как люди развертывают аццкие архитектуры. В итоге прострают все сроки, а проект так и не взлетает )бывает забавно наблюдать, как проекты тонут в техническом долге, а стартовали резво, не парясь об архитектуре :)

Может таки прекратим сферический флейм в вакууме?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031321
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонhVostt,

Бывает забавно наблюдать, как люди развертывают аццкие архитектуры. В итоге прострают все сроки, а проект так и не взлетает )

Открою тайну. Аццкие ахитектуры с переизбытком паттернов проще рефакторить в разы, в несколько разов, чем не структуированную лапшу, сделанную по принципу «делай это проще, выброси книжки и мозг на помойку, чуваааак!», к которой никто кроме создателя не подступится, да и сам автор через месяцок другой уже без пол бутылки в своё же говно просто так не полезет.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031361
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttПарамонhVostt,

Бывает забавно наблюдать, как люди развертывают аццкие архитектуры. В итоге прострают все сроки, а проект так и не взлетает )

Открою тайну. Аццкие ахитектуры с переизбытком паттернов проще рефакторить в разы, в несколько разов, чем не структуированную лапшу, сделанную по принципу «делай это проще, выброси книжки и мозг на помойку, чуваааак!», к которой никто кроме создателя не подступится, да и сам автор через месяцок другой уже без пол бутылки в своё же говно просто так не полезет. Программист, помни, что применение паттернов Unit Of Work, Abstract Factory и Observer гарантирует успех любого проекта!
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031402
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttОткрою тайну. Аццкие ахитектуры с переизбытком паттернов проще рефакторить в разы, в несколько разов, чем не структуированную лапшу, сделанную по принципу «делай это проще, выброси книжки и мозг на помойку, чуваааак!», к которой никто кроме создателя не подступится, да и сам автор через месяцок другой уже без пол бутылки в своё же говно просто так не полезет.

Да ладно, насмотрелись. Поддержание и рефакторинг кучи дырявых абстракций, подпертых разными, сторонними костылями. Добавление одного поля проходит сквозь десяток слоёв, сервисов и мапперов. Однако это не лапша, оно ведь по книге ))
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031523
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

Бабах! )))))



Парамон,

Ваша ирония не уместна
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031590
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонhVosttОткрою тайну. Аццкие ахитектуры с переизбытком паттернов проще рефакторить в разы, в несколько разов, чем не структуированную лапшу, сделанную по принципу «делай это проще, выброси книжки и мозг на помойку, чуваааак!», к которой никто кроме создателя не подступится, да и сам автор через месяцок другой уже без пол бутылки в своё же говно просто так не полезет.

Да ладно, насмотрелись.Где, если не секрет? Legacy код обычно паттернами и не пахнет, потому как когда он писался их ещё толком не использовали у нас в стране. Скорее придумывали свои конструкции.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031622
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANALegacy код обычно паттернами и не пахнет

Ну это уже какой-то совсем легаси-легаси

Есть такие корифеи, с более чем десятилетним стажем, делающие глобальный на всю систему Service Locator, но по безграмотности, конечно называемый как-то иначе (зависит от фантазии), и всё строится поверх него. Если веб-формы, то код 100% естественно весь прям обработчиках, ну максимум какая-та часть кода вынесена в некие Helpers и Utilities... Если MVC, то всё в контроллерах. Вот какое легаси я чаще всего видел.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031670
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt... делающие глобальный на всю систему Service Locator, но по безграмотности, конечно называемый как-то иначе (зависит от фантазии), и всё строится поверх него. Если веб-формы, то код 100% естественно весь прям обработчиках, ну максимум какая-та часть кода вынесена в некие Helpers и Utilities... Если MVC, то всё в контроллерах. Вот какое легаси я чаще всего видел.Это не проблемы, а иногда и преимущества.
hVosttЕсть такие корифеи, с более чем десятилетним стажем...Учись у них, пользуйся случаем.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031677
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КЭто не проблемы, а иногда и преимущества.

Очень интересно послушать мнение о коде, не поддающемся ни сопровождению, ни тестированию, от человека ни когда не занимавшимся юнит-тестированием, и которому наплевать на сопровождаемость кода

Спасибо, приму к сведению.

:)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031707
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КЭто не проблемы, а иногда и преимущества.

Очень интересно послушать мнение о коде, не поддающемся ни сопровождению, ни тестированию,Ты просто не умеешь.
hVosttот человека ни когда не занимавшимся юнит-тестированием, и которому наплевать на сопровождаемость кода "А судьи кто?" (ц)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031710
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К"А судьи кто?" (ц)

Кричали женщины: ура! И в воздух чепчики бросали
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031714
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей К"А судьи кто?" (ц)

Кричали женщины: ура! И в воздух чепчики бросали Ты что ли тут общественное мнение?!
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031737
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAГде, если не секрет?

По работе вестимо.

skyANALegacy код обычно паттернами и не пахнет, потому как когда он писался их ещё толком не использовали у нас в стране. Скорее придумывали свои конструкции.
Еще как пахнет, просто сегодня более креативные названия выдают. )

Но, речь буквально о годичных проектах.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031742
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КТы что ли тут общественное мнение?!

Чё ты зациклился на этом мнении? Как маленький честное слово.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031768
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КТы что ли тут общественное мнение?!

Чё ты зациклился на этом мнении? Как маленький честное слово.А кто на форуме - общественное мнение? :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031769
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонНо, речь буквально о годичных проектах.Опытные люди писали, или так себе?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031771
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Парамон, и какой по счёту проваленый годичный проект Вы наблюдаете? Иными словами: какой уже год в какашках ковыряетесь? :)
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031773
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА кто на форуме - общественное мнение? :)

Ну ладно, так и быть, пусть буду — я
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031862
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAОпытные люди писали, или так себе?
skyANAПарамон, и какой по счёту проваленый годичный проект Вы наблюдаете? Иными словами: какой уже год в какашках ковыряетесь? :)

У нас каг бэ много команд и проектов, я про все и не знаю, но приходится ингода ковырнуть то или иное поделие. Бывает, что проекты (не обязателно по тeхническойи причине) сворачивают.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031873
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонskyANAОпытные люди писали, или так себе?
skyANAПарамон, и какой по счёту проваленый годичный проект Вы наблюдаете? Иными словами: какой уже год в какашках ковыряетесь? :)

У нас каг бэ много команд и проектов, я про все и не знаю, но приходится ингода ковырнуть то или иное поделиеАмн... Ну так любой может сказать, и у нас так говорят про чужой код :)

А проводить Code Review не пробовали?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39031926
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Да делают вроде. По крайней мере должны )
Политика не запрещает новшевств и экспериментов.
А бывает и на оборот, подкидываю темы в которых у чела опыту ноль, мол учи.
У вас там что, все под линейку пишут и деградируют? )
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032042
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонskyANA,

Да делают вроде. По крайней мере должны )
Политика не запрещает новшевств и экспериментов.
А бывает и на оборот, подкидываю темы в которых у чела опыту ноль, мол учи.
У вас там что, все под линейку пишут и деградируют? )Это сейчас попытка оправдать свой бардак переводом стрелок? :)

У нас не пишут "под линейку"... Это как вообще? И не деградируют.
Типа считаешь, что без "подкидываю темы в которых у чела опыту ноль, мол учи" развитие останавливается? :)
Пример такого подкидывания привести можешь?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032109
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЭто сейчас попытка оправдать свой бардак переводом стрелок? :)

мне уже есть перед кем оправдываться? забавно )
ты ведь живешь в идеальном мире, где нет бардака и все ровно, да? )

skyANAУ нас не пишут "под линейку"... Это как вообще? И не деградируют.

значит у вас разраб обязан придерживаться одной линии (паттерна потому, что лид прочитал книгу и сделал вид, что понял суть).

skyANAТипа считаешь, что без "подкидываю темы в которых у чела опыту ноль, мол учи" развитие останавливается? :)

Конечно, и начинается деградация. это заметно.

skyANAПример такого подкидывания привести можешь?
Например, разрабу под андроид дали писать гибридную аппликацию.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032252
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Парамонпаттерна потому, что лид прочитал книгу и сделал вид, что понял суть

какое-то очень странное отношение к паттернам. давайте все стандарты похерим, а прочитают книги некоторые отдельные, а потом умных из себя строют нужно абсолютное творчество, а образ программера должен быть человек отстранённый от реальности, непредсказуемый и неадекватный
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032261
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttкакое-то очень странное отношение к паттернам. давайте все стандарты похеримГОСТ, ANSI - это стандарты.
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032267
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КhVosttкакое-то очень странное отношение к паттернам. давайте все стандарты похеримГОСТ, ANSI - это стандарты.

во-во, надеюсь ты никогда не следуешь стандартам? )) не строишь из себя умного, просто так колотишь код, как в голову взбредёт? ты же нормальный программер, а не из этих... который паттерны-шматерны какие-то юзают, вот далдоны
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032303
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонskyANAЭто сейчас попытка оправдать свой бардак переводом стрелок? :)

мне уже есть перед кем оправдываться? забавно )
ты ведь живешь в идеальном мире, где нет бардака и все ровно, да? )Давай ты не будешь думать о том, в каком мире живу я, а я в ответ не буду говорить, что этим самым ты пытаешься на меня перевести стрелки :)
Ты вообще конструктивный диалог вести способен, или только стебаться?

ПарамонskyANAУ нас не пишут "под линейку"... Это как вообще? И не деградируют.

значит у вас разраб обязан придерживаться одной линии (паттерна потому, что лид прочитал книгу и сделал вид, что понял суть).Нет, у нас нет у разработчиков таких обязанностей. И кстати у нас нет формальных лидов.

ПарамонskyANAТипа считаешь, что без "подкидываю темы в которых у чела опыту ноль, мол учи" развитие останавливается? :)

Конечно, и начинается деградация. это заметно.

skyANAПример такого подкидывания привести можешь?
Например, разрабу под андроид дали писать гибридную аппликацию.А ему интересно писать гибридные апликации? Может ему больше в серверную разработку тянет и он уже на пару конференций съездил и в свободное время пару техник попробовал? :)

Вы какбы наобум задачи ставите? Архитектурное review перед непосредсвенным кодированием проводите? Или как с Code review: "да делают вроде", если захотят.

Экспертные группы у вас есть? Шаринг знаний в какой форме проводите?
...
Рейтинг: 0 / 0
Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
    #39032527
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДавай ты не будешь думать
Давай ты не будешь говорить мне, что делать... )

skyANAТы вообще конструктивный диалог вести способен, или только стебаться?
О чем диалог то? Пытаюсь понять, что вы стремитесь доказать и куда прийти.

skyANAИ кстати у нас нет формальных лидов.

А кто делает ревью и какие у него полномочия?

skyANAА ему интересно писать гибридные апликации?

В твоем мире каждый разрабатывает то, что ему интересно?

skyANAВы какбы наобум задачи ставите? Архитектурное review перед непосредсвенным кодированием проводите? Или как с Code review: "да делают вроде", если захотят.

Даже на заседания ходют )

skyANAЭкспертные группы у вас есть? Шаринг знаний в какой форме проводите?
Устраивают презентации, фирма организовывает курсы и лекции.

Модератор: Чуток спокойнее оба
...
Рейтинг: 0 / 0
151 сообщений из 151, показаны все 7 страниц
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Правильно ли исполнены паттерны UnitOfWork и Repository для Nhibernate?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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