C# - pattern matching - many discards
Вот неправильно юзать для компонентов это контекстное меню. Надо из окошка Гита выбирать каждый файл в отдельности.
Вы ещё поди команды гитовские в консоли набираете, как упоротые линуксоиды? А надо на удобную кнопочку жмакать рядом с файликом в окошке изменений, как Виндовс-боярин.
Надо из окошка Гита выбирать каждый файл в отдельности.
А на кой мне тогда гит спаренный со студией? Так я могу и в моей любимой проге работать.
команды гитовские в консоли набираете
Как подобная глупость могла прийти в голову? Вместо контекстного меню то.
Нафига копаться в развесистом контекстном меню,
там не так уж и много. И файл вот он рядом.
А что бы добраться до кнопочки, нужно открыть/перейти в нужное окно и найти нужный файл. Вроде и фигня но лишние действия.
Тем более, что из студии делал всегда только это единственное действие - откат одного файла.
А что бы добраться до кнопочки, нужно открыть/перейти в нужное окно и найти нужный файл.
У вас коммиты всегда на десятки файлов, что вы в изменённых файлах путаетесь?
На нормальном рабочем месте все нужные окошки всегда открыты. Т.е. нужно просто передвинуть мышку и жмакнуть.
Как подобная глупость могла прийти в голову? Вместо контекстного меню то.
Гы-гы. В пятницу прибегали такие тыркатели. "Мы чо-то натыркали и там всё-всё паламаласяаааа!" Не туда ткнули когда мерж конфликты разрешали, один щелчок не на том пункте контекстного меню и мы уже выбираем "бери ours для всех". Пришлось коммиты копировать, чтобы историю не корячить. И почему мне платят в полтора раза больше чем этим тыркателям, даже не знаю :)
Про опечатки и не говорю - их не бывает в принципе.
Я тебе глаза открою - если опечатаешься, команда не выполнится. Адекватные разработчики делают параметры такими, чтобы "апичатки" не были действительными: --delete это параметр, а --dwlete - нет.
В гите я наблюдаю очень чёткую корелляцию:тупые гуисты и адекватные консольщики. У нас есть и те и те. Не значит что консольщики не делают ошибок. Но у них в 99,99% случаев хватает мозгов на запушить их на ремоут.
Это насколько надо быть причёсанным торвальдсовской сектой, чтобы адекватность оценивать по зазубриванию консольных команд...
В гите я наблюдаю очень чёткую корелляцию:тупые гуисты и адекватные консольщики. У нас есть и те и те. Не значит что консольщики не делают ошибок. Но у них в 99,99% случаев хватает мозгов на запушить их на ремоут.
А если консольщики всё же какают, то исключительно бабочками. ))
О, дополнение к кортежам. Вместо того, чтобы писать свой тип для простого объединения пачки данных, можно воспользоваться кортежем:
public (int TheInteger, string TheString, bool TheBoolean)? Data { get; set; } = new(999, "blah blah", true);
var a = Data?.TheString;
Даже record не нужен.
Единственный минус видится (ещё не пробовал) - передать такой тип данных куда-то - надо указывать всю портянку кортежа - типа
MyMethod((int, string, bool) methodParameter);
Попытайтесь ввести кортежу псевдоним... Это покажет, что даже компилятор не воспринимает данный синтаксический сахар, как нечто серьезное. Фоновое локальное решение - ок, прячем в недрах фреймворка - всем пох. Но когда такое вылазит в паблик, особенно с внешними стекхолдерами, у меня для вас плохие новости - вам останется только петь про старперов:)
Это вопрос привычки. Пока есть старпёры, которым удобнее писать развесистую лапшу с дополнительными типами, служащими лишь для хранения передаваемых данных (DTO), и длинные списки параметров методов - они будут это делать. Придут новички, которые пишут с новым синтаксисом изначально - для них код старпёров будет странным и непонятным. Как я сейчас смотрю, что человек упорно и раз за разом пишет 5-10-строчные проперти с банальными проверками на налл и присвоением параметра value, вместо использования однострочного оператора ??=. Или городит стопицот слоёв, свои прослойки, фреймворки, конвертеры и фабрики фабрик для случай "а вдруг мы заменим базу данных? а вдруг мы заменим UI-фреймворк?". Все его построения заменяются банальной трёхзвенкой, и если что будет заменено в будущем, то просто эта часть переписывается. Оттого, что он понаписал километры лапши с фабриками фабрик, он не становится умным, он становится ЗАумным. Когда он уйдёт с проекта, новый лид не будет разбираться в его лапше, а просто перепишет всё по-своему, поэтому все эти старания по размножению слоёв не стоят потраченного труда.
Что там внутри под сахаром происходит - вообще пофиг. Компилятор кучу и "старого привычного" кода превращает в свои конструкции - и что? Некоторые называют "сахаром" любые непривычные им вещи. Даже если эти новые вещи позволяют сократить запись по сравнению со старым кодом, что приводит к его большей компактности и пониманию. Т.е. используют этот термин просто как ругательство. Тогда по идее, надо бы наоборот - старую лапшу назвать "сахаром", а новые подходы - единственными и неповторимыми "тру".
эти новые вещи позволяют сократить запись по сравнению со старым кодом, что приводит к его большей компактности и пониманию
Опять подняли знамёна и идем вперед с барабанным боем?
Всегда есть различные ситуации, в одной будет лучше одно в другой другое, но главное - код не должен иметь запаха.