а зачем печатать можно и в цифре рассматривать да и удобнее
Картинку 3000 на 3000?! У Вас странные представления об удобстве.
Добавлено (31 августа 2016, 17:30) --------------------------------------------- Питерцы, кстати, могли на днях поржать, когда значительно меньшую схему "протечек на стадионе "Зенит-арена"" пытались "доступно" и "удобно" показать по телевизору.
Добавлено (01 сентября 2016, 15:10) --------------------------------------------- Что-то этот оффтоп о MindMap-ах у всех отбил желание говорить о книгах. А, ведь, "от этого противного" можно сделать выводы: 1. MindMap чего-то стоит только тогда, когда обозрим, т.е. влезает на одну страницу. Но одну страницу человек вполне способен представить и умозрительно... 2. Вместить на одну страницу больше, чем на нее влезает, можно только одним способом - изобретя более компактный язык (программирования, эл.схем и т.п.). Применение стандартных обозначений, как в MindMap или, например, в совсем древнем Framework (1984) емкости страниц не увеличивают. 3. Очень часто двумерное представление информации "на странице" используется для представления одномерной информации. Второе измерение служит только большей наглядности: те же MindMap-ы, Windows-диалоги... Это дало повод Раскину в своей книге про интерфейсы утверждать, что единственный естественный вид информации - последовательный.
Мои изыскания привели к следующим выводам (по тем же пунктам): 1. Одностраничный рисунок на салфетке или пачке "Беломора" стоит гораздо больше всяких MindMap-ов. 2. Настоящей причиной этой темы является вопрос о совмещении описания с описанием-языка-описания. 3. Все интерфейсы, с которыми я имел дело, вполне вмещаются в "две страницы" (важная и текущая информация). Одной страницы (т.е. хранения информации исключительно последовательно) часто не хватает.
Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Сообщение отредактировал Gudleifr - Среда, 31 Августа 2016, 17:31
И даже так: Уменьшено в 8 раз. Какая, уж тут, "доступность понимания"?! Разве что, на плоттере A1 печатать... Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Такая карта сразу дает представление о всех важных узла.
Дык, и я о том же. Эта фича работает только на очень простых информационных массивах. Ее применимость для серьезных проектов - примерно на уровне тех чертиков, что чертим на совещаниях. (Я обычно пытаюсь рисовать смысл своих проекты, прежде чем их программировать... Выразительность, применимость и информативность рисунка на салфетке гораздо выше MindMap-овских). Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Добавлено (31 августа 2016, 15:30) --------------------------------------------- P.S. Если кому пригодится, мой опыт работы с MindMap (это было написано в 2011 году). Мои карты:
DIRTSIDE II & STARGRUNT II. Т.к. в то время работа над переводом правил этих игр была вынужденно приостановлена на самом переломном месте – переосмыслении представления на моей страничке, то карта создавалась с целью сохранить как можно больше информации до момента восстановления работ. Формат входных данных – текстовая база данных моего формата (ГЛЮКВА). Ветви естественно расползлись влево и вправо. Слева накопилось 4 очевидных уровня: "Первоисточники" – <Книга> – <Глава> – <Параграф>, и пара более коротких ветвей "Мои комментарии" и "Огрызки из других источников". Справа – ветвление определялось моим новым видением правил изложения правил (до 5 уровней вложения). Процесс дальнейшего переформатирования т.о. состоял в переносе кусков текста слева-направо. Никаких специальных узлов с концепциями/памятками не появилось (не до того было).
VOID. Входные данные – аналогичные: мои переводы (описания вселенной игр этой серии) в той же ГЛЮКВЕ. Но построение карты осуществлялось с совершенно с другой целью. Файл ГЛЮКВЫ вырос до таких размеров, что я сам потерял за этими деревьями лес. Захотелось наглядности, а писать для этого очередной неудачный визуализатор ГЛЮКВЫ не хотелось. Работа успехом не увенчалась. Т.к. ГЛЮКВА обладает гораздо большими возможностями перекрестных ссылок, при прямом переносе голого текста в карту очень большая часть информации была потеряна. Обозримости достигнуть не удалось – карта влезает в экран только в масштабе 28%.
H1.RU. Карта создавалась с целью отследить необходимые мероприятия по обновлению моей странички. Наученный горьким опытом VOID, сразу отказался от копирования в структуре карты структуры странички. Разбил все мероприятия по темам: проекты с громкими названиями, замеченные опечатки, пока бесхозные куски и т.д. Карта пока обозрима. Активно используются "циферблаты" - это такие иконки, показывающие как я оцениваю готовность фрагментов. Однако, проявились и ограничения модели: привязка некоторых узлов спорна, также пришлось использовать "поперечные" связи.
ВСЕЛЕННАЯ. Входные данные – совершенно разнородные фрагменты с описаниями моей "тренировочной" вселенной. Основной источник данных – текст, разбитый на нумерованные абзацы. Получилось интересно. В карте совмещены как данные разных типов (тексты, картинка, таблицы), так и узлы различных типов: информационные фрагменты, наметки будущих концепций, замечания о дальнейших направлениях работы. К сожалению, как только карта стала интересной, она перестала влезать в экран.
ФРАГМЕНТ. Карта создавалась как подспорье в разработке некоторой системы интерактивной обработки, единица которой и была названа "фрагментом". Гордо воткнув "Фрагмент" в центр карты я честно потянул от него связи к сущностям, которые должны были участвовать в обработке. Очередной раз убедился, что ветвям карты заказано соответствовать каким-либо связям реального мира. Во-первых, оказался совершенно никак не отраженным в карте тот факт, что многие сущности, связанные с фрагментом, сами являются фрагментами (рекурсия). Во-вторых, если узлы еще можно кое-как откомментировать (иконками или навешиванием узлов специального вида), то связи между узлами откомментировать практически невозможно. В-третьих, Для ветвей "Теория [, философия, аксиоматика]", "Операции [и предикаты над фрагментами]" и "Вопросы [, подлежащие решению]" места не нашлось совершенно и их пришлось раскидать экрану, не привязывая к "корню".
ПРОЕКТЫ. Только начал, в попытке как-то упорядочить текущие проблемы. Пока развесил по веткам только содержимое пары файлов, аналогичных файлу ВСЕЛЕННОЙ, содержащих старые заметки. В перспективе, надо связать эту карту со всеми остальными.
Т.е. весь опыт свелся к тому, что проще было переформатировать (или написать для этого программку) данные самому, чем таскать их в MindMap и обратно. Тем более, что я так и не понял, может ли MindMap как-то помочь автоматизировать обработку. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Сообщение отредактировал Gudleifr - Среда, 31 Августа 2016, 15:30
В первом абзаце я кратко обрисовал их "эволюцию", поэтому попрошу уточнить. Если не по смыслу/содержанию/авторам, то хотя бы по годам. Например, как Вы относитесь к учебникам сайта ПЕРВЫЕ ШАГИ? Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Отнюдь, идея неплохая. Если чувствуете в себе силы такое поднять - дерзайте.
НУ, как бы любое HTML-творчество с подобной проблемой сталкивается. Просто, в данный момент я пришел к тому, что сделать "по моему" достаточно сложно. Поэтому, прежде чем лезть в дебри, решил посмотреть на чужие хотелки.
ЦитатаVicka ()
Но тут понадобятся не только технические знания но и психология с философией, дабы улавливать моменты вставок.
Вопрос был проработан в середине прошлого века в рамках проблемы "программированного обучения". Но, к сожалению, оказались востребованы только те результаты, которые позволяют создать "идеально покупаемый фантик". В данной же теме я хочу сэкономить на психологе за счет сбора мнений.
ЦитатаVicka ()
Могу посоветовать для структурирования использовать MindMap.
Ну, мои программы уже давно его переросли.
P.S. Оглядываясь в прошлое, могу вспомнить буквально несколько волшебных моментов, когда воспринимал попавшую ко мне (чаще бумажную) книгу, как "живую" - отвечающую именно на те вопросы, которые я еще только собирался задать. Кстати, что это были за книги, практически не помню. Было ли так у вас? Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
"вставьте ключ в скважину замка и поверните на право" такой картинке оживление не нужно.
В первом Jagged Alliance простенькое оживление поворота ключа давало нужную паузу в нужном месте... Т.е. Вы считаете, что книга не должна выходить за чисто информационные рамки? Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
И язык программирования - не простейшее средство описание программы.
Если мы посмотрим на книжки классиков, то увидим такую пропорцию - достаточно большие куски текста про "общие принципы" и, в самый момент перехода к конкретике - маленький кусок на языке программирования (возможно, выдуманном специально для этой книги) без начала и конца (в смысле, не оформленном в виде компилируемого модуля)... Позднее стало популярным разбитие программного модуля на части и вставка этих частей в теоретический текст (модуль целиком приводился в приложении)... Еще позднее текст стали заменять пошаговой инструкцией обезьянника и активно вставлять в них иллюстрации - результаты исполнения кода... По мере развития обезьянников и сведения программирования к решению уже решенных задач код стал избыточен, т.к. инструкции порождали его без участия кодера... Видимо, к этому последнему этапу и относится фраза:
Цитатаgiperion ()
Знаешь, я умудрялся как то объяснять людям сложные вещи на русском языке (без терминов)
*** Переход к гипертексту дает нам возможность включить в текст код и инструкции живьем, т.е. не только в виде иллюстраций, но и в виде действующих моделей. Кроме того, гипертекст позволяет комбинировать эти части самыми разнообразным способом... Т.е. мы видим плавное перетекание голого учебника программирования в рабочую программу (диздока в игру), путем постепенной замены текста работающими процедурами (есть даже такой промежуточный жанр - книга-игра). *** Так, вот, к чему я? Допустим, перед вами (во сне) "живая книга" (учебник, игра, интерактивное приключение, пособие по накачке мышц или соблазнению девушек... короче, то, чего вам бы хотелось в данный момент). В какой пропорции вы бы хотели видеть там текст и картинки? в какой момент картинки должны оживать? Любые, самые дикие варианты приветствуются, кроме присутствия в "книге" живого учителя. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Ну, подобные "проекты" были хорошо визуализированы в 1-2-х Settlers. Мне, даже, кажется, что автор вместо Civilization делает именно Settlers и явные гексы ему только мешают. Ведь, Civilization, как предтеча XXXX стоит на явном разделении основных игровых действий (познание правил, мира, изменение персонажа, мира) и объединении этих четырех "игр" только ресурсами. Автор же пытается свести все в "единую формулу", попутно таща проект сразу в две противоположные стороны - усложнения мира и поумнения модели. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Английская версия игры "Путин против Инопланетян" появилась в Steam Greenlight! Говорите "Да" проекту! Путинизируем Америку!
Патриотическая игра вышла на пиндосовском языке, на пиндосовском ресурсе и с пиндосовской системой оплаты! Уря-а! Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Бизнес в моей табличке появился только на 4-й строчке, и, кто меня знает, подтвердит, что я завсегда против него. Про инди ничего не скажу, наверное, они разные бывают - и работяги, и бизнесмены... А, вот, наш конкретный персонаж - он точно на 5-й позиции "удаленности от реальности". Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
"Проблем в мозгу пациента не выявлено из-за отсутствия такового"
1. Допустим, есть работяга, целый день проводящий "в поле", который вечером хочет расслабиться. 2. Есть программист, умеющий заставить компьютер играть и расслаблять, который хочет помочь работяге. 3. Есть игрок, которому эти расслабление за компьютером интереснее работы. 4. Есть бизнесмен, который видит потенциальные возможности рынка игроков. 5. Есть игродел, который хочет втюхать бизнесмену свой продукт.
И кто-то хочет воспринимать копошение #5 всерьез? А кушать что будем? Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
одкорректировать существующий код, который и не я писал во всём проекте, незнающем весь механизм движения модели в игровом пространстве с реагированием на врагов с использованием анимации вращающихся частей, загрузкой текстур модели, для новичка дело невыполнимое,
Это верно только для шибко упрощенных конструкторов. Получив текст на C++, Вы для того, чтобы добраться до "механизма" должны будете пробиться через кучу чисто программистских трудностей. Это как читать книгу на иностранном языке: прежде чем разобраться, кому и что должен Потный Гарри, нужно перевести на русский. Причем, программистские языки труднее переводить, потому что они гораздо менее избыточны: любая ошибка в артикле или окончании - и программа просто умрет. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
По "великой идее C++" - нужно всего лишь чуть-чуть изменить один из существующих классов и во все места, где этот класс может встретится, добавить "еще один класс" (вместо "выбери одного из 65 врагов", вставь "выбери одного из 66"). Но, по жизни: забудь о C++! научись программировать! изучи C++! посмотри на эту C++ фигню, выкинь на фиг и напиши по-своему! Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Сообщение отредактировал Gudleifr - Среда, 24 Августа 2016, 22:35
На него уходят ресурсы, которых часто жалко на решение проходной задачи. Вероятность же того, что и следующая задача будет решаться на том же языке, часто слишком мала. Начиная с некоторого момента программист приходит к выводу, что написать свой язык для данной задачи ему чаще быстрее, чем изучать чужой. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Отбросьте все сомнения по поводу того, стоит ли изучать машинный язык. Автор однажды понял, что нет ничего необычного в том, чтобы в течение одной недели заниматься написанием программ на нескольких различных машинных языках! Каждый, кто серьезно интересуется компьютерами, должен рано или поздно изучить по крайней мере один машинный язык. Машинный язык помогает программисту понять, что фактически происходит внутри компьютеров. Зная основы одного машинного языка, можно легко освоить характеристики любого другого. Информатика во многом связана с механизмами достижения целей высокого уровня на основе работы с компонентами низкого уровня.
Рассматривайте изучение различных языков программирования, как печальную необходимость подготовительного этапа решения текущей задачи. (Все эти заявы на то, что C++ или C# столь сложны и всеобъемлющи, что исключают/делают избыточным изучение других языков - лишь реклама). И самое главное: изучение конкретного языка программирования имеет очень малое отношение к изучению программирования.
Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Но то, как он преподносит свои знания, это жесть. И этому человеку уже полтинник, не верится даже..
Это вполне объяснимо. Голова-то у меня такого же размера, как и у всех, поэтому о сложных вещах приходится говорить на сложном языке. Конечно, считается, что гении могут объяснять сложные вещи человеческим языком, но в программировании это не работает, т.к. язык программирования - простейшее средство описания программы. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Ну, AKukuruz, я рад, что за время моего отсутствия Вы наделали не очень много ошибок. Однако, огорчен, что все старые остались на месте: 1. непонимание, где кончается один оператор и начинается другой; 2. что работает до, а что после появления окна на экране; 3. присвоение указателя на ф-ию, не означает ее запуска. За все это я уже Вас ругал (и все ответы есть в моих постах). Бросайте заниматься фигней и начинайте учиться программировать!
Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Есть, например, юниты, у каждого - набор свойств и навыков (а-ля Герои - Минотавр имеет "Храбрость", лазутчик - "Отравленный выстрел") Возникает, скажем, такая ситуация: лучник стреляет в пехотинца, применяя скилл "Стрельба". Пехотинец имеет навык "Щит", поэтому урон снижен. Однако лучник не простой, он имеет также способность "огненная стрела", поэтому пехотинец загорается. Но будь у пехотинца свойство "Несгораемость", не подгорел бы.
Ну, если бы существовало универсальное решение, то программирование не было бы искусством.
В чем же в данном случае это искусство заключается? Налицо наличие некоторого набора фактов/правил на основании которых нужно произвести некоторые выводы/действия. Программированием чего программист и занимается всю свою сознательную жизнь. (Конечно, если Вы хотите тупо портить чужие игры, просто добавляя туда новый контент/фичи, это Вам нафиг не понадобится, но, допустим, Вы хотите стать программистом).
С точки зрения банальной эрудиции подобные вычисления производятся путем "прямой" или "обратной цепочек рассуждений". В первом случае в цикле перебираются все факты, до получения всех возможных выводов, во втором - идут от нужного вывода, проверяя достаточно ли для него фактов.
Прямая цепочка (перебираем факты, вычисляя новые): if (лучник стреляет в пехотинца) применется_скилл = "Стрельба"; if (Пехотинец имеет навык "Щит") снижение_урона += от_щита; if ("Несгораемость" & "огонь") огонь = 0; if ("огонь") снижение_урона -= огонь; и т.д. и т.п. В общем случае сведения правил в единую форму, позволяющую не прописывать все if-ы руками, см там.
Обратная цепочка (вычисляем факты по мере их запроса): потери_от_огня_при_стрельбе() { if (стрельба()) снижение_урона(скилл, огонь()) } снижение_урона(скилл, огонь) {} огонь() {} и т.д. и т.п. В общем случае сведения правил в единую форму, см там же.
Это знают все. Особенно изобретатели всяких там языков "логического", "автоматного и прочего хитрого программирования". Но подавляющее большинство почему-то забыло, что ВСЕ языки программирования, даже какой-нибудь ALGOL-60, УЖЕ являются машинами для подобных рассуждений. Наличествующие в той или иной мере в каждом языке механизм данных и процедур уже готовы к решению "рассуждательной проблемы". Механизм данных обеспечивает накопление фактов (прямая цепочка), механизм процедур - их запрашивает и использует (обратная цепочка). Все остальное, что есть в языке - способ как-то ограничить "область перебора", т.е. разбить и факты, и действия на изолированные группы, в которых и осуществлять логические вычисления. Т.е. не проверять все условия боя на мечах при расчете космических перелетов, и не проверять, как влияет бузина в огороде на поведение дядьки в Киеве.
Т.е. любой язык программирования - способ свести в одно целое оба "переборных" решения в одно работающее. И первая примета быдлокодера - жесткая фиксация "способа решения" для всех предложенных задач, а не совмещение прямого и обратного подхода по месту. Что-то они всегда считают заранее, а что-то по потребности. И совершенно не могут объяснить, почему. А супербыдлокодеры изобретают языки, которые фиксируют этот способ... Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.
Сообщение отредактировал Gudleifr - Четверг, 15 Сентября 2016, 22:32
К тому же как можно сравнивать игру и тот бред по ссылкам?
Ну, как бы сказать, помягче. То, что Вы не можете на современном компьютере повторить то, что люди сделали без компьютера в 82-м году, говорит само за себя. Быдлокодеры любят повторять: "логика, убивающая мозг",- когда их пытаются заставить программировать.