@xamarin_russia

Страница 35 из 619
Akhmed
14.02.2017
11:44:16
Какого языка? C# ? А теперь вопрос который задают все кто до этого работал с java и python - зачем?

Кита
14.02.2017
11:46:22
ну MVVM на все ответ

Akhmed
14.02.2017
11:46:31
Не только

Vladislav
14.02.2017
11:47:42
т.е. по твоему эта лишняя конструкция?

Google
Кита
14.02.2017
11:47:47
короче я так считаю - если кому-то сложен этот синтаксис то это не его язык, либо пусть учит. Порог вхождения должен быть высоким

Vadim
14.02.2017
11:48:18
Хоть это и был стёб, но мне идея почему то понравилась, сразу после этой презентации начал про F# читать, а до этого как то не притрагивался даже

Кита
14.02.2017
11:48:45
а то понабежало умников которые думают что они смогут выучить язык за 21 день для чайников и стать великими программистами, а потом принимай таких на работу

если они не могут постичь зачем нужен get set и для чего туда ставят бряки в отладчике, то что поделать

Roman
14.02.2017
11:51:58
при этом добавляется ряд других странностей к примеру тот же LINQ выглядит в F# немного сбоку
Не совсем, там pipe оператор заменяет linq и в итоге цепочку вызовов можно описывать не только для множеств.

просто глупо менять синтаксис
но в C# 7 меняют же и он совместим со старым

Roman
14.02.2017
11:55:15
Akhmed
14.02.2017
11:55:22
Там ВСЕГДА надо было писать исключительно полный синтаксис get;set;

т.е. private string name; public string Name { get { return name; } set { name=value; } }

Vadim
14.02.2017
11:56:08
Значит товарищ достиг цели. его сайт fsharpforfunandprofit.com
Единственное не совсем понятно, как совмещать C# и F# в одном проекте. Т.к. писать весь проект на F# для меня пока трудно представляется, но кое-что было бы интересно применить

Google
Akhmed
14.02.2017
11:56:10
сократили до

public string Name {get; set;}

Порог входа снизился. Язык стал удобнее

Кита
14.02.2017
11:56:46
ну автопроперти нужны в POCO

Akhmed
14.02.2017
11:57:04
так и в MVVM прекрасно работают автопроперти

Кита
14.02.2017
11:57:19
да. все прекрасно работает до поры до времени

Akhmed
14.02.2017
11:57:20
у нас в проекте мы вообще не пишем полный синтаксис {get; set;} для свойств

Кита
14.02.2017
11:57:26
пока проект простой как 3 копейки

Roman
14.02.2017
11:57:52
пока проект простой как 3 копейки
У уважаемого Кита К. сегодня настроение не очень)

Vadim
14.02.2017
11:58:34
У уважаемого Кита К. сегодня настроение не очень)
Никита походу сегодня кокого-то бездаря собеседовал)

Akhmed
14.02.2017
11:58:39
у нас во ViewModel мы пишем например Name {get; set;} и все. Остальной мусор дописывает Fody

Кита
14.02.2017
12:00:11
Fody - это тоже замечательно. Вот только Fody абсолютно беспомощен в случаях когда надо управлять количеством вызовов на обновление данных на UI, чтобы экран на каждый чих не дергался

и да я в понедельник собеседовал человека)

Akhmed
14.02.2017
12:01:10
Я почти каждый день провожу собеседования в свою команду и серверную но пока еще не подгорал от этого ))

Fody гибко настраивается на самом деле

вот если совсем по феншую то есть вот это

https://github.com/kswoll/ReactiveUI.Fody

Google
Roman
14.02.2017
12:13:41
Я почти каждый день провожу собеседования в свою команду и серверную но пока еще не подгорал от этого ))
Я подгорел недавно когда. Чел пришел собеседоваться и все было ок по знанию языка и системы в целом. Но что-то смущало. И вот через еще час выяснилось, что он не использует тестов никогда, никаких гитфлоу и стратегий по управлению версиями нет и в общем такой асоциальный чел.

Vladislav
14.02.2017
12:14:36
"зачем тесты, когда есть тестеры?"

Roman
14.02.2017
12:15:56
Хуже, зачем когда у меня и так все работает.

И тут выяснилось, что больших проектов он не писал (

Игорь
14.02.2017
12:17:28
ну отрицать полезность тестов странно)

Akhmed
14.02.2017
12:18:00
В своем роде он прав. Если у тебя в принципе нет больших проектов вообще - зачем действительно нужны тесты?

Когда пишешь большой проект то без тестов действительно почти никогда не получится хорошего проекта

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

К сожалению даже среди тех кто пишут тесты очень мало кто умеет их писать

Игорь
14.02.2017
12:19:53
ну не знаю, я часть методов пишу через тесты), не всегда есть ручка которую удобно дернуть

Akhmed
14.02.2017
12:20:19
большинство разраобтчиков уровень тестирования остановился чуть сложнее многочисленных статей о тестировании сложения двух чисел

Игорь
14.02.2017
12:20:32
даже в своем маленьком проекту у меня есть десяток тестов, просто потому что так получилось

Akhmed
14.02.2017
12:20:53
после большого проекта сложно писать без тестов вообще

Akhmed
14.02.2017
12:22:35
Львиная доля разработчиков знает только о example-based тестах

а вот о property based практически никто не знает

хотя такие тесты могут найти баги которые в принципе не в состоянии обнаружить example based тесты

Кита
14.02.2017
12:29:21
"зачем тесты, когда есть тестеры?"
попробуй пулреквест в XF сделать без тестов) съедят)

Akhmed
14.02.2017
12:31:14
"зачем тесты, когда есть тестеры?"
Ну и к тому же вот прямо сейчас проблема возникла. Токен на бою протухает через две недели использования и возникает бага

как тестерам воспроизвести и подтвердить фикс этого бага?

Google
Akhmed
14.02.2017
12:31:24
ждать две недели?

Damir
14.02.2017
12:33:27
не быть вам хакером)

Akhmed
14.02.2017
12:36:41
не быть вам хакером)
А зачем? Взломать сервер что бы заставить выдать нужно время жизни токена на стороне сервера?

я просто мысль не понял если честно )

Damir
14.02.2017
12:37:39
я сказал только по поводу вот этого высказывания

как тестерам воспроизвести и подтвердить фикс этого бага?

ждать две недели?

насчет тестов ничего не имею против

кстати

судя по тому что у вас возникла такая трабла с токеном

либо нету тестов на это

либо не полностью покрывается логика)

Akhmed
14.02.2017
12:40:09
вот именно

не было тестов на это

по историческим причинам в начале вообще никаких тестов не было в проекте

постепенно начали внедрять

Igor
14.02.2017
12:41:52
Главное что бы они потом не исчезли, когда все надоест, что после рефакторинга код перестет компилироваться.

Akhmed
14.02.2017
12:43:08
Главное что бы они потом не исчезли, когда все надоест, что после рефакторинга код перестет компилироваться.
верно, а для этого надо уметь писать тесты, точно так же как надо уметь писать код. Говнотесты так же сложно и даже сложнее сопровождать нежели говнокод

вообще очень крутой доклад на эту тему был от автора книги DependencyInjection .NET

https://www.infoq.com/presentations/mock-fsharp-tdd

Google
Akhmed
14.02.2017
12:53:18
вот более подробно в виде текста примерно этот же доклад

http://blog.ploeh.dk/2017/01/27/from-dependency-injection-to-dependency-rejection/

с примерами на C#

ну в смысле содержание другое но тема одна и та же :)

Igor
14.02.2017
12:58:05
https://www.infoq.com/presentations/mock-fsharp-tdd
за f# отдельное спасибо

Akhmed
14.02.2017
12:58:55
если тема F# и тесты интересна то тут очень много материалов на эту тему

https://fsharpforfunandprofit.com/posts/low-risk-ways-to-use-fsharp-at-work-3/#test-bdd

вообще с F# тесты писать веселее

можно основной код писать на C# а на F# Только тесты

но есть одна очень крутая тема с тестами на базе FsCheck

сейчас попробую найти

Roman
14.02.2017
12:59:45
вообще с F# тесты писать веселее
да, это самый безопасный способ начать писать на F# в энтерпрайзе)

но есть одна очень крутая тема с тестами на базе FsCheck
только хотелш написать про fsCheck аналогов которму нет на C#

Akhmed
14.02.2017
13:00:34
сейчас ищу доклад на эту тему - минутку

Roman
14.02.2017
13:00:36
хотя если учесть что у fscheck есть api для С#, то я не совсем прав)

Akhmed
14.02.2017
13:01:45
Вот!

https://skillsmatter.com/skillscasts/6432-the-lazy-programmers-guide-to-writing-1000s-of-tests-an-introduction-to-property-based-testing

по мне очень крутой доклад для новичков

очень подробно и на пальцах разжовывает что такое Property Based тесты и зачем они нужны

Igor
14.02.2017
13:04:09
а на youtube ничего нет? (на skillmatter требует авторизацию)

Akhmed
14.02.2017
13:04:17
не знаю )

я авторизовался что бы посмотреть ))

Страница 35 из 619