Задать вопрос
  • Почему никто не учит C# но на каждом углу учат Java?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Тут пожалуй, важную роль в популяризации играет не возможности языка, а политика компаний, которые разрабатывают языки.
    Так исторически сложилось, что Java появилась раньше, чем C# и соответственно, к моменту появления C# уже было написано огромное количество проектов-миллионников. Также компания Майкрософт довольно долго (чуть ли не 8-9 лет) ограничивала применение .Net на других платформах из-за чего это тоже сыграло свою роль. Соответственно, определенная часть рынка в энтерпрайз была утеряна для C#. Но зато C# смогла утвердить себя в сфере gamedev (фреймворк Unity), а также в сфере desktop разработки. Но не стоит сбрасывать со счетов C# в энтерпрайз и веб сферах. На нем пишут довольно серьезные проекты.
    Думаю, что остальное лишь предпочтения разработчиков.
    Ответ написан
    4 комментария
  • Есть ли перспектива у WPF в обозримом будущем?

    DevMan
    @DevMan
    за три года спокойно может появиться совершенно новая платформа. вам дело делать или в гадалки играть?

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

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Хм ну начнём с того что любой новый офисный файл это zip архив содержащий кучу xml вот в них и прописано все. Руками править неблагодарное занятие есть библиотеки которые в разной степени упрощают это. А так ищите спецификацию pptx формата
    Ответ написан
    6 комментариев
  • Как в Chrome вернуть старый формат цвета?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    никак. это типа устаревший формат и больше его не будет. давно сам еще гуглил про это)
    https://stackoverflow.com/a/64425308
    Ответ написан
    Комментировать
  • Какой IDE выбрать вместо Borland C++?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    А почему не CLion ? Вроде тоже хороший IDE. Либо Visual Studio.
    Ответ написан
    Комментировать
  • Можно ли обойти CORS политику при отправке запроса на чужой домен?

    @Bob89991
    На домене alisanet.com должны быть прописаны разрешения для кроссдоменных запросов
    Ответ написан
    Комментировать
  • Как поймать фокус на input?

    @DanKud
    Во-первых типа события Focus не существует, нужно писать focus с маленькой буквы. Во-вторых вторым параметром нужно не вызывать функцию, а передавать ссылку на нее:
    var input2 = document.getElementById("input2");
    input2.addEventListener("focus", focusInput2);
    function focusInput2() {
        alert("Focus2");
    }
    Ответ написан
    Комментировать
  • Как поймать фокус на input?

    zendor
    @zendor
    В вашем примере ошибка: вы вызываете функцию focusInput2 в addEventListener вместо того чтобы передать ссылку на нее и она вызывает alert сразу же и возвращает undefined в addEventListener.
    const input = document.getElementById('input2');
    input.addEventListener('focus', function() {
      console.log('focus 2');
    });
    Ответ написан
    Комментировать
  • Какие риски может нести передача гостевого доступа яндекс вебмастера/метрики/директа фрилансеру?

    DeoZ
    @DeoZ
    Веб-разработка и Реклама
    Материальный вред этим Вам, вероятнее всего, нанести никак не смогут.
    Если прямо очень с подозрением отнестись, то:
    1. Могут использовать Ваши наработки в своей дальнейшей работе. Это если в аккаунте действительно есть что-то интересное.
    2. Могут сделать скриншоты со статистики и предоставлять как свои кейсы. Опять же если там есть чем гордиться.
    3. Могут завладеть инсайдерской информацией. Этого иногда боятся крупные корпорации, так как стоимость перехода и стоимость лида напрямую завязаны с бизнес-показателями, которые конфиденциальны.

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

    ValarMayar
    @ValarMayar
    Д У Р А Ч О К / недопрограммист графоман
    Да толком никак. Тем более python..
    Ответ: НИКАК.
    Ответ написан
    2 комментария
  • Как вывести массив в обратном порядке?

    Kr0nic
    @Kr0nic
    Пишу код за еду
    Array.Reverse(array);
    или
    array = array.Reverse().ToArray();

    Ах да. Еще и вывод в консоль можно в Linq переделать
    array.ToList().ForEach(x => Console.Write(@"{0} ", x));
    Ответ написан
    Комментировать
  • Почему не виден файл Hosts?

    @evgzap Автор вопроса
    РЕШЕНИЕ.
    ПКМ по etc -> Свойства -> Безопасность -> Дополнительно -> Владелец и напротив синяя надпись: изменить -> Дополнительно... -> Поиск -> все(весьма опасно, но если грамотно юзать дальше пк - сойдет) -> Ок -> Ок -> Ок-> в окне свойств (вы должны находиться здесь после всех нажатий окей) нажать Изменить.... -> и поставить галочки в администраторы и пользователи напротив надписи
    полный доступ

    После этого я все равно не видел самого файла, хоть и доступ теперь есть. в этом был виноват какой-то троян или прочий вирус.
    Создаем на рабочем столе файл hosts без расширения и переносим в папку etc, Вам предложат заменить файл. Соглашаемся. Вуаля, файл виден, имеется доступ, а все ради OpenServer и одной строчки кода в php....
    Будьте аккуратнее с вирусами.
    Ответ написан
    2 комментария
  • Возможно ли написать скрипт для принудительного отключения пользователя от WiFi?

    Это элементарно скриптуется. Вот такая команда добавит в шедулер скрипт, который будет запускаться каждые 20 секунд и удалять регистрации клиентов, неактивных более 150 секунд:
    /system scheduler add interval=20s name=unreg_inactive_wifi_clients on-event="/interface wireless registration-table remove  [ find  last-activity > 150 ]"  start-date=jun/01/1970 start-time=00:00:00
    Ответ написан
    Комментировать
  • Как правильно в ReactJS отрисовывать компоненты и показывать загрузку, при запросе данных со стороннего ресурса?

    @vs101ff
    Frontend разработчик
    Я не очень помню React.JS классовый, боюсь ошибиться.

    Поэтому могу просто порекомендовать пример с хуками: https://github.com/kentcdodds/react-hooks/blob/mai...

    Здесь описание: https://github.com/kentcdodds/react-hooks/blob/mai...

    Классовый React.JS сейчас не используется (используется только в поддержке старых компонентов).
    И вообще, я думаю, вам определенно стоит пройти курс https://epicreact.dev/ , а классовый React.JS миновать.
    На github есть репозитории с *.md материалами, их и блога более чем достаточно, и то, все не нужно.

    Предупреждаю, у меня нет коммерческого опыта разработки React.JS.
    Несколько позже, если нужно, скину статьи из документации, которые, на мой взгляд, необходимо изучить после курса Кента Доддса.

    Отрывки по Software Design:

    https://www.livelib.ru/book/1003548149-refaktoring...

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


    Мы структурируем программы, чтобы облегчить внесение в них изменений;

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



    Когда я сталкиваюсь с кодом, который имеет дело с двумя разными задачами, я ищу способ разделить его на отдельные модули. Я стараюсь выполнить такое разделение, поскольку, если мне нужно будет вносить изменения в программу, мне придется иметь дело с каждой задачей в отдельности и не потребуется держать их обе в голове. Если мне повезет, то, возможно, будет достаточно внести изменения только в один модуль без необходимости запоминать детали другого.



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



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


    И главы 1 - 4.

    Из книги https://www.ozon.ru/context/detail/id/136939101/

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

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


    Но нужно спрашивать себя:
    не приведут ли меня принципы и паттерны в мир ненужной сложности (overengineering): стал ли мой дизайн после внесения изменений проще? Не решаю ли я проблему, которой на самом деле не существует?
    Не попал ли я в сети преждевременного обобщения (premature generalization)?


    Полезно будет пройти часть 4.

    https://kentcdodds.com/blog/when-to-break-up-a-com...

    Совершенный код С. Макконнелла, я читал с с. 76 по с. 152, про остальное ничего сказать не могу.

    Р. Мартин Чистый код, я читал Функции, Содержательные имена и Обработка ошибок, про остальное аналогично, не знаю. SOLID у него плохо объяснен.

    Понравившиеся проекты:
    UI библиотека для CMS Sanity https://github.com/sanity-io/design
    CMS Sanity (Фронтенд код сейчас в процессе перехода на @sanity/ui. Наверное, будет лучше изучать по pull request'ам) https://github.com/sanity-io/sanity

    По чтению кода: https://www.youtube.com/watch?v=6J4ZejMsKKY

    P.S. Не знаю, что из этих книг нужно для Junior Frontend разработчика. Мое мнение лучше воспринимать на половину серьезно, т. к. я где-то между Junior и Middle). Работал к этому времени только в бэкенде.
    Ответ написан
    1 комментарий
  • Есть ли аналоги vc.ru?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    Ответ написан
    Комментировать
  • Как выйти в интернет по определенному интернет-соединению, если имеется несколько интернет-соединений?

    ValdikSS
    @ValdikSS
    Если вам нужно только подключаться к удалённым хостам из программы (а не принимать входящие соединения), и если программа использует только TCP (а не UDP или другие протоколы), то достаточно соединение (сокет) за-bind-ить к конкретному сетевому интерфейсу или конкретному IP-адресу.
    Этот способ универсален и прост, работает в Windows и Linux, не требует дополнительных настроек, помимо наличия маршрутов по умолчанию для всех интерфейсов (метрика значения не имеет).

    То, что вам пишут выше, про маркировку пакетов и назначения конкретных маршрутов — альтернативные, более «правильные» способы, подходящие для более общих случаев, но сложные в настройке.
    Ответ написан
    1 комментарий
  • Как выйти в интернет по определенному интернет-соединению, если имеется несколько интернет-соединений?

    @mprog54
    Кокон тыжпрограммиста
    ForceBindIP (https://soft.mydiv.net/win/download-ForceBindIP.html)
    Консольная утилита под Windows для принудительного назначения сетевого интерфейса приложению.

    Варианты использования:
    1. По умолчанию
    Создать ярлык к вашей программе со строкой запуска:
    ForceBindIP 192.168.1.1 c:\Program.exe
    Где 192.168.1.1 - локальный IP нужного интерфейса а c:\Program.exe - путь к папке с программой.
    Вместо IP можно указать GUID сетевого интерфейса: прим. {E9DE0D15-CA8D-4E41-8F37-79461FCA515C}
    2. Через код
    Создать функцию на C#, которая выведет список сетевых интерфейсов с их IP адресами. После чего, перезапустить своё приложение через команду запуска (пример в п.1). ForceBindIP.exe положить в папку со своей программой.
    3. GUI интерфейс на Java (https://sourceforge.net/projects/forcebindip-gui/)
    Открываете GUI и щелкаете мышкой :)

    P.S Если вы хотите сделать свои домашние мобильные "носки" под SMM, директ и т.п, при больших объемах советую всё-же воспользоваться известными сервисами (если интересно, пишите в личку).

    Reference:
    https://soft.mydiv.net/win/download-ForceBindIP.html
    https://translate.google.com/translate?hl=ru&sl=zh...
    forum.oszone.net/post-2830221-36.html
    https://sourceforge.net/projects/forcebindip-gui/
    https://qastack.ru/superuser/410483/can-i-route-pr...
    https://forum.ixbt.com/topic.cgi?id=14:30017:926#926
    Ответ написан
    Комментировать
  • Есть ли книги с систематизированным изучением C#?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    В основном изучаю язык по бесплатным видео урокам в ютубе. К сожалению после таких видео информация не всегда разбивается на отдельные полочки в голове, а превращается в кашу из разных тем

    Нельзя изучать языки по роликам в ютубе!
    Ты машину водить тоже учишься по роликам в ютубе?

    Шилдт Г. Полное руководство С#4.0. Отлично пишет для новичков.

    Далее - Троелсен. Troelsen_C# 2010 and the .NET 4 Platform. Средний уровень.

    Финал - Рихтер. CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#. Это для спецов скорее по внутренней реализации, явно не для начинающих.
    Ответ написан
    11 комментариев
  • Как выйти в интернет по определенному интернет-соединению, если имеется несколько интернет-соединений?

    Jump
    @Jump
    Системный администратор со стажем.
    Можете указать конкретный шлюз и трафик пойдет через него.
    Можете указать маршрут на конкретный адрес - через нужный интерфейс.
    Можете использовать файервол, маркировать нужные пакеты и отправлять через нужный интерфейс.
    Ответ написан
    3 комментария
  • Как выйти в интернет по определенному интернет-соединению, если имеется несколько интернет-соединений?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    В Linux есть возможность оперировать маршрутизацией для маркированного трафика через пакет iproute2.
    Если вы сможете промаркировать трафик от конкретного приложения, например через iptables -j MARK, то потом его можно будет "перемаршрутизировать" на любой исходящий интерфейс.
    Ответ написан
    1 комментарий