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

    @asd111
    Я бы советовал вместо псевдокода взять java или python . Тк псевдокод все равно надо во что то переводить. И никакого русского языка, т.к. эти знания уйдут на помойку. Сейчас питон и жаба по сути стандарт псевдокода.
    Ответ написан
    Комментировать
  • Что делать, когда умеешь программировать, но нет идей?

    @asd111
    Дарю идею как заработать миллион.
    Сделай копию китайского deep fake проекта zao. И станешь миллионером 100%
    И в целом не пытайся что то придумать просто копируй то что приносит деньги.
    Ответ написан
    7 комментариев
  • Как правильно оценить скорость работы?

    @asd111
    Есть решение из компьютерной графики. Засекаешь время перед обработкой одной строки данных и после.
    Допустим на 1 строку данных ушло 100 мс теперь делишь 1000 мс на 100мс и получаешь скорость 10 строк в секунду.
    Результат можешь обновлять раз в секунду или реже.
    Ответ написан
  • Книги по работе с памятью?

    @asd111
    Для винды погугли readprocessmemory и writeprocessmemory. И ещё погугли "как читать память другого процесса" там все написано.
    Ответ написан
    Комментировать
  • Как cделать озвучку убийств в игре Apex Legends?

    @asd111
    Есть 3 варианта.
    1. простой. Берём python, pytesseract, mss. С помощью mss делаем скриншоты нужной области 5 раз в секунду или чаще. В этой области с помощью pytesseract ищем числа. Потом желательно это переписать на С чтоб было быстрее.
    2. Средний. Берём chemax и ищем в памяти адрес переменной которая показывает количество убийств. Потом пишем программу которая отслеживает эту переменную и играет звук. Тут могут быть проблемы т.к. адрес переменной может меняться.
    3. Сложный. Пишем DLL которая будет отслеживать через directx функции на отрисовку числа и заменять её на нашу функцию с музыкой. инжектим эту dll в игру. Так работают все читы.
    Ответ написан
  • Чем опытнее разработчик, тем меньше соблюдается принцип KISS?

    @asd111
    То что ты назвал - repository, service layer, provider это не так сложно как кажется.

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

    Service layer - прослойка между контроллером и репозиторием, обычно один класс для каждой модели(репозитория). Здесь обычно пишут обработку данных полученных из репозитория чтобы потом можно было сразу вставить во view. Как правило в service layer есть методы create read update delete - как в контроллере и в них пишут ту логику, которую обычно писали в контроллере только без привязки ко view.

    Sevice Provider - некий код который кочует из проекта в проект и делает например авторизацию пользователя или кеширование. В Laravel есть свой механизм service provider.

    Как правило service layer и repository добавляют чтобы всю логику класть туда и сохранить модели и контроллеры очень простыми. Например в методах контроллера может быть банальный вызов методов service layer с привязкой ко view и больше никакой логики.

    Посмотри вот этот пример https://blog.eduonix.com/web-programming-tutorials... и сразу станет понятно.
    В этом подходе нет ничего сложного иначе никто бы не пользовался.
    Можешь сам попробовать написать тот же блог но только с service layer и repository - это проще чем кажется.
    Ответ написан
    Комментировать
  • Существует ли лаконичное описание математики?

    @asd111
    В машинном обучении достаточно знать интегралы, матрицы и статистику - это простые области математики.
    Математику лучше всего учить на решении примеров и задач. Теорию по математике трудно понять, зато легко запомнить какую задачу как решать.
    В машинном обучении тоже трудно понять и запомнить всю теорию, зато легко запомнить как решать какие задачи.
    Советую сконцентрироваться на решении задач.
    Ответ написан
    Комментировать
  • Не могу определится android или php?

    @asd111
    В андроиде довольно быстро происходит рост от джуна к мидлу потому что там мало что есть в плане технологий - это если не заниматься играми, игры на андроиде это уже совсем другая сфера с другими требованиями к знаниям.
    Если php совсем не интересен то займись андроидом. Просто не говори никому что у тебя нет опыта работы, сделай пару копий простых приложений из play market и все, вот тебе и опыт работы.
    Ответ написан
    Комментировать
  • Какой язык выбрать инженеру за 40?

    @asd111
    php + laravel или symfony. Там по ходу изучения документации обычно делается какой то сайт, поэтому по окончании изучения у вас будет работающий несложный сайт и его можно будет показать работодателю.
    Главное в php никогда не идите работать с битриксом и другими CMS - это очень плохо спроектированные системы в которые трудно вносить изменения.
    Ответ написан
    4 комментария
  • Есть ли практическая польза от книги sicp?

    @asd111
    Такие вопросы задают неадекваты. sicp довольно общая книга, можно не читать. Даже в MIT эту книгу больше не читают. https://habrahabr.ru/post/282986/
    Не обращай внимания на такие собеседования, неадекваты на собеседованиях большая редкость.
    В целом вопросы на собеседовании соответсвуют тому что указано в вакансии.
    Если спрашивают дичь, которая не имеет отношения к твоим обязанностям, значит коллектив так себе и заставят писать фронтенд на лиспе или что то в таком духе.
    Ответ написан
    5 комментариев
  • Как объяснить человеку, что ему нужно знать язык досконально?

    @asd111
    Лучше расскажи ему чтобы хорошо изучил популярные алгоритмы и структур данных и знал как работать с многопоточностью и асинхронностью и ещё пусть изучит популярные паттерны такие как MVC, MVVM и ещё пусть изучит как грамотно работать с разными БД т.е. с реляционными и с NoSQL т.к. у каждого подхода свои плюсы. От этого действительно зависит уровень программиста и зарплата.
    А кто и когда создал язык - не суть.
    Ответ написан
    Комментировать
  • Возможно ли создать программу путем перебора символов в файле?

    @asd111
    Можно даже посчитать какова вероятность.
    У нас 1 млн строк, в каждой строке пусть по 80 символов итого 80 млн символов на файл.
    Допустим мы используем 60 символов из тех что есть на клавиатуре. Т.е. в каждом месте файла может быть один из 60 символов с клавиатуры.
    Получим количество возможных вариантов файлов 60 в степени 80 млн.
    Т.е. вероятность написать таким способом нужную программу равна 1 / 60 в степени 80 млн.
    Ответ написан
    Комментировать
  • Что нужно изучить чтобы найти олимпиаднику работу?

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

    Задачи, которые вы будете решать на работе, будут почти всегда проще чем олимпиадные. В machine learning конечно задачи будут похожие по сложности.

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

    5 февраля стартует бесплатный курс по машинному обучению на русском языке от open data science и mail.ru https://habrahabr.ru/company/ods/blog/344044/
    Ответ написан
    Комментировать
  • Как посчитать строки на С?

    @asd111
    /* C Program to count the Number of Lines in a Text File  */
    #include <stdio.h>
    #define MAX_FILE_NAME 100
     
    int main()
    {
        FILE *fp;
        int count = 0;  // Line counter (result)
        char filename[MAX_FILE_NAME];
        char c;  // To store a character read from file
     
        // Get file name from user. The file should be
        // either in current folder or complete path should be provided
        printf("Enter file name: ");
        scanf("%s", filename);
     
        // Open the file
        fp = fopen(filename, "r");
     
        // Check if file exists
        if (fp == NULL)
        {
            printf("Could not open file %s", filename);
            return 0;
        }
     
        // Extract characters from file and store in character c
        for (c = getc(fp); c != EOF; c = getc(fp))
            if (c == '\n') // Increment count if this character is newline
                count = count + 1;
     
        // Close the file
        fclose(fp);
        printf("The file %s has %d lines\n ", filename, count);
     
        return 0;
    }
    Ответ написан
    Комментировать
  • Как подготовиться к олимпиаде(региональный этап)?

    @asd111
    Хорошие лекции на эти темы у Андрея Станкевича:
    Динамическое программирование https://youtu.be/iKj-xI4enLw
    Графы, обход в глубину и в ширину(вроде бы) https://youtu.be/npV3mOIZJNc
    Обход графов подробнее, алгоритм Дейкстры https://youtu.be/IjLHY5U4y2c
    Можно посмотреть любые другие лекции на эти темы. Там примерно одно и то же.
    Ответ написан
    Комментировать
  • Предпринимательский подход к разработке и программированию - как развивать, что именно прокачивать?

    @asd111
    В провинции основной IT бизнес - интернет магазины, веб студии, 1С и всё что с этим связано.
    1. По интернет магазинам. Можешь поискать в своём регионе у кого нет интернет магазина или сделано плохо и предложить им купить у тебя интернет магазин. Либо можно сделать большой агрегатор интернет магазинов для своего региона наподобие яндекс маркета или амазона, но только в рамках своего региона. И потом предложить купить место в этом агрегаторе за 2-5000 в год.
    2. 1С . Предлагаешь все услуги связанные с 1С, в том числе бухгалтерский аутсорс. Находишь исполнителей, делаешь свое ООО с капиталом 10к руб.
    3. Делаешь свою веб студию с друзьями. Нанимаешь знающего друга менеджером по поиску клиентов, в том числе на иностранных биржах, и работаете с друзьями. Для провинциальных веб студий часто основными клиентами становятся московские веб студии, которые скидывают свои проекты на аутсорс.
    4. Переезжаешь в Москву и устраиваешься менеджером IT проектов. И скидываешь все заказы на выполнение в свою фирму в провинции.
    Ответ написан
    Комментировать
  • Почему в программировании столько математики?

    @asd111
    Математика активно используется не во всех областях программирования.
    Меньше всего математики в вебе и мобильной разработке.
    Больше всего в компьютерной графике, машинном обучении, мат. моделировании и т.п.
    Ответ написан
    Комментировать
  • Учить ли c++ в 2018. Для знающего C#?

    @asd111
    Учи алгоритмы и структуры данных. Потом почитай про паттерны проектирования, потом учи всё что связано с машинным обучением(machine learning). Этого тебе хватит минимум года на 2 чтобы хорошо изучить. Это базовые знания в программировании, которые желательно знать каждому программисту если хочется сделать что то посложнее чем обычный сайт.
    Синтаксис это ерунда, любой синтаксис учится за 2 недели. Главное алгоритмы и структуры данных.
    С++ сложный, много тонкостей. Лучше используй С# и алгоритмы и структуры данных из книг реализовывай на нём.
    Из книг по алгоритмам могу посоветовать Вирта, Сэджвика, Кормэна - это три разные книги, выбирай любую.
    Ответ написан
    1 комментарий
  • Что изучать следующим в C++?

    @asd111
    Чтобы не было каши желательно прочитать книжку, при этом те темы которые знаешь можно просмотреть по диагонали.
    Если вы используете умные указатели(make_shared, make_unique и т.п.), move semantics( std::move и т.д.) и пишете шаблоны, когда надо(template ... - иногда скорость работы возрастает в несколько раз что очень обидно без шаблонов), можете написать многопоточность и знаете как использовать SIMD, то можно сказать что у вас довольно хорошие знания С++. Конечно остается много тонкостей наподобие вылетающих в рантайме эксепшенов в тот момент когда этого не ждёшь, но это приходит с опытом.
    Я вам советую глянуть исходный код на С++, который пишут в Yandex или в Google и trending.
    Если в исходниках что то не понятно, то именно это стоит подтянуть.
    Ответ написан
    Комментировать