Ответы пользователя по тегу Программирование
  • Необходимые знания для embedded developer'a?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    В крупном ембеддед очень часто встречается С++

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Гуглите hex редакторы, например HIEW
    Ответ написан
    Комментировать
  • Как реализовать генерацию Ворд документа?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    А обязательно генерироваьт ворд документ?
    Почему не text/rtf/html/pdf?
    Ответ написан
  • Программирование - что для старта выучить ребенку?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    С того возраста, когда ребенок начинает интересоваться.
    Начинать с того, что проще дать самому.

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Общее понимание архитектуры в IT - есть такой термин computer essential.

    Ну и технологии - как работает IP, как работают процессы, как работает операционная система, что такое и как работает драйвер.

    Сам язык программирования - это только азбука.
    Ответ написан
    Комментировать
  • Как работают видеоредакторы?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Видео кодируется уже из готовых кадров. Популярные видеокодеки не работают с векторной графикой, работают с обычным растром.
    То есть сперва из 3д моделей и векторов создается набор обычных растровых картинок нужного разрешения, чаще всего даже рендерится видео с использованием какого-нибудь lowless кодека, который работает максимально быстро, жмет не так сильно но все же уменьшает нагрузку на носители.

    А затем уже такое видео может пережиматься стандартным двухпроходным, например h.264, и упаковываться в подходящий контейтер, например .mkv или .avi
    Ответ написан
    Комментировать
  • Какой язык выбрать инженеру за 40?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Язык программирования выбирается для задачи.
    Не знаю, в каком направлении вы инженер, но может имеет смысл посмотреть в сторону Ардуино и создавать устройства?
    Ответ написан
    2 комментария
  • CGI это просто функция обработки данных из формы на сервере?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Для таких вещей как php, есть готовые встроенная библиотека, поэтому обработчик на php может работать быстрее (просто за счет того, что интерпретатор уже в памяти в виде библиотеки, и передача данных из веб-сервера в обработчик и обратно выполняется быстрее).

    А протокол CGI позволяет писать обработчик на чем угодно, лишь бы оно могло запуститься на операционке, где крутится твой веб-сервер.
    Ответ написан
    Комментировать
  • Как программировать анимации?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Обычная анимированная гифка.

    Создать такую можно либо долго и сложно с нуля в каком-нить редакторе видео или 3д-аниматоре, либо просто готовым сервисом в дебрях инета, например вот таким:

    https://icons8.com/animizer/ru/animated-text
    engfto.com/index/animated_labels_logo_breaking_up_...
    Думаю, если погуглить, то можно найти инструмент, которым эффект по вашей ссылки делается за пару минут без каких-либо специальных знаний.
    Ответ написан
    Комментировать
  • Используется ли сейчас микропрограммирование/микропрограммы?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Не путайте микропрограммы (в основном это прошивки разных устройств, которые сложно назвать операционной системой)
    И микрокод процессоров
    https://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BA%D...

    p.s. а .exe файл действительно содержит бинарный код (машинный код), но кроме этого .exe файл, в отличие от .com файла это контейнер со сложной внутренней структурой, которая позволяет хранить и код программ, и данные (текст, диалоги) и графику (иконки и др) и в принципе вообще любой контент.
    Ответ написан
    Комментировать
  • Что значит запись аргументов в функции вида function(num1[, ...[, numN]])?

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

    то есть
    function(num1[, ...[, numN]])
    говорит, что это может быть и
    function(1) и function(1,1,1,1,1)

    А например запись типа:
    function (x, y[, z])
    означает, что x,y - обязательные параметры, z необязательный. Поэтому можно вызвать и
    function (1,2) и function(1,2,3), но не function(1,2,3,4)
    Ответ написан
    Комментировать
  • Есть ли разница между регулярными выражениями в Swift и JS?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Исторически сложилось, что регулярные выражения развивались и переписывались разными людьми.
    Есть несколько стандартов (basic regexp, extended regexp, PCRE).

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Слепая печать не нужна, а полезна.

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Упоминая Теорему о бесконечных обезьянах, большинство совершенно не способно представить себе неограниченное время.

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Достать дизассемблер для конкретно этого микроконтроллера.
    Ответ написан
    2 комментария
  • Как запустить одну программу при запуске другой?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Нет таких методов в ассемблере. Ваша постановка задачи вообще с ассемблером не связана.
    Изучите для начала программирование вообще, а потом ставьте задачи, поскольку сейчас ваш вопрос звучит некорректно.
    Ответ написан
    Комментировать
  • Как начать чтение файла с определенной строки?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    1. Ваш вариант вполне подойдет - делаете строки одинаковой длины и перемещаетесь на нужное смещение.
    2. Делаете еще один файл, в котором указываете номер строки и позицию в файле. Называется индексирование, и пользуетесь им. Естественно этот еще один файл гораздо меньше.
    Ответ написан
    Комментировать
  • Почему 16-ричная система счисления такая популярная?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "IP, цвета и куча всего. Я имею ввиду что она же довольно "кривая" (ну то есть не какое нибудь круглое число вроде 10, 20, 30) и даёт всего лишь +6 цифр."

    что значит кривая? круглые числа вроде 10, 20, 30 есть и в шестнадцатиричной. Просто они не десятки а шестнадцатки, и кривыми выглядят только при переводе в десятичную. То, что вы привыкли считать числа десятками, не означает, что десятичная система самая крутая.

    Шестнадцатиричная система появилась из-за того, что в байте 8 бит.
    могло быть
    или 1 (2 комбинации, мало)
    или 2 (4 комбинации мало)
    или 4 (16 комбинаций, все еще мало)
    или 8 (256 комбинаций - хватает на алфавиты, цифры и др)

    8-ричная система счета была в свое время популярна, но ее очень быстро стало не хватать, и быстро перешли на 16-ричную.
    Ответ написан
    1 комментарий
  • Чему учиться для работы из дома?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Для самостоятельного обучения прежде всего было бы неплохо обладать самодисциплиной и элементарными организационными способностями.
    Но если вы в 25 лет (уже приличный возраст), при наличии инета, готовых ответов на тостере/майл.ру/гугле и куче доступных бесплатных курсов, не знаете с чего начать - высока вероятность, что у вас самообразование будет идти очень плохо.
    Ответ написан
    5 комментариев
  • Почему в программировании столько математики?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Копирование файлика на уровне ОС - элементарная математика (байты перенести из одного места в другое), все числа целые, адресация простейшая.

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

    Программирование передачи данных по сети - плюс ко всему прочему шифрование, протоколы передачи данных, асинхронная передача.

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

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

    В общем алгоритмы, алгоритмы, алгоритмы.
    Как говорил Ломоносов, математику следует учить только за то, что она приводит ум в порядок.
    Ответ написан
    2 комментария