Обновить
103
Роман Смирнов@Source

Head of Elixir at Ecom.tech

0,6
Рейтинг
52
Подписчики
Отправить сообщение

Если у вас есть инвайт, то его, в принципе, можно потратить на анонимную статью:


  1. Заводите read-only аккаунт на левый email с левым ником
  2. Пишете под ним статью в песочницу
  3. Ждёте денёк
  4. Если никто не опубликовал вашу статью, то заходите под своим основным аккаунтом и публикуете её из песочницы, используя инвайт
Сейчас все свелось к дуополии Windows-Linux

Тогда уж к NT, Linux, Darwin(XNU), BSD, QNX, если по популярным ядрам пройтись.


Да и на тему совершенно другого, оно ж есть, просто не заходит… А так за предыдущие 20 лет написали кучу новых ядер и ОС, просто вы не в курсе )))
Взять хоть тот же MS c его Singularity. Или вот российская разработка: Phantom OS
Ну и ещё несколько интересных проектов: Genode, HelenOS, Cosmos.

Если это будет ОС заточенная под серверные задачи, плюс будет супер-пупер безопасной и всё такое — то шанс однозначно будет.

Чем же она должна отличаться от OpenBSD, чтобы получить на пару порядков большую популярность? Которая имеет долю в районе 0.1% серверов.

Спасибо, буду знать :)

В РФ подоходный налог на выигрыши — 35%, хотя может для казино и есть какие-то исключения. Но скорее исключения только для государственных лотерей.

а задаром да под винду никто даже не посмотрит.

Почему задаром то? При желании, MS и оплатит.

Скорее забавно, что MS не смог купить Java и ему пришлось сначала пилить J++, а потом J# и C#.
А Oracle смог купить, но когда уже нет возможности извлечь из этого выгоду.

Инертность мышления во всей красе… Сначала в MS не верили в то, что Интернет станет популярным, а потом в то, что смартфоны станут популярными. И там и там у них были свои решения, но такие… для галочки. Какого-нибудь из первых конкурентов обойти и забить лет на 5. А за это время другие конкуренты их самих обходили.

Ну да, 15-20 лет назад вопросы лицензий в России вообще мало кого интересовали.
Плюс в ВУЗы они поставляли бесплатные лицензии, насколько я помню. А традиция обучения программированию на базе Паскаля была очень сильна.

Учительница, видимо, подустала играть в компьютер, поскольку итоговый алгоритм всё ещё никуда не годится )))


Возьми ложку для мороженого и один за другим положи три шарика малинового мороженого в миску.

Что-то непонятно… А где взять шарики малинового мороженого? Где фабричный метод их создания?


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

Зачерпни соус чем?


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

Прям вот так вот вверх ногами и вернуть упаковку на место?

Логично, в фотошопе то этих названий нет. А откуда берёт цвета верстальщик? Правильно, из того самого макета в фотошопе.

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

Чем приложение меньше, тем меньше смысла грузить немаленький jQuery

Насколько я понимаю, они со временем выпиливают слой совместимости с совсем уж древними браузерами, и как следствие размер библиотеки уменьшается со временем. Ради интереса посмотрел, текущая версия (3.4.1) занимает 86 kb и это ещё без gzip. По текущим реалиям будет точнее называть его "пренебрежимо маленький jQuery".

Вынос в константы однозначно нужен. А вот вынос в конфиг может оказаться и оверинженерингом. Про YAGNI тоже не нужно забывать.

Насчёт красоты wxWidgets можно ещё добавить, что он подстраивается под нативный look-n-feel, поэтому скриншот одной и той же формы будет выглядеть по-разному в разных OS и DE. Например, на MacOS X такой вид:



Так что для кросс-платформенного GUI wxWidgets — практически идеальный вариант.

Ответ, вообще-то, очевиден — только не таков, каким он вам кажется.

Если вы намекаете, что ответ — "исторически сложилось", то это неправильный ответ.


Авторы Inkscape, вообще-то, начинали с исходников Sodipodi, созданном на языке C без использования ООП.

Ох, как же вы живёте то теперь со знанием, что векторный редактор можно и без ООП написать xD


Кстати, в C вполне возможно использовать ООП (не забывайте, что это парадигма, и что наличие классов — не является её требованием)


Разумеется когда вы добавляете ООП в уже существующий код — ваши руки оказываются «связанными».

Что значит "разумеется"? Inkscape уж 15+ лет существует… пару раз что угодно переписать можно было, если бы была насущная необходимость.
Да и вообще когда есть понимание, как надо переделать и зачем, руки ничто не связывает.

А речь шла не про определение, а про утверждение, что ООП придумали не для простых задач.

Если про это не написали в русской Википедии на странице про ООП, то для вас это неочевидно?
Я бы даже сказал, что не слишком громким обобщением, будет сказать, что в программировании уже лет 70 как ничего не придумывают для простых задач. Основной драйвер развития парадигм и инструментария — борьба со сложностью.


И именно на этой борьбе построили удачные маркетинговые компании, которые реализовали небольшое подмножество идей ООП, типа того же C++. Да с него плевались те, кто придумал ООП, писали "что за хрень?", но маркетинг сделал своё дело. Но это 35 лет назад можно было на что угодно навесить ярлык ООП, лишь бы продать. Сейчас любой желающий может ознакомиться с оригинальным описанием парадигмы, осознать масштабы концептуальных искажений в мейнстрим языках и сделать выводы. И практически применимые выводы, потому что ООП — это не технология, а парадигма — совокупность идей и понятий, определяющих стиль написания программ. Как только поймёте парадигму, сможете начать её применять в любом языке.

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

Как сказать… Есть классы задач, которые решаются постоянно, ежедневно в тысячах компаний по всему свету, просто потому что универсального решения нет или пока не нашли, но есть универсальные принципы и подходы к их решению. И именно их было бы гораздо полезнее рассматривать в учебных целях. Нечто подобное рассматривают в книгах про паттерны проектирования.
Вот только это сложный и путанный путь: сначала объяснить ООП так, чтобы никто не понял зачем оно, а когда задолбается, начал паттерны изучать или переизобретать.
Обратите внимание, почти все паттерны выделяют объекты по поведению (поведение + данные, необходимые для его реализации), а почти все учебники и статьи для начинающих продолжают нести дичь про объекты реального мира и про то, что объект — это модель, это данные и всевозможные действия над этими данными (= фундаментальная ошибка понимания ООП).


P.S. Вы всерьёз думаете, что формат комментариев подходит для обсуждения создания векторного редактора с нуля? Мало того, что это практически бессмысленная задача (у вас бюджета не хватит подвинуть конкурентов), так она ещё и огромна.
Но раз уж вам захотелось дзена, то почитайте исходники того же Inkscape и ответьте на вопросы: Почему класс Circle не наследует от класса Shape? И не содержит метода draw? Авторы Inkscape не дураки, чтобы делать так, как описано в "учебниках" по ООП.

Вот с этим не поспоришь :)
Жаль только в заголовке оно упоминается )))

Рекурсивность появится если паттерн будет состоять из самого себя, а не просто из набора других паттернов.


Если бы было так:


var person = new Person
{
    Name = new FullName
    {
        First = "Vasya",
        Last = "Pupkin",
        X = "secret",
    },
    Age = 42,
};

if (person is { X: var x})
{
    Console.WriteLine(x);
}

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

Информация

В рейтинге
2 347-й
Откуда
Россия
Работает в
Зарегистрирован
Активность