Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Два пути - количество или качество игр | страница 2
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 2 из 5
На страницу: Пред.  1, 2, 3, 4, 5  След. | Все страницы
Поиск в этой теме:
Канал Игры Мечты: «Два пути - количество или качество игр»
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Guest :
Sh.Tac. :
ага, та же уешька, прототип накидывается схематично брашами и блюпринтами, уже можно бегать и что-то делать, в т.ч. например по сети

дальше всё это выкидывается и пишется уже в коде

Да, но при этом в той же уешке Гы-гы

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

Сейчас в фоне смотрю видео J.Blow'a, как он пилит свой JAI.

Преследуемые цели просмотра точно не сам язык. Но вот что удивило - сам Джонатан про юнити практически ничего не знает (хотя в то же время разибрается во всяких лиспах, 20 лет кодинга на плюсах и т.п.). Так понял, что Witness'a командой из 8-ми человек они собрали в основном на C++ плюс OpenGL.
А сейчас вот он ещё замахнулся не то что на движок, а на язык.

Как мне кажется, яркий пример первого пути. Сначала он вдвоем три года пилил Braid'a, а теперь 7-8 лет Witness'a.

---

С Jai мне совсем не понятно во что выльется. С одной стороны, "смотрите, его сделал сам J.Blow!", "У них куча опыта в индустрии", а с другой стороны, языки обычно не взлетают чем взлетают, пробиться в ниши сложновато, инфраструктуры языку нету (библиотек и т.п.). И вместе с тем сам Дж. по натуре (забыл слово..), когда хочется изменить мир забесплатно и начхать на всякие титулы и $.

Но вот что он считает важным в разработке и как она понимается - интересно. Однако, долго.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (20:33 17-09-2015), всего редактировалось 1 раз
    Добавлено: 20:25 17-09-2015   
БулерМэн
 420 EGP


Рейтинг канала: 2(21)
Репутация: 68
Сообщения: 1580
Откуда: Гороховец
Зарегистрирован: 07.02.2006
Minx :
И вместе с тем сам Дж. по натуре (забыл слово..), когда хочется изменить мир забесплатно и начхать на всякие титулы и $.

Предлагаете ему помочь? Гы-гы

Не полностью посмотрел видео, минут 20 и далее прокручивал "0синтаксис".
Сама по себе идея - написать свой язык, который будет удобен только тебе, вместо того, чтобы использовать существующие способы написания программ - интересна.
Но мне кажется эта идея будет интересна только тем, кто хорошо разбирается не в одном языке и знает подводные камни каждого изученного, как минимум чтобы не наступать на те же самые грабли.
Да, наверное сидя в своем кресле круглыми сутками ковыряя код - удовольствия мало получаешь. А если для реализации своих идей нужно написать свой язык? Вообще идея подкупает, так как основополагающий принцип - "если устройство многофункционально, значит отдельные функции работают плохо" - скорее всего работает и для языков программирования.
Писать все подряд на одном языке - тоже не совсем верно, так как у каждого есть своя область применения.

Все, пошел придумывать свой язык, а то утомляют уже конструкци типа if(){} Хы... Шутка, но в каждой шутке доля шутки Улыбка

Последний раз редактировалось: БулерМэн (23:01 17-09-2015), всего редактировалось 2 раз(а)
    Добавлено: 22:58 17-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
БулерМэн :
Сама по себе идея - написать свой язык, который будет удобен только тебе, вместо того, чтобы использовать существующие способы написания программ - интересна.

У него идея создать язык для игровой индустрии. Чтобы игры быстро, удобно и приятно писать.

добавлено спустя 1 минуту:
БулерМэн :
Предлагаете ему помочь?

Джонатан думаю будет не против (; Тем более что он говорил что ему интересно коллективная разработка, т.е. даже мнения и идеи приветствуются.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (23:17 17-09-2015), всего редактировалось 1 раз
    Добавлено: 23:17 17-09-2015   
БулерМэн
 420 EGP


Рейтинг канала: 2(21)
Репутация: 68
Сообщения: 1580
Откуда: Гороховец
Зарегистрирован: 07.02.2006
Minx :

У него идея создать язык для игровой индустрии. Чтобы игры быстро, удобно и приятно писать.

Тогда надо обязательно пойти дальше! Хы...
Быстро, удобно и приятно у всех - по разному...
Сделать удобный и приятный язык для написания свое собственного языка, для конкретной игры, платформы и т.п.Улыбка
В принципе, ничего же не мешает весь процесс сборки компилятора языка "шаблонизировать", прикрутить приятный интерфейс с чекбоксами. А дальше - отвечаем на вопросы мастера: "Как должно выглядеть присваивание?" и варианты, либо пункт с ручным вводом.
И тому подобное. И на выходе блестящий, компилятор с понятным до мелочей языком...
Но это все в качестве шутки Улыбка
Вполне вероятно, что написав свой собственный язык - человек сможет довольно быстро на нем решать ряд специфических задач, в том числе потому, что он автор языка и в итоге для удобства может что-то подправить на ходу. Но у меня опыта написания компиляторов как-то совсем нет и я наверное многое теряю.

Давайте по сабжу темы Гы-гы

Последний раз редактировалось: БулерМэн (00:57 18-09-2015), всего редактировалось 1 раз
    Добавлено: 00:57 18-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
БулерМэн :
Вполне вероятно, что написав свой собственный язык - человек сможет довольно быстро на нем решать ряд специфических задач, в том числе потому, что он автор языка и в итоге для удобства может что-то подправить на ходу.

По идее Джонатан ближе по предметной области к играм, нежели Страуструп или Гослинг. А в общем случае, чем инструмент ближе (не только по предметной области, но и по решаемым задачам, и по месту (физическому) применения и мн. др.), тем проще его применять, меньше ошибок, меньше затрат и т.п.

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

Понятно, что взлетит это или нет не понятно. Но вот как есть.

Я вообще не про Jai пытался сказать, а про пример первого пути. 3-8 лет пилить по одной игре - это не собирать раз в полгода-год какого-нибудь полуклона.
_________________
μηδείς αγεωμέτρητος εισίτω
    Добавлено: 02:16 18-09-2015   
Guest
 2075 EGP


Модератор
Рейтинг канала: 5(167)
Репутация: 376
Сообщения: 27975
Откуда: Моск.
Зарегистрирован: 12.10.2004
Minx :
У него идея создать язык для игровой индустрии. Чтобы игры быстро, удобно и приятно писать.

Не совсем. Как он же сам и пишет -
Цитата:
Language features like garbage collection and templated data streams and dynamic string classes may help the programmer write code faster, but they don't help the programmer write faster code.

Быстро, удобно и просто писать код удобно на языке с шаблонами, уборкой мусора и т.д. Но задача программиста, пишущего игру - фигачить огромные объёмы данных между диском, оперативной и видеопамятью. Т.е. писать быстрый код, а не быстро писать код.
Вот он делает такой C-подобный язык с управляемой вручную памятью, безобъектной моделью, без idiot-proof решений - мол, программисты геймдева не бояццо ссылок, крашей и багов, и если они хорошие программисты - то не так уж много этих крашей и багов будет... А плохих программистов нанимать не надо.
Я бы сказал - довольно наивно, но для небольших проектов - сойдёт. В больших же всегда начинают вылезать косяки коммуникации, которые с точки зрения нормального программиста вообще появляться не должны... Соответсвенно и ловить их офонареешь.
Алсо, я не понимаю, чего такого плохого в объектах классов (особенно в случае статических методов, которые близки к глобальным функциям как никто), и чего такого хорошего в ручном управлении памятью. Ну ОК, это действительно быстро (хотя скорее плавно и более предсказуемо, чем GC), но с тем же успехом можно засандалить утечку или переполнение в неочевидном месте.
Выполнение на стадии компиляции - тоже интересная фича из серии "мне лень настроить окружение". Это не в плохом смысле, а наоборот - устраняет тот самый friction, о котором он пишет. Вместо того, чтобы париться с лишними скриптами, пишем "выполнить прямо в тут".
Другое дело, что выполнять код каждый раз при компиляции может эту компиляцию затянуть, а он пишет, что компиляция должна быть быстрой, в идеале - мгновенной. Фиг знает, как это сочетать.

Minx :
Я вообще не про Jai пытался сказать, а про пример первого пути. 3-8 лет пилить по одной игре - это не собирать раз в полгода-год какого-нибудь полуклона.

Это не совсем (или даже совсем не) корректный пример. Можно собирать хорошую игру с нуля 7-8 лет или с какого-то базового инструментария 2-3 года, тратя время в значительной степени на геймплей, нежели на создание "подложки" для взаимодействия с системой. Ну и в любом случае нужно время на создание непрограммного контента, которое ускорить готовыми инструментами тоже можно, но не так значительно.

добавлено спустя 8 минут:
Есть ещё накладные расходы на переучивание. Время. Зачем, к примеру, надо было придумывать свой новый синтаксис с дамами и преферансом? Нет, убрать сигнатуры из хэдеров - это, конечно, идея гут... Но в том же C# их и нет, к примеру. Сигнатура метода как бы прямо в его описании и пошла. Но при этом метод рисуется так же, как и в С++, скажем. А тут какая-то своя особая магия, к которой надо заново привыкать. Фигурные скобки-то он почему-то оставил Гы-гы
Вот эта необходимость "привыкать" - это, пожалуй, самое большое friction, если не сказать handbrake, которое сильно помешает сим замечательным задумкам, оставив его главным образом для своего изобретателя... Может оно и неплохо для него самого. А остальные пишут как могут или как привыкли.

добавлено спустя 10 минут:
Хотя есть там у него несколько встроенных в язык вещей, которые вообще-то в язык не встраивают, потому что это функции окружения (такого, как VS или MD), а не языка. То есть Jai - это не язык программирования, это инструмент создания кода для игр(?).
_________________
Трещит земля как пустой орех
Как щепка трещит броня

Последний раз редактировалось: Guest (03:26 18-09-2015), всего редактировалось 3 раз(а)
    Добавлено: 03:26 18-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Guest :
Т.е. писать быстрый код, а не быстро писать код.

Имел ввиду что написано в разделе "FRICTION REDUCTION".

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

Guest :
но для небольших проектов - сойдёт.

Небольших по чем? Времени, затратам, размере команды, .. ?

Полагаю что для небольших дисциплинированных команд пойдет?

Guest :
Алсо, я не понимаю, чего такого плохого в объектах классов (особенно в случае статических методов, которые близки к глобальным функциям как никто), и чего такого хорошего в ручном управлении памятью.

Я этого ещё меньше понимаю (;
Может он представитель ретроградской школы до-ООП-шных стилей?

Guest :
Другое дело, что выполнять код каждый раз при компиляции может эту компиляцию затянуть, а он пишет, что компиляция должна быть быстрой, в идеале - мгновенной. Фиг знает, как это сочетать.

Может какое-нибудь кэширование если ничего не поменялось в исходниках. Тож без понятия.

Может просто цель, чтобы и то и другое на некотором балансе.

Guest :
Это не совсем (или даже совсем не) корректный пример. Можно собирать хорошую игру с нуля 7-8 лет или с какого-то базового инструментария 2-3 года, тратя время в значительной степени на геймплей, нежели на создание "подложки" для взаимодействия с системой. Ну и в любом случае нужно время на создание непрограммного контента, которое ускорить готовыми инструментами тоже можно, но не так значительно.

В любом случае с иходниками и наработками придется возиться долго. А это требует другого отношения к предмету и вообще к организации процесса.

добавлено спустя 2 минуты:
Guest :
Хотя есть там у него несколько встроенных в язык вещей, которые вообще-то в язык не встраивают, потому что это функции окружения (такого, как VS или MD), а не языка. То есть Jai - это не язык программирования, это инструмент создания кода для игр(?).

Тоже пока что не совсем понимаю зачем тянуть это в язык.

Хотя он сам пока что создает код для плюсов. Когда сам в себя оформится, может будет по-другому.

---

Minx :
Дж. по натуре (забыл слово..)

филантроп, во!
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (03:37 18-09-2015), всего редактировалось 2 раз(а)
    Добавлено: 03:31 18-09-2015   
Guest
 2075 EGP


Модератор
Рейтинг канала: 5(167)
Репутация: 376
Сообщения: 27975
Откуда: Моск.
Зарегистрирован: 12.10.2004
Но вообще там общее - это что Jai язык не такого высокого уровня, как J или C#, но при этом включает кучу того, что давным-давно уже должно было быть в С/С++.

Но блин... Писать новый язык программирования, чтобы написать новую игру - это даже не первый путь, это задротство какое-то ИМХО. Либо база для долгого второго пути.

добавлено спустя 6 минут:
Minx :
Полагаю что для небольших дисциплинированных команд пойдет?

Да, как-то так. И для не очень затянутых и сложных по структуре проектов, т.к. при обрастании фичами велика вероятность обрасти костылями, а low-level языки такое не любят. Хотя у Джо там много инструментов, чтобы поменьше собирать наиболее частые грабли (те же разыменования нулевых ссылок).

добавлено спустя 7 минут:
Minx :
Я этого ещё меньше понимаю (;

Может он представитель ретроградской школы до-ООП-шных стилей?

Почитал ещё раз тезисы. Ему не нравятся жёстко-ОО языки. Хочется больше свободы. Это понятно.
Про память - понравилась автоматическая выворачивалка AOS->SOA. А в целом - managed code действительно медленнее и малопредсказуемее, так что выкинув GC мы поимеем таки более быстрый код. Просто придётся тщательнее следить за руками. В этом отношении я с ним согласен. У языков высокого уровня под управлением виртуальных машин есть такая проблема с играми...
Minx :
Тоже пока что не совсем понимаю зачем тянуть это в язык.

Он хочет "вещь в себе", чтобы можно было просто открыть редактор кода и фигачить код. Как в "манифесте программиста" Гы-гы А не париться с окружением. Поэтому в Jai и появляются все такие штуки, которые, к примеру, VS умеет для любого языка, входящего в него. Языки не умеют, а Студия умеет...

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

В случае пипец высоконагруженной игры разработка своего движка оправдана скоростью работы этого движка, недостижимого готовым решением. Раньше это зачастую было необходимостью. Сейчас мощность компов позволяет использовать неоптимальные решения, экономя время. Т.е. можно писать не пипец, но быстро. А можно писать пипец, который будет тормозить даже на современных компах, но тоже писать быстро. А можно писать пипец и медленно, с прицелом на то, что он будет потом летать... но потратить в 8 раз больше времени и к моменту выхода выглядеть как говно, из-за чего провалиться в продажах. It's up to you Гы-гы
_________________
Трещит земля как пустой орех
Как щепка трещит броня

Последний раз редактировалось: Guest (03:54 18-09-2015), всего редактировалось 3 раз(а)
    Добавлено: 03:54 18-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Guest :
Да, как-то так. И для не очень затянутых и сложных по структуре проектов, т.к. при обрастании фичами велика вероятность обрасти костылями, а low-level языки такое не любят. Хотя у Джо там много инструментов, чтобы поменьше собирать наиболее частые грабли (те же разыменования нулевых ссылок).

В Jai конечно не такой балаган, как в динамических языках, типа питона или руби. И в этом отношении у него хоть какая-то статическая проверка есть. И здесь мне кажется уровень безопасности где-то между С и С++, что довольно хорошо даже для средних команд.

Guest :
Быстро, удобно и просто писать код удобно на языке с шаблонами, уборкой мусора и т.д.

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

Guest :
Ему не нравятся жёстко-ОО языки. Хочется больше свободы. Это понятно.

Там ещё не сколько свободы. В его понимании ООП, разговоры о типизации, функциональщина - это академические заморочки, когда народ думает об объектах и их отношениях, умно разговаривает о инкапсуляии и безопасности, вместо того, чтобы делать дело. Поэтому тут существенная доля прагматзима, который он понимает по-своему.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (04:14 18-09-2015), всего редактировалось 1 раз
    Добавлено: 04:13 18-09-2015   
Guest
 2075 EGP


Модератор
Рейтинг канала: 5(167)
Репутация: 376
Сообщения: 27975
Откуда: Моск.
Зарегистрирован: 12.10.2004
Minx :
Там ещё не сколько свободы. В его понимании ООП, разговоры о типизации, функциональщина - это академические заморочки, когда народ думает об объектах и их отношениях, умно разговаривает о инкапсуляии и безопасности, вместо того, чтобы делать дело. Поэтому тут существенная доля прагматзима, который он понимает по-своему.

В любом деле всегда найдутся свои "астральные архитекторы" Улыбка
Кто-то пространно вещает об отношении объектов, а кто-то хреначит код и ему збс Гы-гы
Хорошо, если есть возможность выбирать метод в любой момент времени по желанию и удобству, типа зачем городить классы со всеми их отношениями до десятого колена и ещё потом рожать один-единственный объект (С++, если не ошибаюсь - давно на нём не кодил), если нужна просто функция где-то в глобалке.
Опять же, родство с анонимными методами и лямбдой - из той же серии, на фига городить огород, если можно вписать нужный код прямо тут и в здесь. И рефакторинг там же...
Только есть ещё вероятность, что обалдеешь такой код потом патчить, т.к. разобраться в нём будет сложнее, особенно если писал его не ты...

добавлено спустя 4 минуты:
Minx :
Шаблоны в начале он на корню отрицал. Где-то в районе февральского видео на вопрос про них сказал, что типа против, но если желающих будет много, то посмотрим. Сейчас вот в документе шаблоны и вообще мета отрицаются.

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

А вот синтаксический сахар у него во многие поля. И это правильно.
_________________
Трещит земля как пустой орех
Как щепка трещит броня

Последний раз редактировалось: Guest (19:00 18-09-2015), всего редактировалось 1 раз
    Добавлено: 19:00 18-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Guest :
Хорошо, если есть возможность выбирать метод в любой момент времени по желанию и удобству, типа зачем городить классы со всеми их отношениями до десятого колена и ещё потом рожать один-единственный объект (С++, если не ошибаюсь - давно на нём не кодил), если нужна просто функция где-то в глобалке.

Всецело понимаю (но не всегда принимаю (; ) такой подход, но что касается С++, то это не ООП, а конгломерат парадигм, и на плюсах можешь что через глобалку одной функцией, что жестким ООП, все на выбор разработчика.

Guest :
А вот синтаксический сахар у него во многие поля. И это правильно.

А вот с этим я полностью согласен, что плюсы достаточно многословны, и ещё они во многом строги.

Ещё прикольно было, что пару хотелок Джонатана реализовались в 11-х плюсах.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (00:37 20-09-2015), всего редактировалось 1 раз
    Добавлено: 00:37 20-09-2015   
Guest
 2075 EGP


Модератор
Рейтинг канала: 5(167)
Репутация: 376
Сообщения: 27975
Откуда: Моск.
Зарегистрирован: 12.10.2004
http://bash.im/quote/420672 :
Вася и Петя одновременно начали писать один и тот же продукт.
Вася был «ориентирован на результат» и начал сразу писать говнокод не продумав толком архитектуру.
А Петя месяц разрабатывал архитектуру, месяц делал удобный интуитивный интерфейс, которому позавидывал бы Джони Айв, потом месяц писал тесты, потом два месяца писал сам код и получил идеальное стабильное приложение.
Но Вася выпустил уже через месяц первую версию программы, пусть и не идеальную, пусть с багами, но рабочую, и начал её продавать. Ещё через месяц выпустил вторую версию исправляющие баги первой и добавляющие новые баги. Ещё через месяц на доходы от продаж нанял двух толковых программеров, которые за два месяца перелопатили весь код, согласно пожеланиям пользователей допилили интерфейс и выпустили третью версию программы.
Итого, через пять месяцев у Васи было два работника, куча клиентов и сносно работающее приложение отвечающее желаниям клиентов.
У Пети было вылизанное никому не известное приложение, минус на банковском счёте и ни одного клиента.
В завершение этого выдуманного примера можно сказать, что через полгода Вася купил все наработки Пети, Петю взял в штат тестировщиком, а сам по пьяни разбился на своём новеньком Туареге

_________________
Трещит земля как пустой орех
Как щепка трещит броня
    Добавлено: 05:36 21-09-2015   
Diff
 708 EGP


Модератор
Рейтинг канала: 2(11)
Репутация: 44
Сообщения: 4179
Откуда: Сферическая Земля в вакууме.
Зарегистрирован: 04.07.2003
Guest :
Вот он делает такой C-подобный язык с управляемой вручную памятью, безобъектной моделью, без idiot-proof решений - мол, программисты геймдева не бояццо ссылок, крашей и багов, и если они хорошие программисты - то не так уж много этих крашей и багов будет...

Он пытается изобрести Rust?

Guest :
Алсо, я не понимаю, чего такого плохого в объектах классов

Возможно, плохо то что все считают что ООП - это обязательно классы и иного не представляют. В этом смысле всем поднасрал С++, возведя свою реализацию в стандарт. А ведь можно вспомнить слова Алана Кея "изобретая ООП, я совершенно точно не имел в виду что-то вроде С++".
Возможно, под отрицанием ООП автор имеет в виду отрицание страуструповского подхода.

Guest :
и чего такого хорошего в ручном управлении памятью. Ну ОК, это действительно быстро (хотя скорее плавно и более предсказуемо, чем GC), но с тем же успехом можно засандалить утечку или переполнение в неочевидном месте.

Как раз в русте на эту тему очень много подумано. Насколько удачно - сказать не берусь, чтобы плавать надо плавать.
_________________
Конец света в конце тоннеля
    Добавлено: 21:31 21-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Diff :
Возможно, плохо то что все считают что ООП - это обязательно классы и иного не представляют. В этом смысле всем поднасрал С++, возведя свою реализацию в стандарт. А ведь можно вспомнить слова Алана Кея "изобретая ООП, я совершенно точно не имел в виду что-то вроде С++".
Возможно, под отрицанием ООП автор имеет в виду отрицание страуструповского подхода.

А можно поконкретнее?

добавлено спустя 2 минуты:
Rust Джонатан в какой-то мере знает и на него ссылается периодически.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (22:57 21-09-2015), всего редактировалось 1 раз
    Добавлено: 22:57 21-09-2015   
Diff
 708 EGP


Модератор
Рейтинг канала: 2(11)
Репутация: 44
Сообщения: 4179
Откуда: Сферическая Земля в вакууме.
Зарегистрирован: 04.07.2003
Minx :
А можно поконкретнее?

Для поконкретнее надо читать этого вашего Джонатана, что именно его не устраивает, а мне сейчас лень.
Вообще критика ООП появилась не вчера, его проблемы давно муссируются столпами программирования вроде Дейкстры, Вирта, Степанова и многих других. Причем обычно критикуется обычно именно "классовая" модель а ля C++.
Насколько я понимаю, новые языки вроде того же руста или го пытаются освежить ООП не отказываясь от него.
_________________
Конец света в конце тоннеля
    Добавлено: 23:31 21-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Diff :
Для поконкретнее надо читать этого вашего Джонатана

Он в первых видео сравнивает свои хотелки с плюсами и рустом. И оба они его не устраивают.

Diff :
Вообще критика ООП появилась не вчера, его проблемы давно муссируются столпами программирования вроде Дейкстры, Вирта, Степанова и многих других.

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

В википедии по цитатам
Diff :
Дейкстры, Вирта, Степанова
ничего конкретного.

Diff :
Причем обычно критикуется обычно именно "классовая" модель а ля C++.

ООП по опредеднию это классы, объекты и иерархия. А что за не-классовая модель не понятно. Откуда вопрос про подробнее.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (00:08 22-09-2015), всего редактировалось 1 раз
    Добавлено: 23:55 21-09-2015   
Diff
 708 EGP


Модератор
Рейтинг канала: 2(11)
Репутация: 44
Сообщения: 4179
Откуда: Сферическая Земля в вакууме.
Зарегистрирован: 04.07.2003
Minx :
Степанов например говорил

 Cкрытый текст   (кликните здесь для просмотра)

Цитата:
Я уверен, что парадигма ООП методологически неверна. Она начинает с построения классов. Это как если бы математики начинали бы с аксиом. Но реально никто не начинает с аксиом, все начинают с доказательств. Только когда найден набор подходящих доказательств, только тогда на этой основе выводится аксиома. Т.е. в математике вы заканчиваете аксиомой. Тоже самое и с программированием: сначала вы должны начинать развивать алгоритмы, и только в конце этой работы вы приходите к тому, что оказываетесь в состоянии сформулировать четкие и непротиворечивые интерфейсы. Именно из-за этой неразберихи в ООП так популярен рефакторинг – из-за ущербности парадигмы вы просто обречены на переписывание программы, уже в тот самый момент, когда только задумали её спроектировать в ООП-стиле


Minx :
ООП по опредеднию это классы, объекты и иерархия.

Цитата:
OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things.

Как видишь, слова класс здесь нету.
И в го классов нету. И в русте нету. А ООП есть. Насколько удачное - сейчас спорить не готов.
_________________
Конец света в конце тоннеля
    Добавлено: 00:21 22-09-2015   
Minx
 979 EGP


Модератор
Рейтинг канала: 6(328)
Репутация: 135
Сообщения: 10528
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Diff :
Я уверен, что парадигма ООП методологически неверна. Она начинает с построения классов.

Я наверно давно читал Буча и остальных классиков ООП, потому как построение программы с классов не начинаю. Они появляются только по мере надобности.

Мнение в принципе понятно, но вот 100% с ним совсем не согласен.

Diff :
Как видишь, слова класс здесь нету.
И в го классов нету. И в русте нету. А ООП есть. Насколько удачное - сейчас спорить не готов.

Зато есть классы типов и интерфейсы с подтипами.. Многовато общего.

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

И народ говорит, что ООП приходится эмулировать, либо оно спрятано.

Вообще, надо копать глубже.. потому что поверхностно выглядит как свой блекджек со своей философией, в котором если хочется сделать что-то чисто ооп-шное, то приходится его делать со скрежетом. А прямой поддержки ООП нет.

добавлено спустя 8 минут:
Прикольно, что эту критику ООП

Цитата:
Эдсгер Дейкстра указывал: «…то, о чём общество в большинстве случаев просит — это змеиное масло. Естественно, „змеиное масло“ имеет очень впечатляющие названия, иначе будет очень трудно что-то продать: „Структурный анализ и Дизайн“, „Программная инженерия“, „Модели зрелости“, „Управляющие информационные системы“ (Management Information Systems), „Интегрированные среды поддержки проектов“, „Объектная ориентированность“, „Реинжиниринг бизнес-процессов“…»

можно применить к практически к любому языку или технологии (;
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (01:09 22-09-2015), всего редактировалось 2 раз(а)
    Добавлено: 01:09 22-09-2015   
Diff
 708 EGP


Модератор
Рейтинг канала: 2(11)
Репутация: 44
Сообщения: 4179
Откуда: Сферическая Земля в вакууме.
Зарегистрирован: 04.07.2003
Minx :
И народ говорит, что ООП приходится эмулировать, либо оно спрятано.
Minx :
если хочется сделать что-то чисто ооп-шное, то приходится его делать со скрежетом

Это скорее всего происходит когда пытаются тупо в лоб применять классический подход "разбил на классы, построил иерархию, придумал методы". Он и не должен работать. А вот как они собираются заставлять разработчиков переучиваться - вопрос интересный. Хотя вот go вроде как взлетает.

Цитата:
James Gosling (создатель Java) был приглашён делать доклад. Во время памятной сессии вопросов и ответов кто-то спросил его: «Если бы вы могли сделать Java заново, что бы вы изменили?». «Я бы выкинул классы», ответил он.

Тоже неплохо Улыбка.
_________________
Конец света в конце тоннеля
    Добавлено: 01:30 22-09-2015   
Guest
 2075 EGP


Модератор
Рейтинг канала: 5(167)
Репутация: 376
Сообщения: 27975
Откуда: Моск.
Зарегистрирован: 12.10.2004
Ну так ООП в чистом виде - это не про классы, а про объекты. Которые в свою очередь должны быть чёрными ящиками с торчащими проводками интерфейсов и всё. Что ты упихаешь в ящик и какого размера он будет - на твоей совести и только. А разбитие на классы, обобщение, повторное использование и т.д. это уже больше как вопрос удобства и неповторямости кода...

Но совсем без рефакторинга тоже ИМХО не обойтись. Как и без кучи сильно связанного кода на этапе прототипа (это я про игры).
_________________
Трещит земля как пустой орех
Как щепка трещит броня
    Добавлено: 04:48 22-09-2015   
Канал Игры Мечты: «Два пути - количество или качество игр»
На страницу: Пред.  1, 2, 3, 4, 5  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Я смотрю исходя из того, что мы пришли сверху, значит там зад. (объяснил Wite King)

  » Два пути - количество или качество игр | страница 2
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18