Ответы пользователя по тегу Программирование
  • Одинаковые куски кода в разных классах допустимо или нубство?

    @dude2012
    Дело даже не нубстве. А в практической составляющей. Лучше один код исправить, чем два. Но на самом деле это не так страшно, как забыть исправить второй код, если исправил первый.. Поэтому, чем меньше исправлений, тем лучше - меньше головной боли, меньше потенциальных ошибок. Грабли могут сильно ударить по голове, не в этот раз, так в следующий. Лучше иметь хорошие привычки.
    Рекомендую "Рефакторинг" Мартина Фаулера почитать, там много примеров на эту тему.
    Как раз убрать дубли - это рефакторинг.
    Ответ написан
  • Как написать что то подобное (подробнее внутри)?

    @dude2012
    В каждой операционной системе есть набор базовых контролов (ListView, TreeView, Panel, Image, Tab, SpinEdit etc) и API (Application Programming Interface) для их обработки. Каждый высокоуровневый язык имеет библиотеки, который адаптируют эти API вызовы в свои классы. Так же у многих языков (средств разработки) есть свой конструктор форм. Контролы кидаются на форму, в редакторе свойств выставляются нужные значения, а на нажатия кнопки и другие события вешается код. Сейчас программировать достаточно просто. Накидал контролов на форму, уже почти готовая программа.
    Это что касается интерфейса.
    Для хранения файлов игр используется свой формат. Очень часто используются классы для архивации. То есть файл с картой представляет из себя архив данных, каждый файл из которых имеет свой формат. А может быть используется стандартные типы файлов, как, например, png. Классы внутри программы читают файлы и отрисовывают их в соответствующих структурах интерфейса. Один файл в TreeView другой в ListView и так далее.
    Ответ написан
  • Насколько популярны рекурсивные функции?

    @dude2012
    Как пример дерева:
    1) Рекурсия используется для обработки файлов в каталоге.
    Сначала обрабатываются файлы, потом рекурсивно обрабатываются каталоги.
    Ну и не только файлы, а вообще структуры организованные подобным образом.

    2) Локализация контролов. На панели контролы, среди которых есть другие контролы и панели. Надо поменять название контрола на значение из словаря.

    3) Тэги и объекты в документе. (XML и прочее)

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

    5) Различные каталоги с подкаталогами товаров.. (когда вложенность жестко не задана и уровней достаточно много)

    Короче говоря это базовое знание, применяемое весьма часто. Без его знания сложно стать спецом, а когда оно понадобиться сказать сложно, может сейчас, а может и никогда.
    Ответ написан
  • Как работать с спец символами Delphi?

    @dude2012
    нечитабельные символы имеют ASCII код < 32 . Получить код символа можно функцией Ord, остальные символы можно по ASCII таблице глянуть. Среди них есть псевдографика, но почти всё читабельное.
    Короче, пробежаться в цикле и добавить все символы с кодом больше 32. В FAR или cmd можно набрать Alt+0 на дополнительной клавиатуре (вот не помню там намлок выключен или включен должен быть) alt+1, alt + 2... как раз отобразятся Ваши символы :)
    Буби это alt + 4, ASCII код символа равен 4
    Ответ написан
  • Как извлечь файл из jpeg?

    @dude2012
    Копните в сторону какого-нибудь exif reader'а. В тэгах tiff exif можно прошить тамбнейлы и текстовые файлы. Нужно что-то такое, что в RAW формате с точностью до каждого тэга выдает. Потому что есть проги, которые только основную инфу по exif выдают.
    Ответ написан