Четверг, 25 Апреля 2024, 06:51

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 4 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Форум игроделов » Записи участника » 1nt3g3r [102]
Результаты поиска
1nt3g3rДата: Четверг, 07 Июля 2016, 18:28 | Сообщение # 61 | Тема: Лужу, паяю, ЭВМ починяю...
почетный гость
Сейчас нет на сайте
Gudleifr,
Цитата

Это не так. Мой опыт программирования примерно в полтора раза больше вашего возраста. Соответственно увеличьте на порядок сложность задач, с которыми Вы работали, размер проектов, серьезность организаций... В общем, как говорят все старые пердуны: "Я уже забыл больше, чем ты когда-либо узнаешь".

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

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

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

Цитата
Слушать в ответ: "Я считаю это херней, поэтому это херня", это, пардон, называется "сыпать бисер перед свиньями".

Каждый комментарий про херню я обосновал. Вы откуда-то взяли фразу "Я считаю это херней, поэтому это херня", и приписываете ее мне.

Если у вас есть что сказать конкретно (конкретный проект, ситуация, выводы из ситуации) - это называется конкретика, доказательство, это хорошо. А городить херню, и обзывать ее аксиомой - это не есть подход знающего человека.

Если вы хотите прочитать мне ликбез - прочитайте, я только за. Я открыт к новым знаниям, и я готов изменить свою точку зрения, если будут факты, которые ей противоречат. Но вы не привели НИ ОДНОГО факта, который подтверждает ваши мысли. Вы лишь приводите свои выдумки, причем часто довольно абсурдные.


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Четверг, 07 Июля 2016, 17:42 | Сообщение # 62 | Тема: Лужу, паяю, ЭВМ починяю...
почетный гость
Сейчас нет на сайте
Gudleifr, по пунктам:

Цитата
Уже давал: "Программистов не бывает. Есть только системщики и пользователи. Системщики бывают математикам или электронщиками, а пользователи - физиками или лириками".

Какая-то херня. Откуда вы взяли это определение? Приведите название книги, что ли, откуда взято определение.

Цитата

Цитата 1nt3g3r ()
Переписать операционную систему, базу данных, другую большую программу, на которую ушли годы разработки - дешевле, чем починить ее? Почему же бизнес , который считает деньги, так не делает?
Потому, что бизнесу не нужны хорошо работающие программы. Ему нужны рабочие места для быдлокодеров и операционистов. И большой размер означенных программ в большинстве сам является следствием такой починки/разработки. Про выбрасывание программы на середине см. первый том Кнута.

Снова какая-то херня. Бизнесу нужны деньги - это то, для чего делается бизнес. Бизнес покупает (или пишет) софт, чтобы максимизировать свою прибыль. Хорошая программа -> меньше ошибок -> больше денег. Вроде все просто. Не нужно искать теорию заговора там, где ее нет.

Цитата
Цитата 1nt3g3r ()
Отчисление за двойку, проверка данных абитуриента (с помощью интернет-базы), и сортировка по рейтингу - несколько разные правила, не находите?
Возможно. Но не обязательно.

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

Цитата
Цитата 1nt3g3r ()
Я привел практические примеры в защиту своих аргументов
Извините, не заметил. Более того, у Вас какая-то путаница: то требуете логическое обоснование, то практические примеры.

Не передергивайте. Я попросил И ОБОСНОВАНИЕ И ПРИМЕР. Привожу пример - из физики. Ученые предсказывали существование бозона Хиггса - это логически следовало из Стандартной модели. Предсказывали в 1964 году. А несколько лет назад построили Большой Коллайдер, и доказали существование - доказательство - практический пример.

Это научный подход - гипотеза -> эксперимент -> подтверждение гипотезы. Вы же делаете иначе - вы не доказываете свои утверждения, вы хотите, чтобы вам верили на слово. В научных кругах таких называют "научные фрики" - бестолковые люди, которые не разбираются в теме, но делают какие-то заявления.

Цитата
По двум причинам, во-первых "программистский оптимизм" о котором писал Брукс,

Я читал Брукса. Про оптимизм программиста - программист думает, что напишет программу быстрее, чем это будет на самом деле. Вы использовали его слова в другом смысле. Не знаете - не пишите.

Цитата
40 тысяч строк на обсчет поведения студента?

Вы, вероятно, не представляете суть работы приемной комиссии. Если бы понимали, вы бы так не писали.

Цитата
А сколько строк у Достоевского ушло на описание Раскольникова?

Не нужно сравнивать теплое с мягким, хрен с пальцем.

Цитата
А, ведь,изначально языки программирования разрабатывались для предельно компактной записи вычислений

Нет, языки программирования высокого уровня разрабатывались для увеличения производительности программиста. Сколько вы в машинних кодах будете писать решение квадратного уравнения? День? Два? А я на ЯВУ напишу за 10 минут, и тесты вам предоставлю.

Цитата
По современным коммерческим нормам после тестирования останется по 30 ошибок на тысячу строк. Из них 2 (по аксиоме) критических.

30 ошибок на 1000 строк после тестирования - это много. Почитайте это - http://www.securitylab.ru/news/420674.php. В среднем, меньше 1 ошибки. За аксиому - что за аксиома, где вы ее взяли (название книги, автора, глава и страница). Пока не скажете, откуда аксиома - считайте, пернули в лужу с таким подходом к называнию выдумок аксиомами.

Цитата
При этом, гарантирую, Вы не вылезете за 5-10 тысяч

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

Цитата
Впрочем, я не понимаю, в чем изначальные претензии. Я написал: "Единственный способ написания хорошей программы - полное выбрасывание исходников, как только они перестают нравиться". Если, Вам ваши 40 тысяч строк нравятся, то зачем их выбрасывать?

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

Цитата
Это, как раз, и подтверждает тезис о размере, как единственном критерии сложности. И, заметьте, Вы сами напрямую увязывали сложность Вашей "студенческой" программы с ее размером - 40 тысяч строк.

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

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


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Четверг, 07 Июля 2016, 08:33 | Сообщение # 63 | Тема: Лужу, паяю, ЭВМ починяю...
почетный гость
Сейчас нет на сайте
Gudleifr, некоторые ваши обьяснения не вызывают доверия.

Цитата
Цитата 1nt3g3r ()
почему починка и адаптация программы (рефакторинг) - это плохо.
Потому что переписать - дешевле. Всякое "улучшение" увеличивает размер следующих "улучшений". "Универсальная" программа (по Бруксу) весит в три раза больше "просто работающей". Следовательно, проще переписать "одну программу", чем проверить и исправить программу "тройного размера".

И, повторю, всегда помните два правила:
1. Сложность программы определяется только ее размером
2. Тесты ничего не доказывают
Это не обсуждается. Первое следует из единственного доступного нам способа анализа - "прорешать в голове", а второе - из свойств Машины Тьюринга.

Переписать операционную систему, базу данных, другую большую программу, на которую ушли годы разработки - дешевле, чем починить ее? Почему же бизнес , который считает деньги, так не делает?
За ваши два правила - откуда вы их взяли? Вы можете их доказать\аргументировать? То, что вы написали "не обсуждается" - не придает им веса. "Тесты ничего не доказывают" - нет, они доказывают работоспособность программы на определенных данных (заметьте, я не говорю на ВСЕХ данных, а на определенном подмножестве).

Цитата
Цитата 1nt3g3r ()
Оправданность столь большого обьем - да потому что у программы много функций. Есть куча абитуриентов, над ними нужно производить разные сложные действия - например, если по какому-то предмету ему поставили 2 балла - он автоматически отчисляется, причиной отчисления пишется - "Двойка за (название предмета)".

Это не аргумент. В подобных случаях проще записывать правила в единообразном виде и просчитывать их единственной процедурой.

Не все правила можно записать в единобразном виде. Отчисление за двойку, проверка данных абитуриента (с помощью интернет-базы), и сортировка по рейтингу - несколько разные правила, не находите?
Цитата


Цитата 1nt3g3r ()
Как результат - никто не будет пользоваться операционкой, на которой не работает железо и программы.
Windows же пользуются...

Да - потому что на ней работает большинство железа и программ (всяко больше, чем на других ОС).

Цитата
Цитата 1nt3g3r ()
А если писать лишь тестовые программы, опыта много вы не наберетесь.
Если тесты на одно и то же правило - да. А если это этюды Уэзерелла?

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

Еще, я вас просил, но вы так и не ответили:

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

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

Сразу скажу, что я имею в виду под аргументацией. Это логическое обоснование (используя законы формальной логики) ваших мыслей. И как минимум по одному практическому примеру, подтверждающему вашу мысль. Я привел практические примеры в защиту своих аргументов, чего не могу сказать про вас. Если вы не можете доказать свои слова, это означает лишь то, что вы бросаете слова на ветер, не имея знаний в теме, которую мы обсуждаем.

Еще, у вас спрашивали определение Настоящего Программиста. Я тоже хочу почитать это - любой спор начинается с определений, чтобы потом не было двояких трактований

Добавлено (07 июля 2016, 08:33)
---------------------------------------------
xMoonGuarDx,

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


Конечно, еще Фредерик Брукс писал про это. Сложность написания большой программы размером в 5 маленьких - совсем не сумма сложности (время + ресурсы) написания 5 маленьких. Я приводил пример на уровне функции\класса\модуля - что и эти вещи можно сделать относительно более сложными или простыми.


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 21:43 | Сообщение # 64 | Тема: идея игрового контроллера
почетный гость
Сейчас нет на сайте
julvern, совет - используй Arduino какую-то - она умеет по Com-порту (эмулируется через USB) общаться с компьютером. К ардуино прицепить датчик давления, и отсылать данные в основную программу.

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


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 21:40 | Сообщение # 65 | Тема: Кто что думает на счет воксельных технологиях?
почетный гость
Сейчас нет на сайте
Преимущества - разрушаемость мира. Minecraft - фактически воксельная игра (один блок - один воксел).

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

Из минусов технологии - ресурсоемкая, видеокарты заточены под работу с 3D графикой, а не на воксельные текхнологии.


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 21:18 | Сообщение # 66 | Тема: Помогите, AI и создание игрового сервера
почетный гость
Сейчас нет на сайте
Kagero, сервер можно писать и не средствами Юнити, что угодно, лишь бы поддерживало TCP\IP сокеты. Сейчас я делаю Tower Defence для Unity, сервер пишу на Java, netty. Общение - чистый TCP/IP. Из преимуществ - удобно тестировать, просто подключаясь telnet-ом.

Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 21:07 | Сообщение # 67 | Тема: обучение программированию
почетный гость
Сейчас нет на сайте
Цитата

Цитата 1nt3g3r ()
Я понимаю, почему вы так поступаете - вам не нравится, что он организовывает курсы обучения программистов.
Моя мысль проста и открыта как штопор: языки программирования - лишь инструмент для программирования. Обучать языкам, не обучая программированию - способ производства бездумных рабов.


В принципе, согласен - но даже учиться программировать нужно на каком-то языке (конечно, можно и на бумажке псевдокодом, но это уже перебор немного). Поэтому можно не особо обращать внимание, на каком именно языке учат. Хочет C++ - значит, знает его, и может на нем обьясняться.

К остальным пунктам вопросов нет.


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 21:02 | Сообщение # 68 | Тема: Лужу, паяю, ЭВМ починяю...
почетный гость
Сейчас нет на сайте
Цитата
Забудьте. Это очередная байка для умственно отсталых. Единственное, что нужно знать о тестах: они ничего не доказывают. Это просто удобная кормушка для около-программистов.

Нет, это не так. По мере того, как ваша система становится более сложной (банковская система, игровой сервер, алгоритм разбора пакетов, которые передаются по радиоканалу - тысячи их), вы не можете удержать в голове все подробности. Новые люди в проекте вообще не знают этих подробностей. Здесь тесты спасают. Unit-тесты доказывают то, что отдельные функции при определенных условиях работают. Маленький пример - вы написали функцию, которая считает сложную формулу - десятки строк кода, без знания формулы вообще непонятно, что она делает. Написав юнит-тесты для пограничных случаев, и пару тестов в середине интервала, вы знаете - в таких-то пределах функция работает. Потом вам говорят - а функция-то медленно работает, ускоряй! И вы, используя знание архитектуры целевого процессора, делаете asm-вставки - почучуть, кусочками - и прогоняете каждый раз ваш набор тестов. Таким образом, между шагами оптимизации вы можете быть уверены, что еще ничего не сломали. А ведь юнит-тесты - это лишь вершина айсберга - есть и другие виды тестирования, которые тестируют не отдельную функцию, но уже поведение программы "в сборе". Если взять ту же банковскую сферу - там никто не рискнет что-то писать или менять без тестов. А если взять космическую область - то вы там только тестированием и будете заниматься. Непозволительно запускать ракету в надежде на гениальность программиста.

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

Это не сложные программы, это программы, выглядящие сложными для непосвященных. Самый сложный алгоритм - это простая программа. Определение сложной программы очень просто - это предел для одного человека. Не по заумности, а тупо по времени и размеру текста.

Если вы что-то понимаете, то оно для вас просто. Десять леть назад для меня вывод точки на экран в Turbo Pascal и перемещение ее клавишами курсора было сложно, сейчас нет. Определение сложности по размеру текста некорректно. Один и тот же алгоритм можно написать изящно, одной рекурсивной функцией, а можно городить и городить костыли. Сложность - это когда сложно понять, как это реализовать, с какой стороны подойти. Когда на бумажке вроде и понятно, и сделаешь по бумажке сам - а вот железяка накладывает ограничения по времени, по памяти, по типам данных. Когда приходится переформулировать задачу на язык компьютера. Когда целый день промучился, на выходе - 10 строчек кода, которые делают сложную работу. То есть, выходной результат - количество текста - не коррелирует со сложностью программы.

Цитата
Цитата 1nt3g3r ()
Вы можете сказать, что это небольшой проект - но для одного человека 40 тысяч строк кода примерно за полтора года - это не так уж и мало.
Возможно. Но я имел в виду именно самостоятельный сложный проект. В Вашем описании слишком мало информации, чтобы оценить сложность проекта, Вашего участия, оправданности столь большого объема.


Степень участия - я писал программу "с нуля", сам. Оправданность столь большого обьем - да потому что у программы много функций. Есть куча абитуриентов, над ними нужно производить разные сложные действия - например, если по какому-то предмету ему поставили 2 балла - он автоматически отчисляется, причиной отчисления пишется - "Двойка за (название предмета)". Или же, если сумма баллов меньше какого-то количества, но по профильному предмету их много - сделать другое действия. Все подробности я не упомню, но четко помню, что у меня на каждый серьезный чих писались тесты. Благодаря этому я мог спокойно заниматься своими делами (все работает так, как ожидается). Новая функция - окей, делаем тест, добавляем функцию, прогоняем все тесты. Зачем все тесты - потому что в большой системе не всегда очевидно, чем чреваты изменения в том или ином месте.

Цитата
Цитата 1nt3g3r ()
Ага, скажите это создателям всех популярных операционных систем(Windows, Linux, etc).
Ага. Например, Linux - это написанный заново, с нуля, Unix. Windows - это, вообще анекдот, его тянут без переписывания от самого DOS, но то и дело заявляют, что "система переписана с нуля", как у порядочных. Хотите поржать - почитайте книги Шульмана (не даром мелкософт столько раз его пытался прижучить).


Linux - не юникс. Есть определенная доля совместимости на уровне API, но не более.Linux писали не от желания переписать Unix - просто Unix-а не было в открытом доступе, платный он был, Unix.
Windows - о том и речь. Нельзя так просто взять и выбросить все исходники, со всеми наработками, костылями и т.д. Например, куча железа, завязанная на особенности операционки (там, где драйвера есть - видеокарты, звуковые карты, и т.д.) просто отвалится. То же и про программы. Как результат - никто не будет пользоваться операционкой, на которой не работает железо и программы. А если переписывать код, оставляя совместимось - то по этому пути Microsoft пошли. У меня нет к ним любви, большинство времени я пользуюсь Linux, но их мотивы я понимаю - это бизнес, который хочет заработать денег, и который хочет, чтобы его софт был актуален.

Цитата
Цитата 1nt3g3r ()
В написание сложных программ вложено миллионы человеко-часов, и непозволительно глупо переписывать исходники, как только что-то перестало в них нравиться.
Это только слабое оправдание бездумной траты этих самых миллионов там, где хватило бы и тысяч.

Кто-то потратил месяц для написания драйвера для конкретной модели USB-модема. Кто-то взял это за основу и сделал универсальный драйвер - подходящий для всех USB-модемов (по крайней мере, большинства). Кто-то делает такую же работу, но для другой железки. Кто-то усовершенствует планировщик задач под новую архитектуру процессора. Работы много, и она идет постоянно. Да, есть и бесполезная работа, но пока вы не сделаете ее, вы этого не поймете. А когда сделаете - потом переделаете правильно.

Цитата
Цитата 1nt3g3r ()
Способ избежать загнивания кода - регулярный рефакторинг этого самого кода.
Забудьте. Это еще одна байка. Есть только один работающий вид рефакторинга - через мусорное ведро.

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

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

Цитата
Цитата 1nt3g3r ()
Это все хорошо - но кому-то надо писать базы данных, прошивки контроллеров, игры, операционные системы.
И если это будут делать настоящие программисты, жизнь будет лучше.

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


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 20:10 | Сообщение # 69 | Тема: обучение программированию
почетный гость
Сейчас нет на сайте
Gudleifr, для того, чтобы человеку до чего-то дорасти, ему нужно с чего-то начать. Если человека постоянно критиковать, он точно ничему не научится, а если критиковать резко (включая слова "жопа") - то вы просто отобьете желание что-то делать (это не только про программирование так).

Я понимаю, почему вы так поступаете - вам не нравится, что он организовывает курсы обучения программистов. С другой стороны - а что здесь плохого? Если у человека хватило ума написать свой редактор html с преферансом и поэтессами (даже на базе другого редактора) - это говорит, что его уровень выше начинающего. То есть, начинающие программисты смогут от него что-то взять. Теория и практика всегда идут рядом - я не начал учить математику (матрицы, вектора, действия с ними), пока не столкнулся что мне не хватает знаний для написания игр. У меня была математика в ВУЗе, я сдавал ее на отлично, но со временем это все подзабылось, это нормально.

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


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 20:00 | Сообщение # 70 | Тема: Лужу, паяю, ЭВМ починяю...
почетный гость
Сейчас нет на сайте
Gudleifr, я почитал ваш пост. Не все выводы там верны. По пунктам:

Аксиома 5: Очень небольшой процент рабочего времени программист тратит на написание программ. Гораздо больше уходит на то, чтобы заставить их работать. Первое приятно и престижно, второе - нет.

Нет - если использовать TDD (Unit-тесты), время на отладку сильно сокращается. Пишу из своего опыта - я писал и с тестами, и без. Конечно, не всегда Unit-тесты применимы (программирование графики, например), но есть множество областей, где они доступны.

Следствие 51: Ни один программист не любит сложных программ. Пропадает даже та маленькая толика удовольствия, которая ему положена.

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

Следствие 52: Еще эфемернее предстает возможность научиться программировать на большом проекте. Неразрешимые проблемы встретятся раньше, чем появятся первые результаты.

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

Следствие 53: Единственный способ написания хорошей программы - полное выбрасывание исходников, как только они перестают нравиться.

Ага, скажите это создателям всех популярных операционных систем(Windows, Linux, etc). Корни этих систем тянутся еще непонятно откуда, и в них есть ошибки. Но жизнь такова, что если взять и выбросить все исходники, как только они перестали нравиться - то чем же пользоваться? В написание сложных программ вложено миллионы человеко-часов, и непозволительно глупо переписывать исходники, как только что-то перестало в них нравиться. Способ избежать загнивания кода - регулярный рефакторинг этого самого кода. А чтобы ничего не сломать при рефакторинге - для этого придумали автоматические тесты.

Хороших программистов не так уж и много, но вы хотите поднять планку "настоящего программиста" до небывалых высот (такое впечатление у меня сложилось после прочтения ваших постов). Это все хорошо - но кому-то надо писать базы данных, прошивки контроллеров, игры, операционные системы. Нельзя написать что-то идеально - можно написать рабочий вариант, потом улучшать (эволюция тому пример).


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Среда, 06 Июля 2016, 19:56 | Сообщение # 71 | Тема: обучение программированию
почетный гость
Сейчас нет на сайте
Gudleifr, Я перенесу - это не проблема. Проблема в том, что вы пытаетесь учить человека своим текстом, хотя ваш текст и сам не является правильным.

Нужно писать такие игры, чтобы в них было интересно играть самому

Сообщение отредактировал 1nt3g3r - Среда, 06 Июля 2016, 19:56
1nt3g3rДата: Среда, 06 Июля 2016, 19:42 | Сообщение # 72 | Тема: обучение программированию
почетный гость
Сейчас нет на сайте
Gudleifr, я почитал ваш пост. Не все выводы там верны. По пунктам:

Аксиома 5: Очень небольшой процент рабочего времени программист тратит на написание программ. Гораздо больше уходит на то, чтобы заставить их работать. Первое приятно и престижно, второе - нет.

Нет - если использовать TDD (Unit-тесты), время на отладку сильно сокращается. Пишу из своего опыта - я писал и с тестами, и без. Конечно, не всегда Unit-тесты применимы (программирование графики, например), но есть множество областей, где они доступны.

Следствие 51: Ни один программист не любит сложных программ. Пропадает даже та маленькая толика удовольствия, которая ему положена.

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

Следствие 52: Еще эфемернее предстает возможность научиться программировать на большом проекте. Неразрешимые проблемы встретятся раньше, чем появятся первые результаты.

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

Следствие 53: Единственный способ написания хорошей программы - полное выбрасывание исходников, как только они перестают нравиться.

Ага, скажите это создателям всех популярных операционных систем(Windows, Linux, etc). Корни этих систем тянутся еще непонятно откуда, и в них есть ошибки. Но жизнь такова, что если взять и выбросить все исходники, как только они перестали нравиться - то чем же пользоваться? В написание сложных программ вложено миллионы человеко-часов, и непозволительно глупо переписывать исходники, как только что-то перестало в них нравиться. Способ избежать загнивания кода - регулярный рефакторинг этого самого кода. А чтобы ничего не сломать при рефакторинге - для этого придумали автоматические тесты.

Хороших программистов не так уж и много, но вы хотите поднять планку "настоящего программиста" до небывалых высот (такое впечатление у меня сложилось после прочтения ваших постов). Это все хорошо - но кому-то надо писать базы данных, прошивки контроллеров, игры, операционные системы. Нельзя написать что-то идеально - можно написать рабочий вариант, потом улучшать (эволюция тому пример).

UPD: Перенес в соответсвующую тему - но здесь оставлю тоже, пост подходит этой теме.


Нужно писать такие игры, чтобы в них было интересно играть самому

Сообщение отредактировал 1nt3g3r - Среда, 06 Июля 2016, 20:01
1nt3g3rДата: Воскресенье, 05 Июня 2016, 22:45 | Сообщение # 73 | Тема: Lords Of The Broken Horn. Пошаговая стратегия (TBS)
почетный гость
Сейчас нет на сайте
Идея интересная - я бы в такое поиграл, а если бы на мобилку - вообще хорошо было бы. Если можете, сбросьте, пожалуйста, играбельное демо - попробую, напишу впечатление.

Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Суббота, 21 Мая 2016, 11:31 | Сообщение # 74 | Тема: Раскраска голосом
почетный гость
Сейчас нет на сайте
TLT, за идею изучения английского - согласен, я тоже про это думал. Это хорошая идея, потому что (сужу по личному опыту) сложнее всего говорить. Грамматика, словарный запас - это можно выучить, а вот говорить - это сложнее. В общем, наверное подумаю про вариант обучающей игры на тему иностранных языков с упором на говорение.

Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Пятница, 20 Мая 2016, 21:37 | Сообщение # 75 | Тема: Раскраска голосом
почетный гость
Сейчас нет на сайте
Lertmind, а почему неудачная идея в плане "заработать деньги"? Почему спрашиваю - чем монетизация такой игры будет отличаться, например, от обычных раскрасок на телефоне? Та же реклама, та же платная\бесплатная версии.

Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Пятница, 20 Мая 2016, 21:10 | Сообщение # 76 | Тема: Раскраска голосом
почетный гость
Сейчас нет на сайте
Gudleifr, идея с подполковником шикарна. Команды "Налево", "Направо", "Выдрать дневального по роте", "Вызвать Ваньку-ротного" - но это уже не совсем детская игра получится

Alfe, за рекламу - а как тогда ее монетизировать? Будет ли наш народ такое покупать? Я думаю так - играть ребенок должен все равно со взрослым, то взрослый пусть рекламу смотрит и закрывает. Или сделать две версии - одна платная без рекламы, другая с рекламой, но бесплатная. Если родителю надо будет без рекламы, пусть купит. А как вы думаете, как лучше игру такого типа монетизировать?


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Пятница, 20 Мая 2016, 20:37 | Сообщение # 77 | Тема: Раскраска голосом
почетный гость
Сейчас нет на сайте
У меня возникла идея - сделать раскраску голосом. Есть картинка - допустим, это будет кот. У кота есть хвост, лапы, голова и т.д. Суть игры - сказать фразу "Красный хвост", например. Телефон распознает речь, и сделает хвост красным. Или же нажать на часть тела (тот же хвост), и сказать "красный".

Игра для детей. Есть ли смысл делать такую игру, насколько она будет интересна? Знает ли кто-то похожие игры? Технически это реализуемо, демку, которая раскрашивает экран я сделал (голосовое распознавание речи от Google).


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Суббота, 14 Мая 2016, 23:40 | Сообщение # 78 | Тема: Система жизни
почетный гость
Сейчас нет на сайте
Пожалуйста :)

За критику - не воспринимайте ее очень серьезно, просто развивайтесь. Все с чего-то начинали)


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Суббота, 14 Мая 2016, 23:30 | Сообщение # 79 | Тема: Система жизни
почетный гость
Сейчас нет на сайте
Код написано неверно - похоже, у вас нет опыта программирования.

using UnityEngine;
using System.Collections;

public class EnemyTrigger : MonoBehaviour {

public Healths hp;

void Start() {
hp = GetComponent<Healths> ();
}

void OnTriggerEnter(Collider Player) {
hp.HP -= 10f;
}
}

Должно быть примерно вот так (если оба компонента на одном и том же GameObject). Не хочу очень детально расписывать ваши ошибки, видно, что вы не умеете еще программировать довольно базовые вещи, но основные моменты:

1) Не вызывайте GetComponent в Update - это вызывается каждый кадр, будет тормозить вашу игру, если такого будет много
2) Healths healths = GetComponent<Healths> (); - этой строчкой вы получили обьект Healths, но нигде его не сохранили. Нужно вынести его в локальную переменную - как я написал в примере выше, hp - это и есть нужная локальная переменная.
3) Healths.HP - такое обращение подразумевает, что поле HP статическое, хотя оно таким не является. Почитайте про статические поля.


Нужно писать такие игры, чтобы в них было интересно играть самому
1nt3g3rДата: Понедельник, 09 Мая 2016, 01:15 | Сообщение # 80 | Тема: Word Guru Game
почетный гость
Сейчас нет на сайте
Да - спасибо, получилось. Похоже, в режиме предпросмотра эта функция не работает, а как опубликовал, заработало.

Нужно писать такие игры, чтобы в них было интересно играть самому
Форум игроделов » Записи участника » 1nt3g3r [102]
  • Страница 4 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг