
Vinc
13.07.2017
11:42:49

Владимир
13.07.2017
11:43:00
не
сначала пишешь класс
потом такой

Google

Владимир
13.07.2017
11:43:13
ctrl shift r
extract interface
enter

Vinc
13.07.2017
11:43:45
да и я сначала пишу интерфейс, а потом от него клас ваяю
не плохая ж привычка, кмк

Владимир
13.07.2017
11:44:40
переписывать придется

Vinc
13.07.2017
11:46:12
кого

Владимир
13.07.2017
11:46:30
интерфейс

Vinc
13.07.2017
11:46:45
не в курсе о чем ты

Владимир
13.07.2017
11:47:41
это решарпавская штука
курсор поставь на что-нибудь, что можно рефакторить

Google

Владимир
13.07.2017
11:47:56
имя класса
кусок кода

Женя
13.07.2017
11:51:32
а как рефакторить проект? просто понимаю что код написанный ужасен. А если все переписывать боюсь сломать всю работу

Vinc
13.07.2017
11:51:46

Владимир
13.07.2017
11:52:10
но можно и так
если понимаешь что ужасно, постепенно от этого избавляешься
вводишь нормальное именование
разделяешь методы

Александр
13.07.2017
11:53:19
ты пропустил пункт 1. пишешь тесты
потом уже разделяешь и прочее =)

Женя
13.07.2017
11:54:35
юнит тесты?

Nikolay
13.07.2017
12:00:01
Да юнит тесты и рефакторинг не всегда нужны
Ну рефакторинг только если код совсем ужасен
А так если проект не долгосрочный, имхо смысла нет

Женя
13.07.2017
12:06:35

Олег
13.07.2017
12:06:39
И в продакшн

Женя
13.07.2017
12:07:40
а кто нибудь использовал обфускатор? По ТЗ требуется обфускация сборок. Посоветуйте какой нибудь

Timur
13.07.2017
12:08:15
советую не обфусцировать

Женя
13.07.2017
12:08:27
это не мой выбор

Google

Timur
13.07.2017
12:08:42
уговаривай. угрожай. властвуй-унижай.

Женя
13.07.2017
12:08:58

Nikolay
13.07.2017
12:08:58

Летучая
13.07.2017
12:10:07
почему кстати?
Потому что всё равно при должном усердии вся ваша обфускация сломаетсяя

Timur
13.07.2017
12:10:12
Когда приложение свалится и всё, что будет у тебя от пользователя это "ой, оно само" и описание эксепшена, что будешь делать?
Плюс, обфускаторы могут и криво работать.

Женя
13.07.2017
12:10:36

Летучая
13.07.2017
12:10:43
И в результате выйдет, что вы потратите больше времени на обфускацию, чем хацкеры, которые в два клика весь ваш соус вытащат

Timur
13.07.2017
12:10:44
люди умнеют

Летучая
13.07.2017
12:11:27
К безопасности нужен другой подход
Клиент-серверный

Летучая
13.07.2017
12:12:15
а вообще на хабре была хорошая статья про .net обфускаторы
за и против расписаны и ссылочки на норм тулзы

Donald
13.07.2017
12:15:36
https://habrahabr.ru/post/97062/ ?

Женя
13.07.2017
12:16:04
мне посоветовали Конфузер, он опен-сорсный и работает с 4.5
можно им требование закрыть

Nikita
13.07.2017
12:27:37
сейчас обфускаторы нужны больше для "чтобы код не схитили"
т. к. они его приводят в неподдерживаемый вид

Google

Женя
13.07.2017
12:28:21

Дмитрий
13.07.2017
12:40:59
Автомапперу можно указать правила не только одному полю, а всей возвращаемой сущности?

Daniil
13.07.2017
12:49:07

Nikolay
13.07.2017
12:51:43

Дмитрий
13.07.2017
12:52:34
например я маплю User в UserDTO
и хочу, чтобы если в базе уже есть UserDTO со значениями как юзер, то вернуть этот объект

Nikolay
13.07.2017
12:53:17

Admin
ERROR: S client not available

Дмитрий
13.07.2017
12:53:37
типа
cfg.CreateMap<User, UserDTO>()
.ForMember(a => a.UseValue(FindInDataBase(a))

Nikolay
13.07.2017
12:54:05
Заставить автомаппер лезть в базу?

Дмитрий
13.07.2017
12:54:32
да
Ну тут не в этом суть

Nikolay
13.07.2017
12:54:49
Имхо, это костыльно
Очень сильно
Прям очень очень

Дмитрий
13.07.2017
12:55:01
а чтобы в UserValue можно было бы использовать значения

Nikolay
13.07.2017
12:55:53
Можно сделать то, что ты хочешь через AfterMap, или ResolveUsing

Дмитрий
13.07.2017
12:55:54
Не вижу ничего костыльного, я же не буду тот объект маппера везде пихать, а только в местах, где это потенциально нужно - взять модель из бд

Nikolay
13.07.2017
12:55:57
Но это дико
Плюс не сможешь тест написать

Google

Nikolay
13.07.2017
12:56:53
(хотя зависит от реализации)

Дмитрий
13.07.2017
12:57:38
да тут просто задача есть, что есть коментарии, в них ссылки на пользователей (не вытащенных еще, просто на ходу сделанных)
И если такой пользователь (по композитному ключу узнаю) уже есть в базе, то коментарий ему приписывать
второй день уже долблюсь чтобы в лоб не писать
на самом деле даже в лоб не могу

Nikolay
13.07.2017
13:01:55
Ты хочешь выдернуть комментарии и пользователей, которые их оставили?

Летучая
13.07.2017
13:02:41
@alzhir2009 @v_a_zolotov а какие есть хорошие способы "заставить" вьюхи реализовывать интерфейсы для вьюмоделей (например вот в случае с сервисом, который должен показывать диалоговые окна и быть реализован в project.Views)?

Дмитрий
13.07.2017
13:03:58
если такой создатель уже в бд есть, то комментарий к нему приписать, иначе создать нового и ему приписывать

Alexander
13.07.2017
13:04:27
Не совсем понял про заставить

Slava
13.07.2017
13:05:04

Nikolay
13.07.2017
13:06:21

Летучая
13.07.2017
13:06:33
Например такой кейс: есть логика в виде вьюмоделей с сервисами, а задача -- написать вьюхи для данного проекта. И вот чтобы при реализации project.Views сразу знать список того, что надо имплементить.

Дмитрий
13.07.2017
13:06:39
а дальше?

Nikolay
13.07.2017
13:07:09

Летучая
13.07.2017
13:07:42
Ну типа чтоб оно не запустилось, пока кодер не сделает то-то и то-то.

Дмитрий
13.07.2017
13:07:49
не понимаю

Slava
13.07.2017
13:08:15
Эта группа больше не существует