Тестирование | QA, QC
3.5K subscribers
246 photos
82 videos
332 links
Всё о тестировании ПО простым языком.
Download Telegram
#Будни_IT

Осторожно! Особо впечатлительным читать дальше не рекомендуется.

Представь, что ты летишь на самолете над океаном. Умиротворяющий пейзаж, красивая бортпроводница, бесплатное шампанское. Все круто, но проблема в том, что ты знаешь как конструировался этот самолет. И ты знаешь, что шасси обмотаны изолентой, а теплопровод держит вешалка, которая старше чем Советский Союз.

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

Проблема в том, что практически любой IT продукт такой - даже телеграм, увы, не идеален.

О чем рубрика
#Где_то_за_кадром

Уравнение Дрейка - это формула для нахождения числа внеземных цивилизаций, с которыми у человечества есть шанс на контакт. И нет, это не очередной бред фанатика, который верит в инопланетян, а работа известного астронома и астрофизика, представленная на научной конференции в середине прошлого столетия.

Формула состоит из 7 параметров, таких как количество звезд, вероятность зарождения жизни, потенциальное время жизни цивилизаций и т.д. Но на мой взгляд в ней не хватает еще одного важного параметра - вероятности того, что другие цивилизации вообще выберут радиосигнал в качестве способа общения.

О чем рубрика
#Будь_как_все

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

В разработке первый вариант характерен для паттернов-идиом. Это такие шаблоны решения, которые подойдут только для конкретной ситуации и конкретного языка. Универсальными назвать их сложно, зато легко реализовать.

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

О чем рубрика
#Do_you_understand

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

О чем рубрика
#Будь_как_все

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

P.S. Это одна из базовых операций алгебры логики, еще про одну можно почитать тут.

О чем рубрика
#Будни_IT

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

О чем рубрика
#Респонс_на_реквест

Помните Джарвиса из фильма «Железный человек»? Один из подписчиков меня недавно спросил, существуют ли подобные системы в реальности. И если нет, возможно ли их создать в принципе?

Ответить сразу я не смогла хотя бы по той простой причине, что не смотрела этот фильм. Пришлось пообещать, что напишу статью на канал и гуглить. Для тех, кто тоже не следит за новинками Марвел краткое пояснение: Джарвис – это искусственный интеллект, который управлял охраной дома и костюмом главного героя. Кстати, расшифровывается имя как «Just A Rather Very Intelligent Schedule» или в патриотичном варианте «Просто довольно очень умный планировщик».

Итак, в статье мы поговорим об искусственном интеллекте, голосовых помощниках, ну и Джарвисе, конечно.

О чем рубрика
#Будь_как_все

Давай поговорим о стандартах? В далеком 1988 году лучшие умы того времени приняли ISO 8601, который должен был сделать будущее Интернета безоблачным. И избавить программистов от утомительной работы. Этот документ регламентировал единый формат, в котором должны быть представлены все даты в мировой сети.

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

О чем рубрика
#Do_you_understand

Пессимисты говорят, что не меняются люди. Программисты - что не меняются данные. Точнее не только лишь все.

Immutable structure - это неизменяемая структура. Или, в адаптации на русский язык, ее называют просто иммутабл. В чем суть? Некоторые объекты не меняются после своего создания. Вообще никогда. Т.е. они возникли, приобрели какой-то набор характеристик и в таком виде существуют до конца программы. В разработке такие структуры используются для многопоточных приложений, о которых я расскажу чуть попозже. Пока что запомни, что изменить иммутабл объект снаружи или насильно невозможно (как и некоторых людей, кстати).

О чем рубрика
#Вавилон_нашей_эры

Псс... Поговорим о латентной типизации? Иногда ее еще называют утиной. В общем, одно название лучше другого.

Итак, что это такое? Это когда тип объекта определяют через его свойства. Ну, например, у тебя есть то, не знаю что, которое пришло оттуда, не знаю откуда. И тебе надо понять что это вообще, а главное как с ним работать. Отталкиваемся от того, что объект умеет делать. Ага, это нечто можно умножить и прибавить - значит это число. Или, это нечто можно разбить на буквы - значит это строка. И т.д.

А каким боком тут утки? Есть так называемый "duck test", который звучит следующим образом: если это выглядит как утка, плавает как утка и крякает как утка, то это, вероятно, и есть утка.

О чем рубрика?
#Do_you_understand

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

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

О чем рубрика
#Где_то_за_кадром

Думаешь, компьютерные вирусы - это детище злого гения? Не всегда.

О чем рубрика
This media is not supported in your browser
VIEW IN TELEGRAM
#Будь_как_все

Клеточный автомат - одна из наиболее известных математических моделей, которую активно используют как программисты, так и физики, биологи, механики, в общем все, кому не лень. Что же это такое?

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

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

О чем рубрика
#Респонс_на_реквест

Нанороботы для операций на сердце, алгоритмы модернизации генома, искусственный интеллект для выбора лекарств, системы поддержки и удаленного обследования – медицина будущего намного ближе, чем кажется. А вообще меня подписчик попросил сделать статью об использование IT во врачебном деле.

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

О чем рубрика
#Где_то_за_кадром

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

О чем рубрика
#Вавилон_нашей_эры

Приведение типов - это частая операция, которая позволяет превратить один объект в другой. Вроде "собака, ты мне надоела, давай ты будешь мне котом".

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

О чем рубрика?
#Do_you_understand

Без чего не обходится ни одна игра? Правильно, без спрайтов.

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

О чем рубрика
Самоизолировались и теперь чувствуете себя обнуленными? Карантин - идеальное время что бы прокачать себя!

Друзья, если Вы изучаете или планируете изучать иврит, то обратите внимание на телеграм-проект HebrewOne.

Канал, призванный помочь Вам расширить свой словарный запас, без лишнего спама и хлама.

Одно слово в день - это не сложно, но порой достаточно одного слова!

Подписывайтесь: https://t.me/hebrewOne
#Будь_как_все

Ленивыми бывают не только люди, но и инициализации.

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

Небольшая проблема заключается в том, что коммунальная плата - это вполне себе конкретная чиселка. Переплатить или недоплатить не вариант, поэтому надо посмотреть в квитанции точную сумму и запомнить ее. Можно либо посмотреть сразу в квитанцию и носить информацию две недели в голове, либо забить на все, дотянуть до последнего дня и только перед самым моментом оплаты взглянуть на цифры. Вот второй вариант и называется ленивой инициализацией.

О чем рубрика