Pull to refresh
3
0.6
Send message

Во вью для такого хитрого кейса есть watchEffect

И чем же вьюшные onMounted() / onUnmounted() менее удобны? Они даже более наглядны в данном случае.

Ну и что же они могут такого, что хуже реализуется во Vue?

Что же мешает во Vue пользоваться JSX? https://vuejs.org/guide/extras/render-function#jsx-tsx

Преимущества React Hooks над Vue Composable API крайне сомнительны. Во Vue реализована настоящая модель реактивности, а хуки — эрзац-версия, в которой пересчёт костыльно прикручен к рендер-циклу.

QBasic потому и был урезанным, что содержал только интерпретатор, а компиляция в QuickBasic была вроде настоящей, с промежуточной генерацией объектных файлов и линковкой, а не просто заворачиванием промежуточного кода в рантайм.

И чем же React + MobX лучше, чем Vue?

Vuex мёртв, но комментатор имел в виду, что стейт-менеджер может в принципе не понадобиться.

Для большинства крупных проектов даже на $mol пришлось бы разрабатывать свой UI Kit, чтобы соответствовать брендбуку и дизайн-макетам.

Такой подход был у джобсовского NeXTSTEP, в частности у Interface Builder. И в Photoshop такой же многооконный интерфейс применялся.

Так QBasic, поставлявшийся вместе с DOS, — и был урезанной версией. А полный QuickBasic даже умел компилировать в exe.

В «теоретически возможном плане» возможно всё, но изменение в ядре никакого переполнения стека не произведёт. Там выделение одной лишней переменной. До переполнения там очень сильно далеко. Фраза про «очень близко к этому» не означает «близко к исчерпанию стека». Более того, выделенный участок стека освобождается при выходе из функции, поэтому на некие программы, использующие стек по максимуму, это тоже не повлияет. Но выделять много памяти на стеке и рассчитывать на это — тоже неправильно, если только речь не про прошивку микроконтроллера, которая самостоятельно распоряжается всей доступной памятью.

Так а как выполнение контрактов связано с работой софта?

Речь о контрактах в программировании, это не про юридические контракты, а про API, ABI и документированность поведения. Изменение не портит аллоцированную память, а то, что игра пытается интерпретировать значения из неинициализированной памяти, так это неопределённое поведение, и любой студент-айтишник скажет, что так нельзя. Здесь полностью вина Rockstar, что они аллоцировали память, не проинициализировали её дефолтными значениями, а также проигнорировали возвращаемое функцией sscanf количество проинициализированных переменных.

Или я упускаю важности контрактов в контексте не работы софта, не спроста она же жирным выделена?

Нет, речь идёт о том, что внутренние функции Windows вправе использовать неаллоцированную память как посчитают нужным, а программисты не вправе рассчитывать на те значения, которые будут лежать в аллоцированной ими, но непроинициализированной памяти. Это и есть контракт.

Грубая аналогия произошедшего такая: идёт урок в классе, преподаватель пишет что-то на доске. Затем урок заканчивается, и все уходят (память освобождена). На следующий день преподаватель и студенты возвращаются (снова аллоцировали память), но они не вправе считать, что всё ранее записанное на доске, сохранится как было. Может быть занятий в аудитории не было или были, но на доске ничего не писали, или писали только на части доски. Соответственно, они не должны продолжать работать с тем, что там уже записано (неопределённое поведение), а следует стереть всё с доски и записать заново (проинициализировать память).

Там нет переполнения стека, скорее всего они просто добавили в функцию одну новую переменную. В плане совместимости игра в целом работает, и в этом они контрактов не нарушили.

Но компьютер не имеет особого понятия об алфавите IPA. Для него uppercase("/bɔɪ/") == "/BƆꞮ/".

Так в том и дело, что в Турции — это разные буквы. В Турции uppercase("i") == "İ", а lowercase("I") == "ı".

Проблема же в том, что работы ссылки на файл, сделанной в другом регистре, будет зависеть от системной локали, что рано или поздно приведёт к проблемам.

collating sequences вместо тупых сравнений

То есть на компьютере в России файлы istanbul.txt и Istanbul.txt будут одинаковыми, а в Турции — разными?

Так система не перетирает актуальный стек, там легальное поведение. Просто одна из процедур ядра стала класть в стек на 4 байта больше (int32), чем модифицировала в памяти значение, которое будет (грубо говоря) прочитано из неинициализированной переменной (на самом деле — из ячейки памяти, в которую перед чтением sscanf ничего не положит).

Basic. Который тянула ms виде VB и VBA , пока не поменяла его на Visual Basic .NET, где от оригинала осталось уже совсем мало. Язык ещё более древний чем паскаль, и в изначальном виде архаичный. Кто начинал с УКНЦ и Спектрума вспомнят нумерацию строк,GO TO (привет Дейкстре) и прочие особенности, которые в 21 веке уже выглядят совсем странными.

Но уже в конце 80-х (то есть до Delphi) Microsoft выпустил гораздо менее архаичный QuickBasic, практически приблизив его к Pascal. В итоге, как мне кажется, Visual Basic .NET и помог победить Delphi.

Тогда бы уже и на картинке попросить ИИ нарисовать хотя бы Fender Precision Bass, вместо стратокастера :)

Вот только это процессор для бас-гитары. Заголовок и КДПВ вводят в заблуждение.

Не так. Должно быть:
— А откуда взялся авиаконструктор?
— Мы не знаем, поэтому считаем, что его никто не создал, он всемогущий, существовал всегда и будет существовать вечно.

Information

Rating
1,896-th
Registered
Activity