@CSharpChatЭта группа больше не существует

Страница 1474 из 1888
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
ctrl shift r
class remote is never used

да и я сначала пишу интерфейс, а потом от него клас ваяю

не плохая ж привычка, кмк

Владимир
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
не в курсе о чем ты

ctrl shift r
мб решарпер поднасрал, но ничего не происходит

Владимир
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: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:40:59
Автомапперу можно указать правила не только одному полю, а всей возвращаемой сущности?

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

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
Ну типа чтоб оно не запустилось, пока кодер не сделает то-то и то-то.
оно и тек запуститься недолжно на нормальном Ioc контейнере)

Страница 1474 из 1888

Эта группа больше не существует Эта группа больше не существует