Ответы пользователя по тегу Программирование
  • Как система понимает какие глифы шрифта нужно вывести на экран для представления двоичного числа?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Система - это программа. Кто-то ее написал так, чтобы она распознавала цифры и выводила глифы.
    Ответ написан
  • Какой из вариантов Code Style правильный?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Правильный код - тот, который принят в проекте, чтобы все соблюдали единый стиль.

    Если пишешь сам себе - выбираешь какой лично тебе больше нравится.
    Ответ написан
  • Как изменять что-любо в программных проектах?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Большинство книг, которые выпущены вчера, базируются на знаниях, которые кто-то получал в 2004, поэтому даже в старых книгах всегда полно полезной информации.

    Что же касается изменений в проекте - так если вы умеете программировать - вы должны знать что менять. Если не умеете - не меняйте.

    Или уточните вопрос.
    Ответ написан
  • Забыл пароль от контейнера VeraCrypt. Как можно осуществить перебор по словарю?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    зачем библиотеки?
    Пишите на питоне генератор ваших строк и вызывайте командную строку veracrypt, типа так
    VeraCrypt.exe /v c:\myvirtualdiskfile /a /l x /p СГЕНЕРЕННЫЙПАРОЛЬ /q


    И проверяете смонтировалось или нет.
    Ответ написан
  • Возможно низкоуровневое программирование без математики?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Низкоуровневое программирование это просто программирование.
    Просто программирование не требует матана, достаточно стандартной арифметики.

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

    Но если у вас плохо со школьным образованием, это очень явный признак того, что вы учиться в принципе не любите и не умеете, а в ИТ сфере без этого вообще никак.
    Ответ написан
  • Бывает ли момент когда нет права на ошибку?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Нет такого, чтобы работало сразу после написания.
    Программа вообще не пишется с первого раза. Пишешь кусок, запускаешь, смотришь работает ли то, что написал. Пишешь дальше.
    Дописываешь юнит тесты, отлаживаешь.
    Готовый результат отдаешь уже после тестирования и отладки.

    А с первого раза - что значит нет права на ошибку? Именно из-за существования фактора человеческой ошибки были созданы целые институты SDLC, включающие науку тестирования, код ревью и так далее.

    Всегда есть право на ошибку. Вопрос только в цене ошибки.
    Ответ написан
  • У вас есть какие-то интересные идеи для проектов, на которые нету времени?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    кроссплатформенную читалку, которая хранит открытые книжки и текущую позицию в указанном месте (cloud, ftp, ssh, etc), чтобы можно было почитать на телефоне, потом перейти на ноут, потом дома на десктопе дочитать и все синкалось само.
    Ответ написан
  • Процессор на двоичных кодах везде? то почему нет спец универсального транслятора под тысячи процессоров? Или единого стандарта кода для всех цп?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Джава и питон не охватывают все консоли и смартфоны?

    Ну попробуйте написать свой скриптовый язык, который умеет выполнять хотя бы
    print "hello world";

    чтобы он работал хотя бы на 10 платформах.

    Но ведь двоичный код охватывает 99%?

    Почти 100%

    Значит слишком трудно создать все планетарный стандарт двоичного кода. ?

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

    Исполняемых Инструкций двоичных для всех процессов на планете единый стандарт?
    Или унифицировать все процессоры для совместимости тоже тяжело?

    Инструкции процессора это не просто код, это его внутренняя ФИЗИЧЕСКАЯ архитектура. Создатели пытаются сделать процессор быстрее, меньше, дешевле, с минимальным потреблением. Каждый в меру своего разумения, опыта и технических возможностей.

    Может конвертор добавить?

    Доступные вам языки программирования - это и есть конвертеры.

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

    А как быть с разными физическими устройствами? Я вот написал скрипт, который ждет, пока человек введет мне "yes" или "no", а его взяли и запустили на планшете, где клавиатуры нет?
    Или на холодильнике, где вообще ничего нет

    Чтобы не учить разные языки а просто в теле программы единого я.п. предусмотреть разные участки кода для разного железа.

    Ну вот железо СЛИШКОМ разное, и когда под ДОС именно программисты писали код для разного железа (разные аудио карточки, разные графические режимы ), а потом внезапно оказалось, что есть единый API типа directX, и операционка с драйверами дальше сама разберется что делать, программисты вздохнули свободно, потому что не нужно помнить о том, что производителей тех же аудиокарточек больше, чем лет жизни у программиста.

    Вообще с совместимостью старого кода на новом скромном железе- чипе.
    или супер мощном ЭВМ.. Это вообще никак ни в одном я.п. не предусмотрено?

    Обратная совместимость это всегда огромный технологический долг. Поддерживать его для отдельных моментов (типа PC Speaker или 5дюймовых дисководов) очень дорого.
    Ответ написан
  • Почему у приложений нельзя посмотреть исходный код?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Если вы про исполняемые файлы, типа exe, то в них исходного кода просто НЕТ. Почитайте что такое компиляция.

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

    А вообще, следует хотя бы немного почитать о том, как работает компьютер и программы на нем.
    Ответ написан
  • Есть ли в мире технарей направления которые не тускнеют десятки лет?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Так а какое направление потускнело? Направления наоборот только развиваются и ширятся.
    Ответ написан
  • Как научиться решать алгоритмические задачи и приучить себя к алгоритмическому мышлению?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Нельзя стать фехтовальщиком, почитав книги и посмотрев видяшки. Нужно потратить много времени на практику.

    По какой-то, совершенно непонятной причине, многие новички относятся к программированию, как к чему-то, что можно изучить теоретически и сразу пользоваться. Но нет.
    Нужно потратить МНОГО времени на практику.

    Поэтому:
    знаю и инструменты и знаю как должна работать программа

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    По-нормальному, локализация выполняется там, где заранее предусмотрена возможность локализации.

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Это не вопрос, а задание.
    Вдобавок, мне кажется что "Ольга", чью работу вы привели в примере, выполнила задание не поняв сути и смысла использования хешей.
    Если вы хотите, чтобы для вас кто-то что-то написал, то надо было идти на фриланс, но постановка задачи у вас невнятная - не видно, чтобы вы сами поняли, что нужно сделать, поэтому и на фриланс рано.
    Ответ написан
  • Как быть школьнику?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Я узнал от Стива, что главное в управлении компанией и в личной жизни — это сосредоточенность.


    Ну как только у вас будет своя компания и личная жизнь - начинайте сосредотачиваться. А до этого - делайте уроки.
    Ответ написан
  • Как работает стек?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Стек для того и нужен, что бы не брать значения "снизу".
    Стек полезен для рекурсии.
    Ответ написан
  • Какой буквой обозначить цикл?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Чтобы ваш код было проще читать, все итераторы должны быть осмысленны, например

    for(coordX = 0; coordX < 3; coordX++){
       for(coordY = 0; coordY < 10; coordY++){
      }
    }


    for(counter = 0; counter < 3; counter++){
       for(item = 0; item < 10; item++){
      }
    }
    Ответ написан
  • Можно ли начинать с питона?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Вам - нельзя.
    Будете постоянно метаться между языком, библиотеками, фреймворками, а в конечном счете еще и браузером, потому что результат скорее всего будет там, и будет тот же самый html/css/js только через питоновский фреймворк.

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

    P.S. Изучив один язык, всегда проще изучать другой. Но для этого нужно его изучить, а не попрыгать по верхам.
    Ответ написан
  • Как передать информацию на динамический массив программы?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    Для этого вам нужна не программа а исходный код программы, который можно поправить.

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    а тем, что тебе просто интересно придумывать алгоритмы к задачкам, интерфейс которых не выходит за рамки командной строки?

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

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

    Например напишите сортировку, которая будет работать быстрее, чем например quicksort (https://ru.wikipedia.org/wiki/%D0%91%D1%8B%D1%81%D...

    Напишите алгоритм архивации, который сожмет лучше чем хотя бы дефолтный 7zip, да хотя бы лучше чем дефолтный zip.

    Напишите свою реализацию криптования sha2

    А уже потом посмотрим, действительно ли вам нравится работать с алгоритмами, или вы прокрастинируете в тайне от самого себя.
    Ответ написан
  • Где может пригодиться физика программисту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    build engineer
    * Проводку в квартире рассчитать, чтобы знать где можно включить чайник и холодильник в одну розетку, а где у вас пробки выбьет прямо посреди раунда в дотку
    * Wifi расставить так, чтобы минимизировать влияние от соседей и максимально покрытие по квартире для своего wifi обеспечить
    * Понимать разницу между оптикой, ethernet, wifi, спутниковой связью, и благодаря основам в физике понимать где тут пинг а где тут пропускная способность влияет.
    * кроме геймдева и робототехники, физические движки помогают создавать удобный и красивый юзер интерфейс, с нормально двигающимися менюшками, с адекватной цветовой гаммой.
    * 3д графика есть не только в игрушках, есть еще видео - реклама, клипы, мультфильмы, фильмы

    P.S. Школькая физика вообще маст хев для любого, не только в ИТ мире.
    Ответ написан