Re[9]: TODOs
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 13.01.17 05:18
Оценка:
Здравствуйте, Sinix, Вы писали:

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


У нас в качестве одного из основных design goals заявлена минимальная связность. Поэтому такое маловероятно, по крайней мере в текущем составе контрибьюторов.

S> 2. Никаких вопросов на тему "ок, мы берём хелперы, но нам не нужна работа с csv, потому что у нас есть своя единственно верная реализация".


Да нет, вопросы все равно будут — всего два пакета их не снимут. Чтобы их не было, нужно чуть ли не каждую фичу в отдельный микропакет пихать.

S> Таки реальный отзыв. Обоснование было примерно такое: ну вот берёшь ты библиотеку-провайдер для СУБД, а с ней в нагрузку — свой ORM.


Это — другое. Вероятность что понадобится драйвер и не понадобится ОРМ — очень высока. А вот в случае предложенного деления — я в подобном сильно не уверен.

S> 3. Меньше борьбы за "весь код должен быть отличным".


Это — плохо.

S>Про версии — нет никакого геммороя, главное чтоб релизы обоих сборок выпускались одновременно. Я ж 4 сборки для перфтестов как-то обновляю и ок.


Тебе деваться некуда из-за зависимостей.

S>Ухтыж, забавно. В смысле, с моей точки зрения константы гораздо ближе к enum members чем к полям.


enum members это тоже поля. И они таки пишутся точно так же, как и поля. Просто они приватными быть не могут.

S>>> Приватные Enum-ы ж с заглавной — норм.

AVK>>Енум это тип, а не поле.
S>Я про enum members.

Они не бывают приватными.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[10]: TODOs
От: Sinix  
Дата: 13.01.17 06:12
Оценка:
Здравствуйте, AndrewVK, Вы писали:


AVK>У нас в качестве одного из основных design goals заявлена минимальная связность. Поэтому такое маловероятно, по крайней мере в текущем составе контрибьюторов.

AVK>Да нет, вопросы все равно будут — всего два пакета их не снимут. Чтобы их не было, нужно чуть ли не каждую фичу в отдельный микропакет пихать.

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


AVK>Это — другое. Вероятность что понадобится драйвер и не понадобится ОРМ — очень высока. А вот в случае предложенного деления — я в подобном сильно не уверен.

Ну вот я в жизни не представлю, чтоб типовой дотнет-библиотеке понадобилась запись в csv, mapping или что-то в таком духе. Это всё ответственность хоста, т.е. приложения (фреймворка).

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

К примеру, у нас serviceProvider.GetService<T>() может возвращать null.
В проектах, в которых за дизайн отвечать мне, метод в public API с таким поведением будет называться TryGetService<T>() и никак иначе. Мелочь, но когда такая мелочь систематически выстреливает NullRefException быстро понимаешь, что мелочи решают.

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

И что самое прикольное, что поправить тут ничего нельзя. Если мы поменяем поведение и serviceProvider.GetService<T>() будет бросать исключение, то тут же взбунтуется вторая половина пользователей, которым NullRefException не страшны (к примеру, весь код решарпером на null проверяется) и важнее совместимость с фреймворком.

Короче, такие холиварные вещи, для которых есть куча равноправных решений, лучше делать opt-in. Чтобы не следить за тем, что в проекте случайно заюзалась "неправильная" реализация.



S>> 3. Меньше борьбы за "весь код должен быть отличным".

AVK>Это — плохо.

Это хорошо. Потому что "энтерпрайзный" код у нас в основном весь уже написан в одно лицо и у каждого одноголица свои привычки и свои критерии отличного кода. К примеру код от ув. IT почти весь использует выравнивание пробелами.
Имеет смысл бороться за одинаковое форматирование? Для мелочей типа тех что я добавляю — безусловно да, т.к. там нет никакой особой магии и поправить или написать подобное может любой с полпинка.
Для того же маппинга мы не получим никакого эффекта, только минус — маппинг по-прежнему будет оставаться ответственностью IT, а вся помошь от нас сведётся к "мы тебе оформление поменяли"


S>>Про версии — нет никакого геммороя, главное чтоб релизы обоих сборок выпускались одновременно. Я ж 4 сборки для перфтестов как-то обновляю и ок.

AVK>Тебе деваться некуда из-за зависимостей.
Так и тут то же самое будет, не вижу смысла разносить версии обоих библиотек.


S>>Я про enum members.

AVK>Они не бывают приватными.
Ну ок, точку зрения я донёс, дальше спорить не буду.
Re[11]: TODOs
От: _NN_ www.nemerleweb.com
Дата: 14.01.17 20:14
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Окей, тогда остановимся на том что есть. Саммари: я за разделение, знакомый народ говорит что мы переборщили с фичами, rameel в теме тож за разделение, ну, т.е. реальные запросы есть и я их донёс надеюсь



Может опросом решить ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re[12]: TODOs
От: Sinix  
Дата: 14.01.17 21:13
Оценка:
Здравствуйте, _NN_, Вы писали:

S>>т.е. реальные запросы есть и я их донёс надеюсь


_NN>Может опросом решить ?

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

У нас это AndrewVK как автор проекта и человек, добровольно взваливший на себя всю организационную тягомотину
Re[13]: TODOs
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 15.01.17 16:35
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Неа. Опрос хорош как сбор реквестов от пользователей, но не как способ принятия решений в команде. Я терпеть не могу демократию внутри проекта — она в итоге ни к чему хорошему не приводит. Всегда должен быть лид, который и принимает конечное решение.


У меня пока определенного мнения нет, так что опрос не помешает.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[14]: TODOs
От: Sinix  
Дата: 15.01.17 16:45
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>У меня пока определенного мнения нет, так что опрос не помешает.

Ок. Заведёшь сам? Если нет — подскажи, как вставить голосование в пост?
Re[15]: TODOs
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 15.01.17 16:54
Оценка:
Здравствуйте, Sinix, Вы писали:

AVK>>У меня пока определенного мнения нет, так что опрос не помешает.

S>Ок. Заведёшь сам? Если нет — подскажи, как вставить голосование в пост?

Да просто ссылку на него добавляешь и все.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re: TODOs
От: _NN_ www.nemerleweb.com
Дата: 03.02.17 12:44
Оценка: 179 (3)
Здравствуйте, Sinix, Вы писали:

Добавил ещё и в https://github.com/tallesl/net-libraries-that-make-your-life-easier

Вроде ещё проектов в github со списками нет.
http://rsdn.nemerleweb.com
http://nemerleweb.com
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.