• Как вывести 2 переменные с функции?

    Используй кортежи.
    public static (int, double) While3(double n)
            {
                double S = 0;
                int d = 10,
                    sumd = 200,
                    days = 1;
                while (S < sumd)
                {
                    days++;
                    S += d + (d * ( n / 100));
                }
                return (days,S);
            }

    Но умоляю, дай нормальные имена переменным и самой функции.
    Ответ написан
    2 комментария
  • Книги, чтобы понять ООП и Паттерны для начинающих?

    @mkone112
    Начинающий питонист.
    на основе JS учить ООП так вообще странно.

    *Миллионы разработчков освоившие ооп с динамическими яп, говорят...
    Да-да, привет динамическая типизация

    Мало кто внятно объясняет ООП

    кроме миллионов книг и индусов на ютубе
    на примере TS.

    Да без разницы, можешь и на Java примеры посмотреть.
    Не будем портить друг другу настроение.

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

    Никакие, ты сначала пишешь код, и когда понимаешь что уже не справляешься с его поддержкой - начинаешь искать способы это решить, ооп с паттернами - это один из способов. А сейчас ты пытаешься решить задачу, до того как она возникла, как ты собираешься понять решение проблемы, если не знаешь о проблеме?
    Ответ написан
    2 комментария
  • Как запустить проект на C# в Visual studio code?

    UPD всё что ниже уже не актуально. Microsoft обновили расширения для работы с C# и сделали свою нормальную инструкцию прямо внутри Vs code
    https://code.visualstudio.com/docs/csharp/get-started

    1. Устанавливаешь .net 6 SDK

    2. Устанавливаешь все нужные плагины:


    3. Создаёшь новый проект по гайду
    4. Открываешь в vs code папку с проектом
    5. Жмёшь на кнопку отладки и запускаешь
      (при первом запуске он может напомнить, что в отладчике есть декомпилятор, который нелегально использовать на чужих приложениях - соглашаемся с этим)
      603d3bb386701819998214.png
      Если что - выбираем .net Core
      603d3bf3168e0691109502.png
      В итоге появится нужная кнопка
      603d3c19c5f27607073624.png


    Чтобы запустить без отладки - нужно будет покопаться в launch.json, либо использовать консоль

    PS: Вообще, советую пользоваться полноценной студией - может она на первый взгляд и пугает, но она сильно удобнее, чем vs code. (ну и в ней всё работает из коробки, что важно для новичков)
    PPS: А ещё существует Rider - для профессионального разработчика он стоит копеечные 15$ в месяц, а для школьника или студента вообще бесплатен. При этом он даёт целую кучу полезных инструментов, особенно для геймдева, если он вам интересен.
    Ответ написан
    13 комментариев
  • Есть ли альтернативa Visual Studio для C#?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    JetBrains Rider - платно (можно пиратить, но проще просто поставить VS .Net Desktop)
    Visual Studio Code - бесплатно но функционал слабее
    и далее:
    Sublime, Notepad++ - с плагинами
    ...
    Notepad и компиляция командной строкой

    ps что бы не охреневать от веса присмотритесь к настройкам инсталятора. если ставить только .Net Desktop, то совсем не страшно на самом деле. а новичку обычно больше ни чего не надо.

    мало того - все что сверх .Net Desktop, вменяемо не обслуживается ни в одной альтернативной среде. ну разве что веб направление в JetBrains Rider.. ну Visual Studio Code.. но новичку в VS Code думаю будет не уютно

    pps можете смело урезать стартовую конфигурацию до набора
    как на скрине
    PR832pt.png
    , остальное, пока не поймете зачем - оно и не надо
    Ответ написан
    Комментировать
  • Как установить память на сервер?

    fdroid
    @fdroid
    press any key
    В характеристиках платы указано, что она поддерживает память UDIMM ECC. Если вы установили RDIMM ECC, то она не заведётся.
    Ответ написан
    1 комментарий
  • Как сохранить IP адрес клиента в локальной сети при запросе через внешний интерфейс?

    Jump
    @Jump
    Системный администратор со стажем.
    Как я понимаю, сделать это можно, только если отправлять запрос на HTTP сервер, минуя внешний интерфейс.
    Правильно понимаете.

    как это сделать без внутреннего DNS сервера?
    Используйте файл HOSTS вашего роутера, или компьютера.
    Добавьте туда запись вида vash_domain.com 192.168.1.200 и ходите по имени.
    Ответ написан
    Комментировать
  • Сравнение "буквенных" и "числовых" строк. Как происходит?

    Simkav
    @Simkav
    В вашем случае 123 не число а строка, при сравнении строк запускается цикл который переводит символ строки в юникод если не ошибаюсь, и сравнивается номер этих юникод символов
    P.S
    Ответ написан
    3 комментария
  • Изучать сразу 2 ЯП - плохая практика?

    Конечно можно.
    Если у вас уже нет проблем с циклами / условиями и есть понимание, чем отличается класс от экземпляра класса.
    Главное не пытаться писать на C#, как на JS и наоборот.
    Ответ написан
    Комментировать
  • Есть ли интересные Telegram-каналы по веб-разработке?

  • Как провести грамотный апгрейд сервера 1С?

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

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

    @LollyFox
    Без анализа можно только посоветовать SSD + увеличить ОЗУ - это минимум, чего точно не хватает серверу.
    А дальше садиться и настраивать PostgreSQL или переходить на MS SQL.
    Ответ написан
    Комментировать
  • Как провести грамотный апгрейд сервера 1С?

    @Maximus-nsk
    Конечно лучше перевести бд на ssd
    Также важно чтобы оперативная память работала в двух канальном режиме и ее должно быть с запасом и с максимальной поддерживаемой частотой. По поводу процессора - у вас предел, если начнут сразу запускать несколько отчетов в разных конфигурациях то проц может не вывезти(мало ядер и Кеша 3-го уровня). Подумайте над тем чтобы начать хотябы с перехода на ssd и добавить памяти с запасом в двух канале чтоб было. Если не поможет то тогда можно перейти на ксеон v3 серии (с Али экспресс можно купить не так дорого материнскую плату под два процессора и недорогую серверную память. )
    Ответ написан
    Комментировать
  • Насколько полное изучение Java c работой над реальными проектам поможет php программисту в его работе?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Несмотря на то что в вопросе немного каша, а в ответах - ад, ответ на вопрос, в общем-то, очевидный.

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

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

    Хайлоад же проекты - это из немного другой области. Тут идет откат скорее в обратном направлении. Это как с денормализацией - БД должна быть нормализована, но из соображений производительности иногда приходится денормализовывать. ПОСЛЕ того как нормализовал.
    SOLID помогает делать большие проекты управляемыми. Но когда большой проект сталкивается с высокими нагрузками, иногда приходится жертвовать принципами ради производительности. Но тут главное, опять же, не путать направление: СНАЧАЛА делаем правильный дизайн, и только потом в критических точках снижаем накал абстракции, переходим на более низкий уровень. Самый наглядный пример - ORM, когда критические запросы переписываются на чистый SQL.

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

    @historydev
    Редактирую файлы с непонятными расширениями
    Всё что хочешь делай, но не покупай аутист-курсы у челов, которые обещают слепить из тебя супер-залупер кодера, которого гугл с руками и ногами заберёт и это за 2 месяца или сколько там) Ютуб + гугл, на learn js мало того, что тебе реально пригодится, именно по задачам.
    Ответ написан
    5 комментариев
  • Как сделать одинаковый отступ вниз для всех кнопок?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Верставший фронтендер
    Вариантов масса, но, пожалуй, лучшим в данном случае будет:
    • сделать карточке display: flex; flex-direction: column;
    • кнопке - margin-top: auto;
    Профит - кнопка всегда прижата к низу карточки.

    Таким образом, если у контейнера карточек так же стоит display: flex, то все карточки в рамках одной строки будут всегда одной высоты, и в рамках одной строки все кнопки будут на одном уровне. При этом в каждой карточке может быть любое количество текста.
    Ответ написан
    Комментировать
  • Сохранение действий пользователя?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Например, можно сохранить в localStorage сайта,
    либо в localStorage фоновой страницы.
    Ответ написан
    1 комментарий
  • Как организовать резервное копирование Windows?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Во первых есть встроенная архивация - прекрасно работает, и без проблем делает снимок состояния системы из которого потом можно восстановить систему.
    Во вторых - есть прекрасная утилита Руссиновича disk2vhd которая без всяких заморочек делает образ указанных дисков.
    Причем имеет как GUI так и CLI, в общем можно делать по расписанию из батника образ. Еще этот образ удобен тем, что его можно моментально подключить к VM и загрузиться с него.

    В обоих случаях делается теневой снимок тома (снапшот), поэтому оно делается на лету, без перезагрузки и в любое время. Ну и разумеется копирование не посекторное - копируется только занятое файлами место.

    Например пользователю переставили систему с windows 7 на windows 10, и через неделю обраружилось что пользователь не помнит пароль от онлайн сервиса, в старой системе он был у него сохранен в браузере и нужен криптоключ и сертификат которые хранились в реестре старой ОС - загружаем виртуальную машину с резервного диска и вытаскиваем все, что нужно.

    На диске С: в Windows 10 есть файлы, жёстко привязанные к секторам, которые нельзя перемещать?
    Нет.

    Понятно, что все копируется, но вот заработает ли этот бэкап после восстановления?
    Все люди деляться на три типа
    • Те кто не делает бэкапы.
    • Те кто делает бэкапы
    • И те кто не только делает бэкапы, но еще и проверяет их.
    Ответ написан
    4 комментария
  • Не работает метод filter, что не так?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Всё так, всё работает. Между "не работает" и "работает не так, как я задумал" есть существенная разница, попытайтесь её осознать.

    Во-первых, чтобы результирующий массив был непустым, надо, как минимум, из коллбека фильтрации что-то возвращать. При использовании map'а - тоже. Кстати, а зачем map? Непонятно. Возможно, вместо него нужен some.

    Во-вторых - в dataset лежат строки, сравниваете их вы с числами. Без приведения типов. Очевидно, что результаты подобных проверок всегда будут ложными.
    Ответ написан
    4 комментария
  • Могу ли я в чистом javascript в асинхронной функции подождать возникновения события?

    lazalu68
    @lazalu68
    Salmon
    Конечно можете. После await у вас должен идти промис, который будет ресолвиться из обработчика события. Если речь о событиях DOM, то как-то так:

    HTMLElement.prototype.waitFor = function(event_name) {
        if (event_name) {
            return new Promise((res, rej) => {
            	const listener = function() {
            		res()
            		this.removeEventListener(event_name, listener)
            	};
    
            	this.addEventListener(event_name, listener);
            })
        } else {
            throw 'No event passed to waitFor method!';
        }
    }
    
    async function foo() {
    	const start = new Date();
    	await document.querySelector('body').waitFor('click');
    	console.log('uspeshno dojdalis clicka, jdali celih ' + ((new Date().getTime() - start.getTime())/1000) + ' sekund');
    }
    
    foo();
    Ответ написан
    7 комментариев