Форум программистов, компьютерный форум, киберфорум
CoderHuligan
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  

Это не урок, а мысли по поводу..

Запись от CoderHuligan размещена 05.06.2019 в 13:09
Показов 8654 Комментарии 84
Метки goto

Давайте чё-нить запилим такое-эдакое. За одно по ходу пьесы будем учится создавать реальные многофайловые проекты. С подробными комментариями и т.п.
Пилить будем естественно в процедурном стиле, как положено. Тут кто-то уже предлагал сделать примерный проект в моём стиле и в обычном стиле с ООП, и сравнить их путём изменения проекта, его модификации и пр.
Предлагаю сделать игру Морской бой. Но не простой морской бой, а навороченный. Что сие означает?
Во-первых, компьютер, как второй игрок, может притворятся разными игроками, с разной стратегией поведения и пр.
Во-вторых, ввести несколько уровней игры. На верхнем уровне предлагается чтобы каждый корабль после очередного хода смог передвигаться на одну клетку в каком-либо направлении, что усложняет задачу его потопления.
В-третьих, ввести несколько стратегий поведения программы, в зависимости от темперамента игрока(которым притворяется компьютер). Несмотря на тривиальность игры, она, судя по опыту тех, кто её делал, довольно сложно программируется, так включает в себя некоторые сложные алгоритмы способов расстановки кораблей, рэндомной генерации кораблей и пр. Проблем тут куча, достаточно почитать хабр.
Сперва сделаем игру консольной, а там видно будет.
Создавать будем постепенно, по шагам файл за файлом. Это был анонс.
Метки goto
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 84
Комментарии
  1. Старый комментарий
    И где морской бой?
    Запись от ТабуретY размещена 08.06.2019 в 10:35 ТабуретY вне форума
  2. Старый комментарий
    Аватар для Usaga
    Человек, который собрался учить всех как правильно вести разработку хочет поучиться создавать реальные многофайловые проекты... Всё, что нужно знать о этих "уроках".

    Вы создайте не навороченный морской бой, а самый простейший. Чтобы "задор" не успел растеряться пока будете писать. Будет первое в вашей жизни не hello world приложение.

    И приложите ссылку на публичный репозиторий на github или аналогичном ресурсе. Чтобы люди могли в живую отслеживать прогресс работы маэстро. Там и станет видно, действительно ли вы Лев Толстой...
    Запись от Usaga размещена 08.06.2019 в 10:49 Usaga вне форума
  3. Старый комментарий
    Аватар для CoderHuligan
    Цитата Сообщение от ТабуретY
    И где морской бой?
    Он ещё не написан. Я же говорил: будем вместе писать. Постепенно. Сейчас занимаюсь заготовкой вывода в консоль. Уже сделал. На днях будет начало. Есть реализации по 40 классов, но мы сделаем гораздо проще.

    Цитата Сообщение от Usaga
    Человек, который собрался учить всех как правильно вести разработку хочет поучиться создавать реальные многофайловые проекты... Всё, что нужно знать о этих "уроках".
    Спасибо за просвещение, просветитель.

    Цитата Сообщение от Usaga
    Вы создайте не навороченный морской бой, а самый простейший.
    Хорошо. Походу будем добавлять фичи.

    Цитата Сообщение от Usaga
    Будет первое в вашей жизни не hello world приложение.
    На солнышке не перегрелись?
    Цитата Сообщение от Usaga
    И приложите ссылку на публичный репозиторий на github или аналогичном ресурсе. Чтобы люди могли в живую отслеживать прогресс работы маэстро. Там и станет видно, действительно ли вы Лев Толстой...
    Здесь и будет наш Гит. В этом блоге. Ради этого не стоит создавать проект на гитхаб.
    Запись от CoderHuligan размещена 08.06.2019 в 12:39 CoderHuligan вне форума
  4. Старый комментарий
    Аватар для Usaga
    Я же говорил: будем вместе писать.
    Вы, как лютый специалист, должны бы показать своё мастерство и состоятельность своих очень громких заявлений и точек зрения. На примере. Так, что разработайте и покажите код. Самый минимум. И по времени вас никто не торопит.

    Здесь и будет наш Гит. В этом блоге. Ради этого не стоит создавать проект на гитхаб.
    Т.е. системами контроля версий вы пользоваться не умеете и не понимаете что это вообще такое и для чего? Что ж, учитель, продолжайте нести свет в несведущие массы)))
    Запись от Usaga размещена 08.06.2019 в 13:42 Usaga вне форума
  5. Старый комментарий
    Аватар для CoderHuligan
    Цитата Сообщение от Usaga
    Вы, как лютый специалист, должны бы показать своё мастерство и состоятельность своих очень громких заявлений и точек зрения. На примере. Так, что разработайте и покажите код. Самый минимум. И по времени вас никто не торопит.
    Начнём.
    Цитата Сообщение от Usaga
    Т.е. системами контроля версий вы пользоваться не умеете и не понимаете что это вообще такое и для чего? Что ж, учитель, продолжайте нести свет в несведущие массы)))
    Система версий в учебном проекте? Если будет серьёзный проект, а не игра(много вы видели игр на гит?), то он будет там.
    Запись от CoderHuligan размещена 08.06.2019 в 14:01 CoderHuligan вне форума
  6. Старый комментарий
    Аватар для liv
    Много слов... Ждем...
    Запись от liv размещена 08.06.2019 в 14:24 liv вне форума
  7. Старый комментарий
    Аватар для Croessmah
    Цитата Сообщение от CoderHuligan
    Система версий в учебном проекте?
    Да. Это было бы намного лучше.
    Запись от Croessmah размещена 08.06.2019 в 15:32 Croessmah на форуме
  8. Старый комментарий
    Аватар для rerf2010rerf
    Цитата Сообщение от CoderHuligan
    Начнём.

    Система версий в учебном проекте? Если будет серьёзный проект, а не игра(много вы видели игр на гит?), то он будет там.
    Не знаю, как у вас в мире серьёзной разработки с делением на ноль и непадающими боингами, а в нашем скромном реальном мире даже студентов на лабах по программированию заставляют размещать свой код в гите.
    Запись от rerf2010rerf размещена 08.06.2019 в 16:17 rerf2010rerf вне форума
  9. Старый комментарий
    Аватар для CoderHuligan
    Цитата Сообщение от rerf2010rerf
    Не знаю, как у вас в мире серьёзной разработки с делением на ноль и непадающими боингами, а в нашем скромном реальном мире даже студентов на лабах по программированию заставляют размещать свой код в гите.
    ну вот пусть студенты на лабах его там и размещают.
    Запись от CoderHuligan размещена 08.06.2019 в 18:26 CoderHuligan вне форума
  10. Старый комментарий
    Аватар для Usaga
    А что, игра - какой особый вариант программы, которому не требуется система контроля версий? Даже один небольшой файлик исходника на си удобнее держать на github, а в архиве тут выкладывать каждую новую версию. Или ваш богатый опыт разработки hello world'ов вам другое говорит?
    Запись от Usaga размещена 09.06.2019 в 07:22 Usaga вне форума
  11. Старый комментарий
    Ну оператор GOTO реализован де факто в ООП - массивы функций и процедур, просто реализован в лучшем виде чем был. Скажем так - он прошёл некоторую эволюцию, или ему её провели.
    Занятка интересная, но я занят к сожалению. Консоль конечно не интересно - ничего сложного сразу сделать графическое приложение. Кроме того, в изначальных условиях не оговорено - если корабль движется, то будет-ли стреляющий знать что попал именно в тот корабль, в который попадал предыдущим выстрелом. Это момент крутого поворота стратегий, остальные моменты - не столь существенны, важны ключевые моменты для построение стратегии - знание. Впрочем можно и без знания в кого попала машина, но стратегии тогда изменятся на корню.
    Запись от Hrethgir размещена 10.06.2019 в 23:08 Hrethgir вне форума
  12. Старый комментарий
    Аватар для XLAT
    Поддержу автора.

    первый раз ковырял МБ в этой теме:
    https://www.cyberforum.ru/cpp-... 06806.html

    поковыряв его еще чуть-чуть к MB больше не возвращался.
    https://github.com/BDOTimer/SeaBattle
    могу пообещать, что раз в месяц буду коммитить
    Запись от XLAT размещена 11.06.2019 в 14:11 XLAT вне форума
  13. Старый комментарий
    Аватар для Usaga
    XLAT, поддержать автора вы можете коммитами в ЕГО репозиторий. А репозиторий он заводить не собирается, ибо не понимает для чего это.
    Запись от Usaga размещена 11.06.2019 в 15:24 Usaga вне форума
  14. Старый комментарий
    Аватар для XLAT
    Цитата Сообщение от Usaga
    XLAT, поддержать автора вы можете коммитами в ЕГО репозиторий.
    это вряд ли возможно,
    назову две причины:
    1. я хейтер чистой процедурной парадигмы. (Коплиеновская мульти для терминов задачи тож есть бэд).
    2. имею свой интерес в экспериментах с орхетектурными завитушками

    хотя все возможно под этим небом
    Запись от XLAT размещена 11.06.2019 в 16:12 XLAT вне форума
  15. Старый комментарий
    Аватар для Avazart
    Он ещё не написан. Я же говорил: будем вместе писать.
    Система версий в учебном проекте? Если будет серьёзный проект, а не игра(много вы видели игр на гит?), то он будет там.
    Очередная порция невежества.
    А для чего по Вашему контроль версий?
    Что бы выкладывать готовый проект?
    Да и какая разница какого характера проект?
    Вопрос удобства и профессионализма.
    Запись от Avazart размещена 11.06.2019 в 19:53 Avazart вне форума
  16. Старый комментарий
    Аватар для CoderHuligan
    Цитата Сообщение от Avazart
    Очередная порция невежества.
    А для чего по Вашему контроль версий?
    Что бы выкладывать готовый проект?
    Да и какая разница какого характера проект?
    Вопрос удобства и профессионализма.
    Дык я ж не против гита и пр. Для профессиональных коммерческих проектов это оправданно. "Морской бой" это такая штука, которую делали многие в качестве лабы, и на гит не выкладывали, потому что это нонсенс. Потому что не будет никаких версий. Потому что не будет никакого развития в профессиональном смысле(оно никому ненужно). Это просто учебный курсач. Проект задумывался для показа того, как легко и просто без оопного выпендрёжа можно сделать проект средней сложности.
    -------
    Сейчас много побочных дел, время горячее, поэтому могу уделять только по часу, поэтому вяло движется. Однако вывод в консоль сделан.
    Запись от CoderHuligan размещена 12.06.2019 в 18:21 CoderHuligan вне форума
  17. Старый комментарий
    Аватар для Usaga
    Какой профессиональней коммерческий проект? На том же гитхабе тупо удобнее ихсодники ревьюить, чем в сравнении с архивом, комменты оставить можно, на историю коммитов посмотреть. Да и сами вы написали "давайте напишем". А когда больше одного участника, то такие вещи ка git становятся удобными, даже, если работа идёт над одним единственным файлом.

    Это было бы очевидно, будь у вас за плечами не нуль проектов, о дофига учитель.
    Запись от Usaga размещена 12.06.2019 в 19:03 Usaga вне форума
  18. Старый комментарий
    Аватар для CoderHuligan
    Цитата Сообщение от Usaga
    На том же гитхабе тупо удобнее ихсодники ревьюить, чем в сравнении с архивом, комменты оставить можно, на историю коммитов посмотреть. Да и сами вы написали "давайте напишем".
    Дык мой проект ведь весь на goto будет. Как такое на гит выладывать? Засмеють))
    Цитата Сообщение от Usaga
    Это было бы очевидно, будь у вас за плечами не нуль проектов, о дофига учитель.
    У меня дофига имкроутилит. Ну, а если не нравится моя школа жизни, то переходите в другой класс, к другому учителю.
    Запись от CoderHuligan размещена 13.06.2019 в 13:51 CoderHuligan вне форума
  19. Старый комментарий
    Аватар для Usaga
    Никто не засмеет. Кроме нескольких человек. Речь же шла о том, чтобы показать, что в вашем стиле можно написать хоть что-то и не офигеть от жуткой лапши. Вот и покажите это. А люди оценят и покоритекуют.
    Запись от Usaga размещена 13.06.2019 в 14:43 Usaga вне форума
  20. Старый комментарий
    Аватар для bedvit
    Читаю все это, много букв, а толку нет. Нужно сразу выложить на репозиторий или здесь в теме какой либо проект, а далее обсуждать (возможно дорабатывать). И проект, ИМХО, должен быть простой, но показывающий работоспособность и конкурентность стиля goto. Потому, как на большой проект нужно время и все это стухнет еще на реализации логики.
    CoderHuligan выложите что-то простое, что бы уже сейчас можно было предметно общаться.
    Запись от bedvit размещена 13.06.2019 в 15:12 bedvit вне форума
 
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru