Задать вопрос
  • Существует ли язык программирования для юристов?

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

    MegaMufa
    @MegaMufa
    Я так понимаю, вы из Краснодара. Я сам из этого города и знаю о трудоустройстве в нем довольно много ибо на одной работе больше года не задерживался.

    Значит заходите на hh и отфильтровываете вакансии по городу. Выписываете контакты десятка самых крупных фирм. Только не вебстудий всяких. Пишете в каждую письмо с предложением работы у них с предварительным периодом обучения на понимежном окладе. Профит.

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

    Мне тоже 23 года. Без профильного образования. Первую работу (три года назад) нашел без проблем. Начал с 25к, через 5 мес получал почти 40к, на том же месте. Сейчас получаю 80к, но уже в другой фирме.

    Я вас понимаю, у меня тоже был психологический барьер чтобы начать. Думал, что я дурак и ничего не знаю. Потом жизнь приперла, срочно понадобились деньги - за 4 дня устроился программистом. А как потом оказалось, я знал больше своих коллег. Это я к тому, что разработчиками работает куча балбесов без вменяемых навыков и не парятся. Если у вас есть желание учиться и развиваться, скажите об этом потенциальному работодателю. Этот вариант будет выгоден и вам и ему.

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

    AxisPod
    @AxisPod
    1. Если кол-во аргументов одинаково, то они не должны быть неявноконвертируемы, это не критическая ошибка, но в случае, если вы дадите 3й тип, который неявно конвертируется в оба, то получите, что компилятор не может понять какой использовать. Вам придется явно приводить типы, можно решить шаблонами, но я бы не советовал.

    2. Не перегружайте с одним кол-вом аргументов числа и указатели, может привести к непредвиденному поведению в случае 0го значения. В случае использования nullptr (С++11) проблема не возникнет.

    3. Как указано у Antony , вы увидете сразу, будет ошибка компиляции.

    4. Для конструкторов в перегрузках старайтесь использовать explicit, спасёт в будущем от долгих поисков проблем. Применимо для конструкторов с 1 явным аргументом.
    Ответ написан
    Комментировать
  • Как передать метод класса в качестве колбэка?

    AxisPod
    @AxisPod
    Либо сделать статическим и убрать подсчёт операций, либо выносить переменную в глобальное пространство, либо никак. Если функция не имеет возможности получить метод объекта. Метод объекта прокидывается 2мя аргументами без варинтов, это адрес метода и адрес объекта.

    Есть еще вариант с использованием функтора или лямбды (по сути сахар для функтора).

    А на деле чем к примеру не устраивает std::sort? Он умеет принимать различные функциональные объекты, в том числе и функторы, а вот qsort никак не может принять объект.
    Ответ написан
    5 комментариев
  • Какие существуют современные аналоги "Искусства программирования" Дональда Кнута?

    MedVedar
    @MedVedar
    e-commerce developer
    Лучше работы пока нет и не предвидится. Да и в новых книгах все равно отсылают к Кнуту. Другое дело, что "искусство программирования" довольно сложное чтиво и не каждый с ним справится, если ты ищешь что-то другое по этой самой причине, то попробуй изучать алгоритмы вместе с Корменом.
    Ответ написан
    Комментировать
  • Как сгенерировать две формы с разными моделями в ASP.NET MVC 4?

    @bmforce
    Вариантов решения проблемы много: stackoverflow.com/questions/4764011/multiple-model...

    Как самый простой:
    @model Tuple<MvcApplication.Models.Post, MvcApplication.Models.Category>
    Ответ написан
    Комментировать
  • Где лучше создавать невидимые элементы управления?

    В принципе разница есть, но все зависит от того что вы хотите сделать.
    Если вы добавляете через конструктор, то он создается и инициализируется в Form1.Designer.cs при запуске формы.
    Если в коде, то там где хотите, когда хотите и как хотите.
    Если элемент один, то можно просто перетащить на форму, но если их 100500+, то намного проще будет инициализировать из цикла, попутно запихивая в какой нибудь массив.

    Стоит отметить, что добавленные компоненты в конструкторе умрут вместе с формой, а те что сделанные в коде будут жить пока их не уберет сборщик мусора или вы их не удалите.
    Ответ написан
    Комментировать
  • Почему стали популярны less, sass, ruby on rails, bower, grunt? И зачем они нужны?

    @Spaceoddity
    Почему стали? От лени и нежелания думать своим мозгом.
    Популярны они сталит благодаря продвижению Гуглом, Яндексом и иже с ними всяких "стандартов написания кода". При том, что и Яндекс и Гугл в этом плане очень далеки от идеала.
    Эти фреймворки хороши для сквозной разработки крупных проектов, когда все участники хорошо знакомы с данными методами, давно сотрудничают и т.п. Т.е. для тех же крупных компаний. При том, что в большинстве крупных компаний всё-таки имеются собственные стандарты.
    Ну а остальные уже, как обезьяны, подхватили. И требуют БЭМ, SASS, Angular для статичного одностраничника. Начинаешь выяснять для чего заказчику всё это надо - "а мне так наш дизайнер посоветовал"... Или когда берёшься доделывать чужой проект с кучей недоделанных хвостов в SASS - то ещё удовольствие и "оптимизация написания кода" - тупо вручную текстовым поиском приходится по фалам искать потерявшиеся переменные.
    Сама настройка, выработка общих стандартов и синтаксиса для этих фреймворков - занимает кучу времени.
    Так что по большому счёту вы ничего не пропустили. Браузеры все равно не понимают SASS и иже с ним))
    Пишите как вам удобнее. Если клиент настаивает - попробуйте выяснить причины такой настойчивости. Если случай клинический - шлите лесом!
    Ответ написан
    6 комментариев
  • C++ SFTP клиент/сервер как реализовать?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Через ProFTPD не устроит? Или надо обязательно построить свой велосипед? Тогда берёте описание стандарта и вперёд. Через WinInet доступны сокеты, их хватит, чтобы SFTP реализовать.
    Ответ написан
    3 комментария
  • Как перекомпилировать проект Microsoft Visual Studio?

    @Quanzi
    Разработчик .NET
    x86 - историческое название для 32-битной архитектуры.
    Цитата из Википедии:
    Название образовано от двух цифр, которыми заканчивались названия процессоров Intel ранних моделей — 8086, 80186, 80286 (i286), 80386 (i386), 80486 (i486). За время своего существования набор команд постоянно расширялся, сохраняя совместимость с предыдущими поколениями.

    Помимо Intel архитектура также была реализована в процессорах других производителей: AMD, VIA, Transmeta, IDT и др. В настоящее время для 32-разрядной версии архитектуры существует ещё одно название — IA-32 (Intel Architecture — 32).
    Ответ написан
    Комментировать
  • На чем в 50 лет можно зарабатывать?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    Чисто онлайн много чего можно для заработка найти в любом возрасте. Примеры:

    1) развивать сайты (есть 55-летний знакомый мужик, который этим занимается)
    2) писать статьи (нам про электропроводку пишет электрик 49 лет)
    3) модератор форумов специфичных узкотематических, в чем человек специалист

    Офлайн:

    1) АТС-ки настраивать
    2) Возиться с 1С или макросами к ворду
    3) Принтеры чинить и заправлять
    4) Научиться устанавливать и настраивать всякие сигнализации, системы видеонаблюдения
    Ответ написан
    7 комментариев
  • Как C++ обращаться из статического метода к нестатическим текущего класса?

    @monah_tuk
    Коротко: никак.

    Чуть более развёрнуто:
    статический метод класса практически не отличается от простой свободной функции. Отсюда наводка: если showDepFormCreate() будет просто свободной функцией, что будет вкладываться в понятие текущий класс? Так что или передавать инстанс или создавать внутри, зависит от того, что вам нужно. Хотя, чует моё сердце, что-то вы не так делаете.
    Ответ написан
    Комментировать
  • Как сделать так, чтобы три объекта sf::RectangleShape вставали в ряд(библиотека sfml, язык c++)?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    Зацепите ваши прямоугольники в иерархию и вращайте родительский.
    Ответ написан
    Комментировать
  • Как обеспечить безопасность данных при работе в публичном Wi-Fi в отелях?

    Bessome
    @Bessome
    Администратор Linux, Windows. 1С программист
    Для себя решил так: к домашнему серверу получаю тоннель через OpenVPN, с него уже хожу в интернет. На ноуте только клиент. Весь трафик шифруется уже на ноуте, расшифровывается на домашнем сервере. Настройка заняла час (вместе с изучением мануала).
    Что касается защиты - если у Вас супер-важная инфа идет по каналу, то скажу сразу - могут сломать и этот метод (собственно как и любой другой).
    Ответ написан
    Комментировать
  • С какого языка изучать программирования (с нуля)?

    @Espleth
    Большинство современных ЯП ИМХО имеют достаточно низкий порог вхождения, чтобы можно было начинать изучение с них, а не браться за какие-то более легкие. В том числе C#, C++ и Java. Вы правильно рассматриваете именно их. Напишу немного подробнее о каждом:

    C#: лично мне очень нравится этот язык. Перспективы хорошие, особенно учитывая то, что он транслируется в байт-код (как Java), что дает хороший потенциал для мультиплатформенности, а Microsoft потихоньку начинает развивать этот потенциал, открывая некоторые исходники. Язык относительно новый, благодаря чему обладает довольно чистым и красивым синтаксисом, и всяких костылей немного.
    Инди-геймдев на C# - это Unity3D. И хоть это очень хороший движок для игр практически любого жанра, но если он загнется, то другим движкам типа WAVE/Paradox будет тяжело тягаться с таким гигантом, как UE4.

    C++: практически универсальный язык. Если остановитесь на нем, то рекомендую осваивать вместе с Qt, так как получаете прекрасный кросс-платформенный фреймворк. Лично мне не нравятся плюсы за явные указатели и некоторые довольно костыльные решения, сделанные для того, чтобы сохранить обратную совместимость со старыми версиями языка.
    Геймдев на плюсах - Unreal Engine 4, CryEngine 4 например. Вполне возможно скоро к ним Source 2 присоединится. Это из "больших" движков. Есть еще куча поменьше, типа Cocos2d.

    Java: к сожалению, мало что о ней могу сказать, так как не особо ей интересуюсь. Из плюсов - востребованность на рынке. С Java не пропадете. Из минусов - вроде каких-либо "серьезных" игровых движков, где основной ЯП - Java нету.
    Ответ написан
    3 комментария
  • Что такое конкатенация битовых образов символов?

    @throughtheether
    human after all
    Что такое конкатенация битовых образов символов?
    Предполагаю, битовый образ строки определяется при помощи строкового "сложения" битовых образов символов. Например, при алфавите {A,B,C,D} и битовом представлении A:00,B:01,C:10,D:11, строка ABBA будет иметь представление 00010100.
    Ответ написан
    Комментировать
  • Как уменьшить системные требования игры на Unity3d?

    maaGames
    @maaGames
    Погроммирую программы
    Уменьшить рабочее разрешение
    Уменьшить разрешение текстур
    Уменьшить количество текстур
    Уменьшить детализацию 3D моделей (в том числе использовать LOD)
    Упростить шейдеры
    Ответ написан
    Комментировать
  • С чего начинать проектировать приложение?

    max-kuznetsov
    @max-kuznetsov
    Главный IT-архитектор
    Предположим, что с будущей функциональностью Вы определились. Тогда Вы точно знаете, кто или что будет поставлять данные, и кто/что будет их потреблять.

    Теперь выясните, кто будет обращаться к вашей системе, чтобы передать или забрать данные, а к чему будет обращаться Ваша программа. Те системы или пользователи, которые обращаются к программе сами, нарисуйте схематически на листе бумаги вверху. Те, к которым будет обращаться программа (включая БД), - снизу.

    Теперь нарисуйте под каждым нарисованным сверху субъектом прямоугольник с названием UI или API - это интерфейсы, к которым будет обращаться пользователь или внешняя управляющая система. Иногда UI тоже может обращаться к API. Объедините все прямоугольники с UI одним контуром и обзовите слоем UI. Объедините все прямоугольники с API и обзовите слоем сервисов.

    Для систем, нарисованных снизу, укажите компоненты, которые будут отвечать за доступ к этим системам. Объедините все эти компоненты одним контуром и обзовите слоем доступа к данным.

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

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

    Получите логическую архитектуру. Разбросайте слои по серверам - получите физическую архитектуру.

    А дальше - детально прорабатывайте каждый маленький квадратик. Всё.
    Ответ написан
    2 комментария
  • Как в С++ объявить массив объектов?

    @vilgeforce
    Раздолбай и программист
    Можете использовать оператор new[], можете - std::vector/std::list и помещать в него новосозданные объекты.
    Ответ написан