• Аналоги тестовых api типа swapi.co?

    @DerR1chter
    swapi снова жив :)
    https://swapi.dev/
    Ответ написан
    Комментировать
  • Как запросить номера телефона в viber api?

    @rakhinskiy Автор вопроса
    Для тех кто периодически сюда попадает по тому же вопросу
    1. Суппорт вайбера ответил что данный функционал не доступен в desktop клиенте
    2. Для мобильных клиентов нужно указывать min_api_version 3 или выше что бы заработало
    Ответ написан
    Комментировать
  • Что такое end-to-end тестирование?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Понятие еnd-to-end обозначает всего-навсего классификацию тестов по уровню, на котором тестируется система, и, само по себе, ничего не говорит ни о том, какие конкретно должны быть эти тесты, ни о том, какую роль они играют в общей стратегии обеспечения/проверки качества и, также, не является методикой тестирования. (Методика - это совсем другое понятие.)

    Для понимания сути этого понятия хорошо сравнить его с модульным ("нижний" уровень) и интеграционным ("средний") тестированием на каком-нибудь конкретном примере. Давайте рассмотрим некий сферический webshop в вакууме. Предположим, в нем есть 50 классов и для большинства из них написаны модульные тесты. Они проверяют исключительно функционал конкретного модуля (чаще всего, класса), т.е. тот, что зависит только от самого модуля и ни от чего чего более. Потом есть интеграционные тесты. Они проверяют корректность работы отдельных "модулей", если их собрать вместе согласно архитектурe. Например, работает ли правильно "Корзина", состоящая, в свою очередь, из 10 классов (предварительно проверенных модульными тестами), или "Корзина", подключенная к "Вебморде" и т.д. Где-то повыше в этой иерархии есть такие интеграционные тесты, которые проверяют конкретный функционал всей системы. Например, отправляется ли юзеру мейлом копия оплаченного заказа...

    И вот тут начинается самое интересное для понимания того, что такое end-to-end тестирование! Можно представить себе тест, проверяющий, что соответствующий мейл генерируется и сбрасывается SMTP серверу. Если SMTP сервер не рассматривать, как часть разрабатываемой системы, то этот тест вполне можно назвать end-to-end тестом (послали кучку HTTP запросов через "Вебморду" и проверили сброс мыла на SMTP - все зашибись!). Однако, если настройки и эксплуатация SMTP сервера - часть проекта (например, заказана разработка webshop "под ключ"), может оказаться, что это мыло будет отфильтровано каким-нибудь спам-фильтром, превысит лимит почтового ящика пользователя... короче, не дойдет до него. Тогда этот же самый тест уже нельзя считать end-to-end, а нужно бы было написать тест, проверяющий приход мыла в POP3/IMAP ящик. (Опять же, если это действительно нужно! Ибо, в зависимости от конкретных функциональных и нефункциональных требований, архитектор и QA инженер вполне могут найти возможность обеспечить адекватный контроль качества и без такого теста.)

    Таким образом, end-to-end тесты, это такие интеграционные тесты, которые воздействуют на систему через ее самые внешние интерфейсы и проверяют ожидаемую реакцию системы через эти же интерфейсы. Почему именно интеграционные? Потому, что это единственное, что можно о них сказать наверняка: они по определению не могут быть модульными тестами. А все остальное: являются ли они одновременно приемочными, нагрузочными или еще какими - зависит только от общих плана/стратегии тестирования и той роли, которые эти тесты в них играют.
    Ответ написан
    Комментировать
  • Что наследуется в ООП?

    Класс наследуется, интерфейс реализуется.
    interface I {}
    class A {}
    class B extends A implements I {}

    Класс обычно называют чертежом объекта. А интерфейс - это контракт, который объект обязан выполнить.

    Возьмем, например, Велосипед, Грузовик и Мотоцикл.

    Мотоцикл - это почти Велосипед, он делается по тому же чертежу с небольшими дополнениями. Это наследование. Грузовик при этом ни от Велосипеда, ни от Мотоцикла не наследуется, у него совсем другой чертёж.

    Но каждый из этих объектов реализует контракт ТранспортноеСредство. Если у вас есть объект, являющийся ТранспортнымСредством, вы всегда уверены, что доедете из пункта А в пункт Б и при этом вам совершенно неважно сколько у этого объекта колёс.

    А вот если у вас есть контракт Автомобиль, то вы знаете, что можете выполнить такие действия как ОткрытьКапот, ВключитьСтеклоочистители. Велосипед при этом не сможет реализовать такой интерфейс. А Грузовик будет реализовывать оба контракта: хотите - передвигайтесь, хотите - открывайте капот.
    Ответ написан
    2 комментария
  • Как найти регуляркой 2 одинаковые буквы подряд?

    @Alexander1705
    \w*(\w)\1\w*(\w)\2\w*
    Ответ написан
    Комментировать
  • C++ vs Java for Android?

    Ni55aN
    @Ni55aN
    C++ (NDK) - для компонентов, которым нужна производительность и не нужно взаимодействие с элементами из SDK ( кнопочки, доступ к железу). Конечно, его можно сделать через JNI (а там все равно Java) но это гемор еще тот

    Java (SDK) - для всего остального.
    Ответ написан
    1 комментарий
  • Что за хэш при подключении файлов?

    27cm
    @27cm
    TODO: Написать статус
    Чтобы при обновлении файлов js/css у пользователей не брались старые версии из кеша браузера.
    Ответ написан
    4 комментария
  • Как наследовать функцию?

    @ivoronov
    Веб-разработчик
    Начнем с того, что вы, вероятнее всего, не совсем понимаете, что есть наследование.
    Попробуйте написать console.log(new test()) в консоле и посмотрите, что из этого выйдет. Конструкция test.two().three() возможна в том случае, если two() возвращает объект, в котором есть метод three.

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

    @lakegull
    1. Скрывает IP, трафик не шифруется, соответственно провайдер всё про вас знает.
    2. Логи, мозги, наводки.
    3.Да, сведение фактов воедино, может способствовать разорению уютного гнёздышка.
    4. и 5. Воспользуйтесь услугами VPN-провайдеров, которые не ведут логи. Весь трафик будет зашифрован и со стороны провайдера невозможно будет определить что вы делали и куда заходили. Желательно, чтобы сервера VPN-провайдера находились в стране, где его законодательно невозможно обязать раскрыть логи ( при условии, что они всё таки ведутся).
    Становлению качественной анонимности предшествует процесс подготовки. Я очень надеюсь, что все ваши действия с финансовыми операциями легальны, поскольку мои советы предназначены для сохранения коммерческой тайны организации.

    Техническая сторона: если вы кому-то будете очень интересны, то успешность выхода на вас это в основном просто вопрос денег. К примеру заставить VPN-сервис раскрыть свои логи будешь стоить недёшево, а заставить сразу двух провайдеров в разных странах открыть свои карты будете стоить 10х недёшево, и не факт, что получится.
    Во этому поэтому есть смысл шифровать трафик последовательно, через 2 VPN-сервиса.

    "Социал-инженеринговая" сторона:
    На вас можно выйти по косвенным признакам: вдруг на пару часов шифранулись, чего обычно не делаете. Сообщение вроде безобидное отправили человеку, сразу образуется ненужная связь с вами, а те, кому надо, просто начинают копать дальше. А вы в курсе, что более половины аккаунтов в разных социальных сетях СНГ и почтовых ящиков взламывается за считанные часы и эти услуги стоят копейки - менее 15000 рублей?
    Советы следующие:
    Полностью прекращайте общение по бизнесу через социальные сети. Бизнес-партнёров в друзья не добавляете (даже в FB) и сообщения им не пишете, любые. Рабочую почту желательно завести у зарубежных сервисов, обычно они платные, но это всего то около 30$ в год. Покупаете VPN и шифрует весь свой трафик всегда, а не только когда проводите операции.

    UPD

    Твой Товарищ:
    Если мой айпи зашифрован, но трафик - нет. Местоположение пользователя вычисляется?
    IP не может быть зашифрован, он просто изменён на другой. Возможность вычисления местоположения зависит прежде всего от сервиса, который вы используете для смены IP-адреса. Доверять свою анонимность бесплатным прокси-серверам и всяким "анонимайзерам" - это себе дороже. Большинство платных прокси-серверов могут обеспечить вам смену IP-адреса и при этом, как я уже говорил, не ведут логов, поэтому технически вас найти будет либо очень сложно, либо вообще невозможно. Пара слов о работе прокси-сервера: он меняет ваш IP на свой. Этот "свой" он берёт у другого простого пользователя в интересующей вас стране, ПК которого заражён троянским ПО. То есть весь трафик от вас / к вам идёт через ПК этого пользователя.
    Помимо отсутствия шифрования, у прокси-серверов есть и другие минусы, это нестабильная скорость и обрыв соединения (когда пользователь с троянским ПО перезагружается или выключает ПК).
    Приоритет, чтоб локация моего устройства была недоступно для других глаз

    Если это смартфон с сим-картой внутри, то тут всё сложнее. Дело в том, что оператор связи может определить местонахождение любого абонента с точностью в несколько десятков метров (в городе). Но на смартфоне так-же можно настроить VPN (OpenVPN) и работать анонимно. GSM-анонимность - это отдельная тема, слишком большая, чтобы раскрывать её здесь. Многие прошаренные бизнесмены общаются по бизнесу только с отдельного аппарата, сим-карта которого зарегистрирована на кого-нибудь из своих охранников. В РФ пробивается любая информация, даже просушка телефонных разговоров, это лишь вопрос цены.
    И если я правильно понимаю, то трафик - это поток информации и деятельности в сети?
    Это те самые мегабайты и гигабайты информации, которую вы скачиваете с сети или наоборот отправляете в сеть. Информация разбивается на небольшие "пакеты", и они гуляют от сервера к серверу.
    И и очень важное что такое ЛОГИ?
    Это журнал протоколирования, который находится на каком-либо сервере, в нём ведётся учёт того, с какого сервера и во сколько пришёл пакет с данными и на какой сервер он был переадресован впоследствии. Это цепочка, следы на снегу, которые могут в итоге привести к вашему реальному местоположению. Эта цепочка обрывается на том месте, где сервер (в данном случае VPN-провайдер), не ведёт логи.
    Насчет по социал-инжиниринговой стороне мало понял, если есть время, то можете раскрыть?
    Социальная инженерия, это способ с помощью которого можно обойти технические средства защиты информации и получить желаемую информацию, опираясь на человеческий фактор и человеческие слабости. Если по простому - это развод кого-либо из ваших знакомых, с целью получить какую-либо информацию о вас. Если это делает профессионал, который предварительно собрал о вас информацию из открытых источников, то скорее всего вы даже не заметите, когда у вас из под носа уведут конфиденциальные данные. Эта тема ещё более огромная, чем GSM-анонимность.
    И насколько я знаю, то сторонние интерне-ресурсы обязаны по закону держать сервера с информацией на территории России. "Закон о персональных данных" который обязывает интернет-компании хранить личные данные российских пользователей внутри страны.
    VPN-провайдеры, у которых вы шифруете свой трафик, не хранят у себя на серверах скаченные вами данные. Они лишь обеспечивают транзитный трафик + его шифрование, ну и смену IP, конечно. Соответственно по действие закона о персональных данных не попадают.

    VPN работает, как показано на схеме:
    78d40072cea44952aa92a74e31288455.JPG

    По данной схеме ваш IP-адрес будет заменён на IP-адрес сервера в Нидерландах. То есть для владельца сайта, который вы посещаете, вы будите определяться как посетитель из Нидерландов.

    При VPN-соединении, провайдер, который предоставляет вам доступ в интернет может лишь посчитать объём скаченных вам данных, но не может определить их содержимое. Так-же не может определить происхождение этих данных.

    Напоследок.
    У любой анонимности есть две фазы:
    1) до того момента, как вашу личность начали ассоциировать с определённым событием
    2) после этого момента.

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

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


    Видимо человек подразумевает что для провайдера вы не являетесь анонимным пользователем. Это верно, поскольку он вам предоставляет доступ в интернет по договору, оформленному на паспортные данные реального человека. На ваш или нет - это не важно. Физический доступ к ПК может быть у нескольких людей, но спрашивать прежде всего будут с того, чья фамилия в договоре. Разумеется это случиться только при условии что логи приведут к вам. Если всё сделать грамотно, то это не произойдёт никогда. А пока нету прецедента - никто никого искать не будет. Я повторюсь - попытка найти хвосты из IP-адресов, выстроить всю цепочку и выйти на реального человека, это очень недешёвое занятие и не факт, что будет хоть какой-нибудь результат. Браться за это дело заинтересованные лица будут только в том случае, если есть хоть какие-то гарантии, что результат покроет потраченные ресурсы. А пока вы не долларовый миллионер - никто такой марш бросок ради вас делать не будет.

    Вопрос о провайдере, который о вас знает иллюстрируется следующей аналогией:
    Вот вы идете по улице и видите вокруг себя людей, верно? Вы видите лица людей, возможно некоторые из этих лиц вам встречались ранее, возможно некоторых вы знаете по имени и даже знаете их паспортные данные (допустим коллегу по прошлой работе встретили). Вы знаете где эти люди сейчас находятся (в поле вашего зрения!), вы видите с кем они сейчас общаются, при желании вы даже можете запомнить номера и марку машины, куда они сели. Вопрос: ДАЛЬШЕ ТО ЧТО!
    Вы же не можете утверждать, что человек проходящий мимо вас в чёрных очках надел их потому, что хочет скрыть глаза, поскольку вам кажется, что очки в пасмурную погоду могут одевать только те, кто совершил какое-то преступление. Это всего лишь ваша интерпретация.
    Тоже самое и с провайдером - он не может утверждать, что вы занимаетесь чем-то нелегальным просто на основании того, что начали шифровать весь трафик. В мире любая вменяемая организация шифрует весь свой трафик. Это коммерческая тайна! Так должно быть! В противном в голове у службы безопасности такой организации - СОВОК.

    Последуйте моим рекомендациям: шифруйте ваши конфиденциальные данные и ни пускайте за штурвал ваших ПК и мобильных устройств людей, кого недостаточно хорошо знаете. Высыпаться станете лучше.
    Ответ написан
    19 комментариев
  • Это правда что для AJAX лучше использовать метод GET а не POST т.к. он быстрее?

    smidl
    @smidl
    WordPress-разработчик
    ты гет-запросом шлешь только параметры, например: "хочу Войну и Мир", а сервак уже в ОТВЕТАХ - тебе шлет твой огромный текст. Так какие проблемы?)

    В твоем случая не будет разницы чем ты шлешь запрос, гетом или постом. Так что не парься
    Ответ написан
    2 комментария
  • Как сделать страницу?

    @sitev_ru
    sitev.ru - мой блог ...
    if ($_GET["gid"] == "1") {
      echo "тут будет та страница которая отображается строго если мы ввели cart.php?gid=1";
    }
    Ответ написан
    Комментировать
  • Как мне "потренироваться" в веб разработке?

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

    @iissakin
    После n таких добавлений в массиве оказываются n ссылок на объект item. В момент вывода item уже принял состояние "последнего объекта", как вы его назвали, поэтому и получается вывод одного и того же n раз.
    Вариант решения - объявлять и инициализировать item не глобально, а внутри коллбека, в котором идёт инициализация полей объекта и его добавление в массив.
    Ответ написан
    1 комментарий