LINUX.ORG.RU

Избранные сообщения hummer

Корреляция предпочтений GNOME и Apple Mac

Голосования — Голосования

Захотелось провести небольшое исследование среди линуксоидов. Цель исследования - проверить, существует ли связь между предпочтением Apple Mac и современным GNOME, во многом весьма похожими. Именно их похожесть натолкнула на мысль об этом исследовании.

Если такая связь существует, это может объяснить многое остальное. Например, проталкивание GNOME, несмотря на очень неоднозначное отношение пользователей, может напоминать кому-то поведение корпорации Apple, которая считала и до сих пор считает, что знает лучше пользователя что ему нужно и что не нужно.

К слову, успех Apple немного эфемерный. Известно, что по крайней мере однажды Apple стояла на грани банкротства, от которого её спас не кто нибудь, а Билл Гейтс, вовремя перечисливший деньги. Биллу был необходим формальный конкурент, а иначе его могли объявить монополистом и разделить. Вот и теперь Microsoft заигрывает с Linux.

  1. Мне не нравятся оба - и современный GNOME и современный Mac 211 (35%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. Я равнодушен к обоим или плохо с ними знаком 166 (27%)

    ***********************************************************************************************************************************************************************************************************************************************************

  3. Мне не нравится современный GNOME, но нравится современный Mac 80 (13%)

    *************************************************************************************************************************

  4. Мне нравится современный GNOME, но не нравится современный Mac 72 (12%)

    *************************************************************************************************************

  5. Мне нравится и современный GNOME и современный Mac 64 (11%)

    *************************************************************************************************

  6. Другое, отвечу в комментарии 11 (2%)

    ****************

  7. Пользуюсь только мобильными устройствами 1 (0%)

    *

Всего голосов: 605

 , ,

hummer
()

Посоветуйте курс лекций по программированию в x86-64 long mode

Форум — Development

Стало интересным попробовать себя в osdev, точнее в самых основах osdev - в программировании современных x86-64 процессоров в long mode режиме (не путать с 32-х битным защищённым режимом).

Хотел бы найти курс лекций, желательно на русском, где хорошо и доходчиво объясняют что к чему, как в этом режиме вообще программировать и как реализовывать самые базовые части ОС, например простой планировщик задач.

Можете ли посоветовать что-то, по уровню подачи материала, похожее на курс лекций о C++ от Ильи Мещерина?

Обычный ассемблер 8086 я знаю, хотя и не пользовался им уже довольно давно.

 , , ,

hummer
()

Моё понимание ООП

Форум — Development

Мою прошлую тему загадили и утопили в молоке, завалили вопросами типа «а что ты понимаешь под ООП». И жалуются что я не отвечаю. Но не на все вопросы есть простые ответы. «Один дурак может задать столько вопросов, что сто мудрецов не смогут ответить!». И всё же я попробую представить своё видение.

Если взять просто данные, хранящиеся в структурах, то их можно сравнить с бухгалтерскими счётами: ты можешь сам прочитать данные, можешь сам изменить их, можешь переписать их себе в блокнот, можешь положить на хранение в ящик или передать их другому.

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

Вобщем, в первом случае модель, где ты контролируешь объём памяти, занимаемый данными, их формат (например, целый или с точкой) ты хранишь их в своей комнате и сам решаешь, делиться этими данными или нет. Это всё возможно из-за того что у тебя есть дополнительные знания (контекст), которые нигде в системе не хранятся. Твои функции, работающие с этими данными, предполагают что данные хранятся в том или ином формате и это позволяет избежать лишних преобразований, а так же необходимость в каждом объекте хранить лишние метаданные.

В случае с объектом ты можешь не знать где хранятся данные (в том числе, географически), сколько памяти задействовано, сколько ресурсов процессора задействовано на их обработку. Видна только маска - интерфейс.

Сразу хочу отметить, что я не против банкоматов, они не идеальны, но пока безналичный расчёт не везде принимают, приходится ими пользоваться. Проблема ООП в том, что в нём всё является таким «банкоматом» и везде принимается только нал. Любому очевидно, что когда имеешь дело с банкоматами, ты не можешь ничего оптимизировать.

ООП - это такая модель, в которой «всё является объектом», то есть данные заворачиваются в объект и вместо естественного для вычислительной машины хода обработки данных «данные на входе -> данные на выходе», твой код имеет дело с интерфейсами, т.е. идёт общение с «чёрным ящиком», который «сам знает что делать».

Простой пример: веб-браузер HTML+CSS+Javascript В этом примере HTML - это данные в чистом виде. Они не «знают» как себя отобразить. CSS - тоже данные. Это не объекты. И есть Javascript код, который имеет полный доступ к дереву документа. И когда ты пишешь веб-браузер, у тебя данные на входе - веб страница на выходе - это информационн-ориентированный подход (Data-oriented), в центре которого данные, а не объекты. Сохраняя страницу в формате .pdf ты тоже создаёшь данные на выходе. Эти данные можно отправить в другую программу для дальнейшей обработки. Это как инструмент.

 

svyatozar
()

Очередного обсуждения Rust тред

Форум — Talks

Взамен досрочно почившему:

www.linux.org.ru/forum/talks/16325849

 

byko3y
()