| Разработка и ромхакинг > Ромхакинг и программирование |
| какие программы использовать для создания своих игр? |
| << < (6/11) > >> |
| Mr2:
Научил зайца ходить. :) |
| r57shell:
Допустим надо добавить кого-нибудь ещё, то ты его заного будешь учить ходить?) Вот в этом и суть движков. Учишь одного - научиваются все ). образно. Поэтому надо например для всех персонажей, какой-то интерфейс придумывать, чтобы не надо было каждого учить одинаковому, а чтобы их отличия состояли только из их свойств. И затем можно будет сделать сразу(образно) много персонажей)). Кроме того, если вдруг найдётся то, чего неустраивает, не прийдётся исправлять всех по отдельности, достаточно будет изменить этот "интерфейс". Это один из принципов OOP (Object Oriented Programming - Объектно Ориентированное Программирование). Вообще ненавижу фанатов OOP. Они начинают умно говорить о всяких абстракциях, интерфейсах, делегировании, обобщённых классах и прочей фигне, которая на самом деле, ничего иного как метод реализаци OOP. Фанатеть можно сколько угодно, а для меня OOP важно только парочкой принципов: объекты можно сказать "сами за себя отвечают"(не важно какая у них внутри реализация, если сказал ему идти то он идёт), скрывать от другого программиста "критические" переменные (при изменении которых может произойти сбой). Ито, и эти принципы не обязательны. |
| Mr2:
--- Цитата: r57shell от 28 Август 2010, 05:53:18 ---Допустим надо добавить кого-нибудь ещё, то ты его заного будешь учить ходить?) --- Конец цитаты --- :) Вместе с зайцем я сам первый раз шагнул. Зайца вполне достаточно для пробы, а так конечно ооп для какого нибудь крупномасштабного проэкта :blush:. В данном эксперименте(1массив и 4 цикла(при желании и до двух можно довести)) ооп избыточно. ;) Как я понял Joypad можно опрашивать только через Derect X? --- Цитата: r57shell от 28 Август 2010, 05:53:18 --- Они начинают умно говорить о всяких абстракциях, интерфейсах, делегировании, обобщённых классах и прочей фигне, --- Конец цитаты --- Да это просто Ж, столько терминов понавыдумывали, да к тому же и не могут понятно объяснить их значение..... |
| HoRRoR:
--- Цитата: r57shell от 28 Август 2010, 05:53:18 ---Вообще ненавижу фанатов OOP. Они начинают умно говорить о всяких абстракциях, интерфейсах, делегировании, обобщённых классах и прочей фигне, которая на самом деле, ничего иного как метод реализаци OOP. Фанатеть можно сколько угодно, а для меня OOP важно только парочкой принципов: объекты можно сказать "сами за себя отвечают"(не важно какая у них внутри реализация, если сказал ему идти то он идёт), скрывать от другого программиста "критические" переменные (при изменении которых может произойти сбой). Ито, и эти принципы не обязательны. --- Конец цитаты --- :lol: :lol: :lol: (извиняюсь, не сдержался) |
| r57shell:
--- Цитата: HoRRoR от 28 Август 2010, 13:00:15 --- :lol: :lol: :lol: (извиняюсь, не сдержался) --- Конец цитаты --- Я также смеялся над преподом ООП когда он шнягу всякую задвигал по ООП, и не только над преподом, над многими. простой пример: язык C. На нём вить можно на ООП фигачить, а в их смысле (в фанатском) - нет. Т.к. там нет абстракций и интерфейсов. и прочей шняги. Ах, да, даже классов нет. |
| HoRRoR:
--- Цитата ---На нём вить можно на ООП фигачить --- Конец цитаты --- Эм... Приведи хоть один пример. -- Хотя да, помещать в структуры указатели на "методы" :D --- Цитата ---Т.к. там нет абстракций и интерфейсов. и прочей шняги. --- Конец цитаты --- Ну да, если с чем-то не знаком - надо обязательно считать это шнягой... |
| r57shell:
--- Цитата: HoRRoR от 28 Август 2010, 14:32:10 ---Эм... Приведи хоть один пример. --- Конец цитаты --- Простой пример WinAPI - почти весь основан на объектах. Таких как HRGN, HWND, HANDLE, и прочих, однако они все типа void *. А методы к ним это функции SetWindowRgn(hwnd,rgn) и прочее. Также на C пишется на принципах ооп. Если надо допустим делегирование, то просто добавляется свойство, с указателем на другой "объект" - который уже будет делегантом или как там я уже забыл. --- Цитата: HoRRoR от 28 Август 2010, 14:32:10 ---Ну да, если с чем-то не знаком - надо обязательно считать это шнягой... --- Конец цитаты --- Заблуждаешься что незнаком. Знаком с большинством инструментов Java и C++ для ООP такие как шаблонные классы, функции - (C++), обобщённые типы (Java), интерфейсами, делегированием, абстракциями, и прочей фигнёй. Может чего ещё нового придумали, с чем не знаком. Добавлено позже: Добавление: обычно функция(объект, параметры) вот так методы вызываются. Даже в ASM логично используют. Бывает за счёт макросов. И с asm x86 я тоже знаком. Добавлено позже: Принцип ООП сокрытия достигается соглашением работать только через Get, Set. Добавлено позже: О! я даже вспомнил термин. Это называется "инкапсуляция". Умными названиями только и кишит ). |
| HoRRoR:
--- Цитата ---Простой пример WinAPI - почти весь основан на объектах. Таких как HRGN, HWND, HANDLE, и прочих, однако они все типа void *. А методы к ним это функции SetWindowRgn(hwnd,rgn) и прочее. Также на C пишется на принципах ооп. Если надо допустим делегирование, то просто добавляется свойство, с указателем на другой "объект" - который уже будет делегантом или как там я уже забыл. --- Конец цитаты --- Ой не могу :lol: Ты даже понятие ООП неправильно понимаешь, чего уж об остальном говорить =) --- Цитата ---Заблуждаешься что незнаком. --- Конец цитаты --- По твоему отношение ко всей этой "шняге" можно сделать только такой вывод. И хватит параллельно написанию поста гуглить и сёрфить по статьям ;) |
| r57shell:
--- Цитата: HoRRoR от 28 Август 2010, 15:11:04 ---И хватит параллельно написанию поста гуглить и сёрфить по статьям ;) --- Конец цитаты --- Делать мне нечего... Маладец съешь солёный огурец. И желаю тебе, удачи). |
| AjaxVS:
--- Цитата: r57shell ---Вообще ненавижу фанатов OOP. Они начинают умно говорить о всяких абстракциях, интерфейсах, делегировании, обобщённых классах и прочей фигне, которая на самом деле, ничего иного как метод реализаци OOP. --- Конец цитаты --- это и есть современное программирование :) где процесс проектирования на порядок более значим, чем получение результата с минимальными затратами. никому не нравится, но искоренить уже не получится. помню, мне все время говорили "да, ты можешь обойтись без ООП, пока делаешь небольшие программы". но я делал на VB все что хотел, измерял количество кода в тысячах строк, и все ждал, когда же уже мне понадобится этот ООП :D сейчас я перешел на C++, делаю такие штуки как прототипы гравитации, но ООП все так же использую разве что для галочки, чтобы код не стыдно показывать было ^_^ так что забей, программистам - программирование, проектировщикам - ООП. им тоже кушать надо. |
| r57shell:
Ято забиваю, просто хотел открыть другим глаза на то, что на ООП зацикливаться нестоит и фанатеть, т.к. это бред. Без ООП сложно просто разделить работу между людьми. |
| aptyp:
По моему наличие в языке возможности полиморфизма уже делает из него ООП точнее оно присутствует в большинстве высокоуровневых кодов и даже если программер ни в состоянии это понять |
| r57shell:
Но всёравно если этот полиморфизм не использовать то уже нет никакого ООП ))). А использование как я в С пример привёл это и есть уже юзать полиморфизм. Даже на мего ООП языках можно писать без ООП ). |
| BmpCorp:
--- Цитата: r57shell ---Но всёравно если этот полиморфизм не использовать то уже нет никакого ООП ))) --- Конец цитаты --- А почему бы его не использовать? При создании более-менее масштабной игры без полиморфизма и наследования обходиться можно, но по-моему глупо - первый же приведённый пример с героем и врагами это доказывает. |
| r57shell:
BmpCorp, эмм вы о чём простите? Цитата которую вы вставили просто утверждение, и там нет ни каких - "не используй/обязательно используй". А вот эти слова: --- Цитата: BmpCorp от 28 Август 2010, 18:53:40 ---А почему бы его не использовать? --- Конец цитаты --- Меня наводят на мысль, что я говорил "не использовать" где-то. И ещё раз для закрепления, я сказал не стоит фанатеть. Не знаю как вы, а я слово "фанатеть" воспринимаю расхваливание постоянное, и толкание куда только угодно, лижбы было. Видал я один проэкт. Около 20 файлов, в каждом по 10 строк от силы - вот что значит, фанатизм OOP. А в остальном согласен. А на закуску: мы с друзьями раздували на тему, создать в Java класс. Пока умолчу его имя ). Есть такие классы как Clonable, Closeable, и так далее - как маркеры. Вот мы и прикололись: --- Код: ---class IntegerCloseable : implements Closeable { void close() { //do nothing } ... } ... IntegerCloseable a= new IntegerCloseable(5); ... a.close(); a.close(); a.close(); a.close(); //amin'! сlass NothingDoAble { public void doNothing() { //let's do this! } }; --- Конец кода --- И ещё одна закуска, называется падла в проекте по полной программе: --- Код: ---#define true (Math.random()>0.5) --- Конец кода --- а для тех кто сомневается - компилится, ещё как!) :lol: |
| BmpCorp:
--- Цитата: r57shell ---Меня наводят на мысль, что я говорил "не использовать" где-то. --- Конец цитаты --- Я не об этом, а конкретно про полиморфизм и наследование. Так как --- Цитата: r57shell ---для меня OOP важно только парочкой принципов: объекты можно сказать "сами за себя отвечают"(не важно какая у них внутри реализация, если сказал ему идти то он идёт), скрывать от другого программиста "критические" переменные (при изменении которых может произойти сбой). --- Конец цитаты --- инкапсуляцию я как раз почти нигде не использую (в принципе, потому что скрывать мне и не от кого, я работаю один), а вот вышеупомянутые приёмы - обязательно. А про фанатизм, да ещё и в программировании, это точно не ко мне :lol: |
| HoRRoR:
Господи, человек боится ООП, с негативом называет тех, кто его использует, "фанатами" или как там ещё, постоянно выдаёт за прописные истины какую-то хрень, а сам никакой компетентности не внушает нисколько. И как вообще воспринимать его слова? ООП - отличный способ хорошей организации проекта. Отказываться от ООП имеет смысл только в низкоуровневых приложениях где очень важна производительность или же использование ООП - слишком большая роскошь. Как бы многие, не осилившие ООП, не ненавидели его, по работоспособности приложения, разработанные с ООП, не отличаются от проектов, основанных на функциональных принципах, ведь ООП как таковое существует только в исходном коде. --- Цитата ---Вот мы и прикололись --- Конец цитаты --- И в чём прикол? |
| r57shell:
--- Цитата: HoRRoR от 28 Август 2010, 19:20:48 ---Господи, человек боится ООП, с негативом называет тех, кто его использует, "фанатами" или как там ещё, постоянно выдаёт за прописные истины какую-то хрень, а сам никакой компетентности не внушает нисколько. И как вообще воспринимать его слова? --- Конец цитаты --- Продчёркнутое - это я подчеркнул, чтобы было понятно, дак вот. Я этого не говорил. Вспоминается цитата, может кто до меня так говорил, но как-то раз я сказанул "как может читать между строк тот, кто даже сами строки не может прочесть". Дак вот, я говорил подчёркнутое? Находишь различие между фанатизмом и использованием? Ещё (не знаю какой раз повторюсь), я сказал не стоит фанатеть, про использование, я соглашался, смотри выше, много примеров. Я не говорил что те кто используют - "фанаты". Прошу цитату встудию. А на счёт компетентности, на себя посмотри, сначала не правильно поймёт, а потом наежяет - тоже не тру. А мне лично честно пофиг как я выглежу со стороны, т.к. я такой как есть, и от того что обо мне думают, ничего не изменится. И я сам в праве выбирать, с кем общаться а с кем нет. Непомню чья цитата: "Уж лучше голодать, чем что попало есть; Быть лучше одному, чем с кем попало." --- Цитата: HoRRoR от 28 Август 2010, 19:20:48 ---Отказываться от ООП имеет смысл только в низкоуровневых приложениях где очень важна производительность или же использование ООП - слишком большая роскошь. --- Конец цитаты --- Нестоит сразу всё под одну рамку загонять, т.к. кто знает какие могут быть исключения. --- Цитата: HoRRoR от 28 Август 2010, 19:20:48 ---Как бы многие, не осилившие ООП, не ненавидели его, по работоспособности приложения, разработанные с ООП, не отличаются от проектов, основанных на функциональных принципах, ведь ООП как таковое существует только в исходном коде. --- Конец цитаты --- Согласен, но это не означает что нужно его толкать куда угодно. --- Цитата: HoRRoR от 28 Август 2010, 19:20:48 ---И в чём прикол? --- Конец цитаты --- Видимо фанатам OOP не понять. Это собственно пародия на фанатство в OOP. Так оно со стороны выгледит. |
| HoRRoR:
Что в твоём понимании значит "фанатеть"? Это какой-то новый термин в программировании или что? Или фанатеть - говорить, как ты говоришь, всякие умные слова использовать ООП? Объясни, ибо в таком случае я вообще не понимаю, кого ты подразумеваешь под фанатеющими от ООП. --- Цитата ---Нестоит сразу всё под одну рамку загонять, т.к. кто знает какие могут быть исключения. --- Конец цитаты --- Исключения есть всегда как само собой разумеющееся, не буду же я на ходу придумывать примеры исключений. --- Цитата ---Согласен, но это не означает что нужно его толкать куда угодно. --- Конец цитаты --- Что значит куда угодно? Где ты, например, не видишь места ООП? --- Цитата ---Видимо фанатам OOP не понять. Это собственно пародия на фанатство в OOP. Так оно со стороны выгледит. --- Конец цитаты --- facepalm.jpg |
| r57shell:
--- Цитата: HoRRoR от 28 Август 2010, 19:49:02 ---Что в твоём понимании значит "фанатеть"? --- Конец цитаты --- Что принято обществом понимать, а именно : Фанатеть(1-й смысл) Википедия: Фанатизм(я знаю ей не все верят) 1-й абзац. Собственно теперь, процитируем себя же. --- Цитата: r57shell от 28 Август 2010, 19:08:10 ---Не знаю как вы, а я слово "фанатеть" воспринимаю расхваливание постоянное, и толкание куда только угодно, лижбы было. Видал я один проэкт. Около 20 файлов, в каждом по 10 строк от силы - вот что значит, фанатизм OOP. --- Конец цитаты --- Замечу, что это из этой темы, и было написано до твоего ответа. |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |