• На чем лучше написать, или где взять движок для 2D (2.5D) MMORPG?

    lexxpavlov
    @lexxpavlov
    Программист, преподаватель
    Unity3d будет отличным началом для вас. Юнити - мощнейшая платформа, на которой можно сделать всё, что угодно. В том числе и 2d MMO.
    Но это будет не просто, сразу предупреждаю. Сделать платформер или 2д-бродилку на юнити можно очень быстро, но вот именно сделать ММО - это задача гораздо сложнее.
    (В Unity3d 5 сейчас разрабатывают новую платформу для работы с сетью, и там они обещают сильно упростить работу с сетью, в том числе в MMO-проектах).
    Есть некоторые сложности с бесшовностью, но они решаются. Юнити уже сейчас обладает огромным функционалом, покрывающим все базовые требования к любой игре, плюс есть обширный магазин аддонов (ассетов).
    Платформа любая - и клиент, и браузер, и мобилки, и даже консоли.
    Язык программирования - основной C#, можно писать на Javascript (точнее, язык, очень похожий на javascipt) и Boo (что-то типа Python).
    Ответ написан
    4 комментария
  • Где хранить данные сайта?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Независимо от того, благородная у Вас цель или это способ заработка — Вы поступаете неправильно.
    Исходя из вопроса — Вы не обладаете знаниями для того, чтобы сделать сайт с использованием серверных языков или cms. А обучение потребует времени.
    Логичнее организовать сбор средств или выделить деньги самой церкви (не знаю, как там это все происходит) и поручить сделать сайт фрилансеру / веб-студии. Уверен, что есть люди, которые специализируются на подобной тематике и не возьмут много денег.
    Ответ написан
    Комментировать
  • Где хранить данные сайта?

    @slip31
    С Божьей помощью, помолясь. После молитвы возьмите Mysql
    Ответ написан
    Комментировать
  • Где хранить данные сайта?

    Создайте 365 страниц под разные праздники заранее и каждый вечер в 23:59 заходите на сайт и меняйте страницу на нужную, с сегодняшним праздником! Profit!
    Ответ написан
    Комментировать
  • Объясните что такое полиморфизм простыми словами ?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Да ладно, парни. Ну хватит уже, к чему такие сложности? Берём и читаем. Вообще совсем не обязательно читать про архитектуру и абстракции именно по своему языку, хотя javascript в этом плане родился уродом.

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

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

    С объектами и классами разобрались, а что же там с нашими стаканами и велосипедами. Мы уже поняли, что всё это объект, то есть грубо можно все объекты наследовать от какого-нибудь суперпредка, суперкласса, что и реализовано в некоторых языках. Но что другого общего между скейтом и стаканом, например? Конечно, можно углубляться и считать, что они все из молекул, и они все из твёрдых веществ. Однако это всё бред и СПГС, так что ответ прост - да ничего. То есть это совершенно разные объекты с совершенно разным функционалом. Более того - естесственно компьютерные модели и иерархии будут сильно отличатся от физик и химий. И это нормально, вопрос об адекватностях моделей ставиться лишь когда модель неадекватна, а до тех пор пилить можно что угодно, лишь бы работало.

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

    Однако что с остальным? У нас ещё абстракция, инкапсуляция и наследование. Ок, начнём с наследования, так оно наиболее близко. Вот что у нас общего между стаканом и кружкой? Ну в оба можно налить воду, но у кружки есть ручка чтобы держаться. То есть можно придумать некий общий класс - ёмкость. Однако что это за класс? Можно например за этот класс взять стакан, тогда все ёмкости по дефолту стаканы, а всё остальное - видоизменённые стаканы. Но кому-то больше нравяться кувшины, например некоторые чики насят их на голове, считая что это удобно. Ну и пусть носят, но как-то же решить надо, что главнее и идеальнее. Так вот - недостяжимый идеал и есть главный - это называется абстрактный класс. То есть ёмкость, что невозможно создать, для которого нет полного чертежа. А все чертежи, что дополнили до полного - есть наследованные классы от класса ёмкость.

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

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

    Таким образом, абстракция невозможна без инкапсуляции и наследовании, как невозможен полиморфизм без, собственно, наследования. Ну а полиморфизм невозможен ещё и без инкапсуляции, которая банально бесполезна без наследования и полиморфизма. Вот такие тут треугольники с пирогами. Жаль только про пирог наврали. И про день рожденье.
    Ответ написан
    3 комментария
  • Какой Wi-Fi адаптер PCI-E Linux-совместимый выбрать?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    Любой Intel заводится с пол пинка. В формате PCI-E выбор не очень, лучше взять приличный в mini формате и воткнуть через переходник, он копеечный.
    Ответ написан
    Комментировать
  • Веб-разработчик, программист или нет?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Если человек пишет код - он программист.
    Если он не пишет код - он не программист.
    Все просто.
    Ответ написан
    3 комментария
  • Надо ли задававать в @media - only screen ?

    A_Psycho
    @A_Psycho
    Первый вариант указывается для всех устройств вывода (ТВ, телефоны, экраны, версия для печати, ...), а во втором вы указываете "only screen" - только для мониторов. В таком случае правила в теле медиа-запроса будут проигнорированы при открытии с любых других устройств вывода.
    Статья про media-запросы
    Ответ написан
    Комментировать
  • Где найти простой пример выползающей менюшки?

    @TANK_IST
    Самому очень просто написать
    Вот простейший пример jsfiddle.net/qWm3B
    Ответ написан
    1 комментарий
  • Динамический контент без перезагрузки страницы. Как подойти к реализации?

    AlexPTS
    @AlexPTS
    Full stack веб разработчик
    Aliance, прав. Посмотрите в сторону веб сокетов.
    Ответ написан
    Комментировать
  • Динамический контент без перезагрузки страницы. Как подойти к реализации?

    Это сделано через сокеты. Сервер при возникновении некого события посылает сокет, а клиент его принимает и обрабатывает.
    Ответ написан
    3 комментария
  • С какой механикой Cherry MX выбрать клавиатуру - Blue или Brown?

    Да не выберите вы так ничего. Подбор клавиатуры - это ОЧЕНЬ субъективная вещь. Придётся попробовать все варианты, чтобы составить собственное мнение.

    Blue и Brown - это клавиши, на которых предполагается печатать, не нажимая клавиши до конца. Вот мне так не удобно, а потому вполне подходят Black.

    Но, рассуждая логически, Blue могут оказаться удобнее для печати, поскольку точка отпускания у них находится выше точки срабатывания. Это исключит многократные нажатия из-за "дрожания" пальца в районе точки срабатывания. А такое дрожание может возникнуть со временем, если приучитесь нажимать кнопки не до конца. Это чем-то схоже с эффектом "заигрывания" произведений на музыкальных инструментах.
    Ответ написан
    Комментировать
  • Почему компании скрывают, сколько платят своим сотрудникам?

    Что бы сотрудники по одному не бегали к начальству и не клянчили "А вот Вася получает больше меня а делает меньше"!
    Ответ написан
    Комментировать
  • Почему компании скрывают, сколько платят своим сотрудникам?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Все пишут о том что зарплату не надо писать когда она ниже рынка.
    Это понятно и очевидно.
    Но на практике зарплату не стоит писать и когда она выше рынка, и вот почему:

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

    2. Озвученная заранее верхняя планка зарплаты может отпугнуть спецов которые хотят больше чем указано (хотя в реальности во многих компаниях есть возможность получить оффер выше того что написано в вакансии)

    3. Озвученная зарплата выше рынка может отпугнуть не уверенных в себе, сомневающихся "там наверное все очень сложно" итд. Для меня это странно - но такие люди действительно есть и их немало.
    Ответ написан
    2 комментария
  • Как понять принципы ООП?

    IlyaEvseev
    @IlyaEvseev
    Opensource geek
    Ищите в гугле "документация turbo pascal".
    В руководстве программиста есть глава про ООП.
    Из всего, что /me читал про ООП, это самое доходчивое описание.
    Наследование, инкапсуляция и полиморфизм там описываются.

    Компонентное программирование как развитие ООП
    отлично разъясняется в первых главах книги Дона Бокса "Essential COM".
    Ответ написан
    2 комментария
  • Как понять принципы ООП?

    onqu
    @onqu
    weasy
    Чтобы понять принципы ООП, книги не требуются. Взгляните вокруг себя. Всмотритесь в любой объект в реальном мире, опишите его наиболее подробно (материал, размер, цвет, вес, плотность, составные части и т.д.), это будут его свойства. Опишите, что и каким образом этот объект умеет делать (включаться, складываться, кушать электроэнергию, взаимодействовать с другими объектами или окружающей средой и т.д.), это будут его методы. Подумайте, для чего используется этот объект, что ему нужно изменить или добавить, чтобы использовать в других условиях или целях, и на основе всех собранных знаний создать более удобный экземпляр, это будет наследование и полиморфизм. Теперь немедленно забудьте обо всем, используйте объект по назначению, это будет инкапсуляция. Дальше останутся только тонкости выбранного Вами языка, шаблоны, методологии и прочаяие ересь тренды.
    Ответ написан
    2 комментария
  • Как понять принципы ООП?

    @quizzer
    Читайте книги про паттерны проектирования, на примере той же Javы например
    Ответ написан
    Комментировать