Как стать автором
Обновить
206
-2.4
Андрей @impwx

Программист

Отправить сообщение

Как раз наоборот — до определенного предела знаки препинания позволяют быстрее понять, что именно за магия тут накручена. Например, если я вижу delay(300.milliseconds), я сразу могу определить, что:


  1. Вызывается метод delay с одним аргументом
  2. Есть свойство milliseconds, скорее всего расширяемое, объявленное на типе целых чисел
  3. Тип возвращаемого значения этого свойства совпадает с типом аргумента метода delay

Если же я вижу delay 300 milliseconds, то можно интерпретировать эту конструкцию совершенно по-разному:


  1. У метода delay два аргумента, первый — число, второй — некий алгебраический тип, перечисление единиц измерения времени, конструктором которого является milliseconds
  2. У метода delay один аргумент, а milliseconds — это постфиксный оператор (?), преобразующий число в специальный тип с диапазоном
  3. У метода delay больше двух аргументов, и на этой строке мы только частично применили функцию, не вызвав ее — т.е. задержки не будет

Так что читаемость — это штука сугубо субъективная, и с количеством знаков препинания оно напрямую не коррелирует.

Важней всего — погода в доме...

Довольно часто у студентов, изучающих C++ в определённых учебных кругах, складывается мировоззрение о том, что всё должно быть объектами.

Где-то сейчас заплакал один Егор Бугаенко

Практически все тесты вида "язык X быстрее языка Y" сводятся к тому, что "одинаковые" программы на самом деле используют разные структуры данных

Помимо оформления карты нового банка вам еще нужно забрать все из старого банка — вклады, кредиты, ипотеки. Привязать везде новую карту, уведомить работодателя о смене банковских реквизитов. Не титаническое, конечно, но можно потерять много денег и потратить гораздо больше 10 минут.

Вариантов, куда можно было бы уйти, особо нет. В текущих условиях любой другой банк может быть следующим заблокированным

Он пробивает дно раз за разом. Когда вы думаете, что вот она, нижняя точка, Тинькову все еще есть, чем вас удивить.

При том, что я люблю EF и много лет использую его в продакшене, конкретно эти претензии вполне справедливы.


Например, SQL иногда действительно просачивается в LINQ-запросы: DbFunctions, EF.Functions. У каждого провайдера БД этот набор функций может быть свой.


По той же причине тестирование на in-memory-провайдере покрывает далеко не все. Перечисленные выше функции не имеют реализации и "работают" только при трансляции в SQL, а при попытке действительно вызвать их на LINQ to Objects вы получите ошибку. И наоборот — относительно легко написать запрос, который выполнится на объектах в памяти, но не сможет быть транслирован в SQL.

Электромобили считаются неактуальными, потому что нефть и газ теперь некуда девать?

Зачем они это делают?

Режим зануды: мобильные игры были не на Flash, а на J2ME.


Из консолей детства запомнились две: PS1 (была у всех соседей по двору, активно обменивались дисками) и GBA (классический, не SP — был у одного знакомого, считался запредельно крутым и настолько же запредельно дорогим). Покупка GBA для меня до сих пор незакрытый гештальт — понимаю, что сыграю в пару игр и быстро надоест, но очень хочется...

Эйфория от легкости записи в монгу быстро омрачается гемором при чтении — теперь у каждой записи потенциально свой собственный формат, любое обращение к базе нужно обмазывать увеличивающимся числом if'ов. Эйфория от скорости работы также быстро омрачается пониманием, что eventual consistency позволяет легко потерять данные в случае failover'а, а ненавистные join'ы теперь нужно делать вручную в коде приложения (или дублировать данные).


Поэтому за последние 10 лет граница между SQL и NoSQL сильно размылась, и современные базы позволяют использовать преимущества общих подходов (a.k.a. NewSQL).

Поразительно — автор предпочел опустить все интересные технические подробности, но рассказать про то, как он один раз двадцать лет назад нахамил ведущему разработчику Героев 3.

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


Сняв с головы соломенную шляпу, он, не оборачиваясь, кинул ее назад. Шляпа прошелестела над дорогой, и стальной диск, скрытый между ее полями, врезался в горло сыщику с бакенбардами, который, привстав на локте, из последних сил целился в Т. из своего «дерринджера». За миг до того, как лезвие перебило сонную артерию несчастного, Т. крикнул:

— Поберегись!

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

— Отчего вы думаете, что это иллюзия? — отозвался Т. — Разве вы не видите, каких усилий и риска мне стоит вести себя по-человечески? Или вы считаете, все похожи на вас в цинизме и равнодушии к чужой боли?

Разве у Internet Archive есть российское представительство, или они "ведут бизнес" в РФ?

Несмотря на попытки сделать консольные игры удобными, многие из портативных игр получились совершенно странными. Например, Nintendo DS с её двумя экранами (пользователей удивил двойной экран на таком небольшом устройстве).
DS — крайне популярная консоль, их продано более 150 миллионов штук, и основа популярности как раз в том, что Nintendo не боится экспериментировать с форм-факторами приставок и делает игры, по максимуму использующие эти особенности. А «не странные» — это X-Box и PlayStation: там за 20 лет каждая следующая модель отличается от предыдущей только чуть улучшенными характеристиками.

"Сопоставление с образцом" же

Также было бы неплохо настраивать mute для папок: например, чтобы из рабочих чатов не приходили уведомления в нерабочее время.

Глобальные using и namespace — вполне логичный шаг по снижению "церемониальности" сишарпа и облегчение его использования в качестве скриптового языка. Это уже давно работает в LINQPad, теперь и в сам язык перетащили — стало чище и удобнее.


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

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Fullstack Developer
Lead
От 10 000 €
C#
.NET
SQL
TypeScript
Vue.js
Angular