• Кто то может подробно прокомментировать данный TypeScript код?

    @PavelPikat
    Выглядит как дочерний компонент какого-то другого компонента, т.е. используется внутри чего-то. Я бы сказал что задача этого компонента - отрендерить список задач из передаваемой переменной currentJobs (у которой сверху декоратор @Input() - это входные данные). Рендерится все в шаблоне show.component.html.

    @HostListener('change', ['$event.target']) - это eventListener по всему компоненту, т.е. клик в любом месте внутри компонента вызовет эту функцию. Эта функия пробегается по всем элементам в checkedJobs (список чекбоксов в шаблоне) и проверяет, отмечены ли они или нет. Если да - добавляет чекбокс в отдельный Set (это типо Array но с униками) currentCheckedInputs, а если не отмечен - удаляет. После этого пробегается уже по currentCheckedInputs, собирает айди HTML элементов и передает родительскому компоненту через this.onDelete.emit. Родительский компонент скорее всего слушает это событие и что-то дальше делает с полученной инфой.

    Ротительский компонент скорее всего содержит такую конструкцию у себя в шаблоне:
    <app-show-j [currentJobs]="jobs" (onDelete)="handleDeleted($event)"></app-show-j>
    Ответ написан
    1 комментарий
  • Что делает данная часть кода?

    Vlad_IT
    @Vlad_IT
    Front-end разработчик
    Вероятно, автор этого кода таким образом сделал клонирование .
    Ответ написан
    3 комментария
  • Как обратится к серверу запущенному в докере который в свою очередь находится на виртуалке?

    Пробрасываете на виртуальную машину порт из контейнера с помощью -p ключа. Далее обращаетесь к виртуальной машине по ее внешнему IP адресу и порту, выбранному выше. Если не коннектится, то проверяете файервол на ВМ.
    Ответ написан
    1 комментарий
  • Что значит 'DNS суфикс' при выводе ipconfig?

    ValdikSS
    @ValdikSS
    DNS-суффикс — зона, которая добавляется к запрашиваемым именам при резолве доменов. Она может быть произвольная. Суффикс нужен, как правило, для того, чтобы в локальной сети не вводить полное имя компьютера вместе с доменом (имякомпьютера.домен), а вводить только само имя (имякомпьютера).

    Если у вас установлен суффикс, при запросе доменного имени будет выполнен резолв сначала запрошенного имени, затем, если оно не найдено, имени с суффиксом.

    Пример.
    Суффикс wordpress.com. Вы пытаетесь открыть _http://littlemaninmyhead/. ОС отправит запрос резолва "littlemaninmyhead" на DNS-сервер. Получив отказ, ОС отправил запрос резолва "littlemaninmyhead.wordpress.com", получит ответ и откроет сайт.
    Такое же поведение будет с любым запрашиваемым доменом, кроме полного написания домена (заканчивающегося точкой, например, "google.com.").
    Попытаетесь открыть какой-то несуществующий домен, например, sorijgssegfwr9gw0v.com, ОС сначала выполнит резолв sorijgssegfwr9gw0v.com, затем sorijgssegfwr9gw0v.com.wordpress.com.
    Ответ написан
    2 комментария
  • В ProFTPD присутствует команда site в других серверах ее я не видел, данная команда реализована только в ProFtpD?

    Сама по себе SITE является частью протокола FTP, но команды, доступные через нее стандартом не определены.

    Исторически, протокол FTP это расширение протокола telnet (доступа к шелу) для передачи файлов. Команда SITE дает возможность выполнить на удаленном сайте какую-то команду, которая не является частью спецификации FTP, поэтому то, что вызывается через SITE по определению является нестандартным. Раньше это обычно реализовывалось путем размещения бинарников в какой-нибудь специальной папке, типа /var/ftp/bin (т.е SITE cpfr запускал /var/ftp/bin/cpfr), и таким образом можно было дать доступ через FTP к каким-то определенным командам или скриптам, сейчас таким образом обычно реализуются нестандартные расширения.
    Ответ написан
    Комментировать
  • В чем отличие между git push -u origin master и git push origin master? Зачем ключ -u для команды git push?

    EXL
    @EXL
    Энтузиаст
    В том случае, если ветка master (или branch_name) не является отслеживаемой веткой origin/master (или origin/branch_name), а вы хотите сделать её таковой.

    Выполнив команду git push -u origin master вы устанавливаете связь между той веткой, в которой вы находитесь и веткой master на удалённом сервере. Команду требуется выполнить единожды, чтобы потом можно было отправлять/принимать изменения лишь выполняя git push из ветки без указания всяких алиасов для сервера и удалённых веток. Это сделано для удобства.
    Ответ написан
    2 комментария
  • Есть ли онлайн сервис для генерации UML диаграммы по SQL коду?

    @barolina
    turn coffee into code
    UML - может строить Navicat
    Python (диграмма классов) - Pycharm
    Ответ написан
    Комментировать
  • Как создать красивый ответ на backend java в формате pdf?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Ответ написан
    Комментировать
  • Объясните как в java работают TDD тесты на примере данного класса?

    jaxtr
    @jaxtr
    JavaEE/Spring-разработчик
    Из того что я понимаю на данный момент, вначале пишем тесты которые задают грубо говоря нашу будущую логику программы, дальше пишем саму логику... если логика удовлетворяет нашим тестам то видим что тест прошел.. и идем дальше.


    Да, всё верно понимаешь.

    Имя класса и методов в которые будут производить тестирование моего класса не могут быть произвольными?


    Как угодно, но обычно класс с тестами аналогичен тестируемому классу, но с суффиксом Test. Например: есть класс GreetingService, то тестовый класс будет GreetingServiceTest

    В какой момент именно будут вызываться данные тесты?


    При сборке проекта при помощи инструментов сборки вроде Ant, Maven или Gradle.

    После компиляции моего кода, вызов тестов будет происходить каждый раз при запуске программы?


    Тесты исполняются только при сборке проекта.

    Использую Intellij Community, мне требуется устанавливать дополнительные плагины или есть уже по дефолту что то?


    Для поддержки JUnit или TestNG потребуются соответствующие плагины.
    Ответ написан
    2 комментария
  • Angular2 как запустить мой frontend после выполнение ng build?

    Xuxicheta
    @Xuxicheta Куратор тега Angular
    инженер
    В html ссылки на скомпилированные js и css будут относительные.
    В зависимости от браузеров и операционной системы, поведение будет разное, на линуксе например браузер пытается открыть их как file:///main.4cc3c8d8152162fe9b99.bundle.js, например, т.е. вместо локального каталога ищет мой js файл в корне файловой системы, где его конечно же нет.
    Естественно ничего не открывается.
    Чтобы нормально посмотреть, нужно всю dist положить в распоряжение какого-нибудь веб-сервера, например http-server, как выше посоветовали (и тоже самое делает вебпак, запускаемый по ng serve). Подойдет и nginx или apach или lighttpd, или даже IIS, если конечно сможете их настроить.
    Ну или на хостинг.
    Ответ написан
    4 комментария
  • Что может значить термин токен авторизации?

    @luna3956
    то в данном случае номер сессии является синонимом токена авторизации?

    В общих чертах похоже, да, но все же это разное. Если в двух словах, то речь о разных способах аутентификации - на основе куки и на основе токенов(чаще всего jwt-токен имеется в виду, так что для подробностей гуглите именно это).

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

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

    Способы похожи, но все же разные. В первом случае есть так называемое состояние - то есть и сервер и клиент должны хранить айдишник сессии, сервер мониторит/ведет эти сессии в базе данных и т.д. В случае же с jwt-токеном от понятия состояние по сути избавляемся - серверу не важно кто вошел в систему, с помощью какого именно токена и т.д. То есть в данном случае токен самодостаточен и кроме этого токена серверу ничего больше не надо чтобы определить все ок или нет.
    Ответ написан
    Комментировать
  • Любой Java байт код можно успешно декомпилировать и просмотреть его?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Именно полностью оригинальный код не получится(если конечно не включены все дебагсимволы). Код восстановится до конструкций похожих т.е.:
    условно говоря кострукции
    for(int i:0;i<100;i++){}
    
    или
    for(Object o: objects){}
    
    и еще тонна вариантов

    В байткоде будет иметь одинаковый вид(не принимайте наслово но это образно говоря). А значит декомпилятор увидит подобный байткод и восстановит конструкцию именно ту которую посчитает наиболее удобной но не ту которая была в оригинале.
    Аналогично с остальными случаями, констанатами,функциями,классами.
    Кроме того не будут учитываться еще тонны тонкостей, взять хотя бы аннотации.

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

    В том же с\с++ можно декомпилировать до асемблера а затем восстановить уже его до С, который также вполне читабелен и местами рабочий. Если есть дебаг символы то еще и тонны других вещей восстановится (имена констант\переменных\функций\коментариев).

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

    @AWEme
    Retard Soft Inc.
    Набросал чутка, пробуйте.

    import re
    from collections import defaultdict
    
    ips = defaultdict(list)
    regular = re.compile(r'Host: ([\d\.]+).+?Ports: (\d+)/')
    
    with open('res.txt', 'r') as f:
        for line in f:
            line = line.strip()
            if not line.startswith('#'):
                ip, port = regular.search(line).groups()
                ips[ip].append(port)
    
    for k, v in ips.items():        # Выведет:
        print(k, ', '.join(v))      # 192.168.1.1 80, 801
                                    # 192.168.1.2 801, 445
                                    # 192.168.1.3 80, 8080, 21
    
    with open('outputfile.txt', 'w') as f: # Запишет тоже самое
        for k, v in ips.items():
            f.write('{} {}\n'.format(k, ', '.join(v)))
    Ответ написан
  • SQL как реализовать подсчет количества одинаковых значений в столбце?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    COUNT ... GROUP BY
    Ответ написан
    2 комментария
  • SQL как реализовать подсчет количества одинаковых значений в столбце?

    Planet_93
    @Planet_93
    Если мы имеем такую таблицу:

    5c04d9a493987591477063.jpeg

    То, выполнив такой запрос:

    SELECT 
    MAX(num) AS Name, 
    COUNT(num) AS Count
    
    FROM
    dbo.TestTable
    GROUP BY (num)


    получим:

    5c04d9ead2c73412386993.jpeg
    Ответ написан
    Комментировать
  • Все ли связи верны на этой uml диаграмме?

    Therapyx
    @Therapyx
    Data Science
    таблица ужасная, везде тупо раскиданно от нуля до n, связей вообще минимум. Логика ели видна. Даже ассоциация сделана не по правилам.
    1. Не могу понять каким образом будет определятся принадлежность пользователя к группе(в таблице user должно быть еще одно поле...)

    верно мыслите.
    2. Таблица Port(не могу понять почему ее автор сделал красным цветом), помоем в ней нахватает тоже поля с id

    42, порт имеет много хостов и наоборот))

    Не исключаю, что и я могу сказать пургу, ибо не работаю так часто с проектировкой БД... Но подпишусь и мне очень интересно послушать что-то положительное о ней ))
    Ответ написан
    Комментировать