В понедельник бывает нелегко.
Поэтому начни день с приятного - ткни случайную картинку и узнай какой ты кот🐈🐈⬛
#мемасы
Поэтому начни день с приятного - ткни случайную картинку и узнай какой ты кот🐈🐈⬛
#мемасы
😁10❤4🔥1
📅 12 сентября.
🖥 256й день года.
👨🏼💻 День программиста!
Желаю тебе:
По случаю праздника - JVM и компиляторы свалили на выходной. А тебе оставили подарок🎁. Код-загадка на картинке. Её придется решить без их помощи. Но ведь тебя и твой острый аналитический ум это не остановит?
Голосуй за правильные ответы в опроснике ниже.
#java #quiz
🖥 256й день года.
👨🏼💻 День программиста!
Желаю тебе:
health++; //побольше здоровья
happiness++; //побольше счастья
compileAndRuntimeErrors--; //поменьше проблем с кодом
По случаю праздника - JVM и компиляторы свалили на выходной. А тебе оставили подарок🎁. Код-загадка на картинке. Её придется решить без их помощи. Но ведь тебя и твой острый аналитический ум это не остановит?
Голосуй за правильные ответы в опроснике ниже.
#java #quiz
❤4🔥2👍1
Какими могут быть результаты выполнения этого кода? (возможен один или несколько вариантов)
Ответ будет опубликован позднее в комментах.
Ответ будет опубликован позднее в комментах.
Anonymous Poll
13%
про
13%
стр
13%
Результат: null
13%
Ошибка компиляции
6%
StringIndexOutOfBoundsException
48%
Результат: про
3%
null
10%
NullPointerException
45%
Результат: стр
JSON-документы можно встретить при тестировании почти любого слоя приложения - и в юнитах, и в API, и в UI. Их дофига и они вездесущи. Так как же работать с JSON-ами не обжигая руки и пятую точку?🔥 Делюсь парочкой полезных инструментов.
📊 1. Визуализация JSON - JSONCrack
Как увидеть вместо json-простыни на 1000 строк вменяемое и понятное человеческому глазу представление данных, со всеми уровнями вложенности? На странице по ссылке в левой части есть текстовый редактор - вставляем в него свои json-данные. Справа - окошко в котором наслаждаемся результатом и получившейся диаграммой.
Минутка информационной безопасности! Не забывайте что это сторонний сервис и JSON-ы которые вы туда вставляете - лучше предварительно очищать от всяких секретностей, кредов и урлов. От греха подальше.
🏭 2. Конвертер JSON в POJO-класс
Дано: JSON.
Что надо: создать на его основе POJO-класс, модель для данных, со всем тем набором, именами и типами полей что есть у входного JSON. Мы - избалованные Java-бояре и вариант набирать класс ручками выбрасываем, что остается?
Есть сайты где это можно сделать онлайн. В одно поле вставили, нажали кнопку, из другого забрали результат:
Например тут.
Или тут.
А еще есть плагин для идеи если бегать между окнами браузера и идеи не вариант.
После установки плагина в проектном дереве кликаемкартошку напитки соусы нужные нам при генерации классов опции.
🛠 3. Генерация JSON-схемы на базе POJO.
Схема - это документ с набором правил для json данных. Схема позволяет быстро провалидировать JSON-документ - соответствует он правилам схемы или нет. В схеме можно описать структуру документа, имена обязательных полей документа, уровни вложенности, типы данных и многое другое. Так вот - есть сайт что бы на лету создать JSON-схему из твоих JSON данных.
Сайт визуально очень похож на приведенные выше - окошко для вставки JSON, волшебная кнопка заставляющая цифровых гномов работать и окошко результата откуда можно забрать сгенеренный документ JSON-схемы.
Если знаешь еще что-то крутое из таких инструментов - шепни на ухо в комментах😉
#java #ui #api #web #автотесты
📊 1. Визуализация JSON - JSONCrack
Как увидеть вместо json-простыни на 1000 строк вменяемое и понятное человеческому глазу представление данных, со всеми уровнями вложенности? На странице по ссылке в левой части есть текстовый редактор - вставляем в него свои json-данные. Справа - окошко в котором наслаждаемся результатом и получившейся диаграммой.
Минутка информационной безопасности! Не забывайте что это сторонний сервис и JSON-ы которые вы туда вставляете - лучше предварительно очищать от всяких секретностей, кредов и урлов. От греха подальше.
🏭 2. Конвертер JSON в POJO-класс
Дано: JSON.
Что надо: создать на его основе POJO-класс, модель для данных, со всем тем набором, именами и типами полей что есть у входного JSON. Мы - избалованные Java-бояре и вариант набирать класс ручками выбрасываем, что остается?
Есть сайты где это можно сделать онлайн. В одно поле вставили, нажали кнопку, из другого забрали результат:
Например тут.
Или тут.
А еще есть плагин для идеи если бегать между окнами браузера и идеи не вариант.
После установки плагина в проектном дереве кликаем
ПКМ - New - Generate POJO from JSON. В окошке выбираем 🛠 3. Генерация JSON-схемы на базе POJO.
Схема - это документ с набором правил для json данных. Схема позволяет быстро провалидировать JSON-документ - соответствует он правилам схемы или нет. В схеме можно описать структуру документа, имена обязательных полей документа, уровни вложенности, типы данных и многое другое. Так вот - есть сайт что бы на лету создать JSON-схему из твоих JSON данных.
Сайт визуально очень похож на приведенные выше - окошко для вставки JSON, волшебная кнопка заставляющая цифровых гномов работать и окошко результата откуда можно забрать сгенеренный документ JSON-схемы.
Если знаешь еще что-то крутое из таких инструментов - шепни на ухо в комментах😉
#java #ui #api #web #автотесты
3🔥8❤1🙏1
Интересный факт - стектрейс можно прочитать и сверху вниз и снизу вверх.
🕵🏻Хочешь захватывающий детектив - читай сверху вниз и с каждой главой приближайся к личности убийцы.
😢Хочешь остросюжетную драму и историю крушения в хронологическом порядке - читай снизу вверх и лей слезы, глядя как медленно умирает запущенная программа.
А о том, почему все проблемы от синего - читай на инфографике.
#java #debug #автотесты
🕵🏻Хочешь захватывающий детектив - читай сверху вниз и с каждой главой приближайся к личности убийцы.
😢Хочешь остросюжетную драму и историю крушения в хронологическом порядке - читай снизу вверх и лей слезы, глядя как медленно умирает запущенная программа.
А о том, почему все проблемы от синего - читай на инфографике.
#java #debug #автотесты
3🔥13👍5😁3🤯2
Минутка пятничных галлюцинаций мечтаний. Представь - ты супергерой из Людей Икс. Но по-прежнему работаешь в айтишке. Какую суперсилу ты бы хотел?💪🏻
Anonymous Poll
18%
⚡️Шторм: зарядка твоего ноута и телефона никогда не садится, а интернет бесперебоен
5%
🍫Магнето: при виде тебя - вендинговые автоматы в офисе трепещут и радуют бесплатными закусками
28%
🤯Профессор Ксавьер: ты можешь продать любую идею (в т.ч. абсолютную дичь) своей команде
26%
🐯Россомаха: ты в состоянии регенирировать любой упавший сервис и стенд за пару секунд
23%
🌚Мистик: никто не найдет свободный слот для созвона в твоем календаре если ты этого не захочешь
😁3🔥2❤1
"Был же нормальным аргументом - а превратился в какого-то параметра" - (с) осуждающее общество
Аргументы и параметры. Многие мои знакомые и я сам - иногда в разговоре про код путаем эти два термина. Время навести ясность:
🔴Аргумент - значение, которое передается в метод.
🔵Параметр - переменная, которая определена в сигнатуре метода.
Пример 1.
❌Неправильно:
У этого метода есть два аргумента.
✅Правильно:
У этого метода есть два параметра.
Пример 2.
❌Неправильно:
В метод getCookies были переданы параметры brandName и weightKg.
✅Правильно:
В метод getCookies были переданы аргументы brandName и weightKg.
Пример 3.
❌Неправильно:
В методе getCookies изменяется значение аргумента brand.
✅Правильно:
В методе getCookies изменяется значение параметра brand.
#java
Аргументы и параметры. Многие мои знакомые и я сам - иногда в разговоре про код путаем эти два термина. Время навести ясность:
🔴Аргумент - значение, которое передается в метод.
🔵Параметр - переменная, которая определена в сигнатуре метода.
Пример 1.
public Cookie[] getCookies(String brand, int kilograms) {...}❌Неправильно:
У этого метода есть два аргумента.
✅Правильно:
У этого метода есть два параметра.
Пример 2.
String brandName = "Юбилейное";
int weightKg = 120;
Cookie[] cookies = getCookies(brandName, weightKg);
❌Неправильно:
В метод getCookies были переданы параметры brandName и weightKg.
✅Правильно:
В метод getCookies были переданы аргументы brandName и weightKg.
Пример 3.
public Cookie[] getCookies(String brand, int kilograms) {
//...
brand = "(" + brand + ")";
//...
}❌Неправильно:
В методе getCookies изменяется значение аргумента brand.
✅Правильно:
В методе getCookies изменяется значение параметра brand.
#java
1🔥17👍4😁2🤯1
Почему люди покупают готовую еду и полуфабрикаты? Потому что их не надо долго, муторно и вручную готовить. Сегодня поговорим про полуфабрикаты кода - Live Templates из Intellij IDEA, приветствуем у нас в гостях!
звучат аплодисменты👏🏻, фанфары🎺, крики поклонниц💃🏻
Live template - это короткая аббревиатура которая раскрывается в код любого размера. С большой вероятностью ты уже ими пользуешься. Например, если в классе наберешь
Мы можем подружиться с Live templates и фигачить свои собственные шаблоны что бы избавить себя от скуки, серости и рутины.
Как создать свой Live template:
Settings - Editor - Live Templates - Нажать на плюсик - Live Template
Далее нужно будет заполнить поля (см. картинку поста):
1. Abbreviation - аббревиатура, т.е. шорткат, слово из которого сгенерируется код
2. Template text - код, который получится в результате набора аббревиатуры. Тут можно писать не только фиксированный код, но и приправить его гибкостью - использовать Live Template-переменные и функции. Их полный перечень - вот тут.
3. Define - контекст, в котором будет доступен твой Live template. Например только в Java-классах в методах
Ну и что бы ⚡️⚡️⚡️ зарядить на вдохновение - поделюсь своими шаблонами, которые я использую в работе:
1.
2.
3.
А какие шаблоны используешь ты? Делись в комментах💎
звучат аплодисменты👏🏻, фанфары🎺, крики поклонниц💃🏻
Live template - это короткая аббревиатура которая раскрывается в код любого размера. С большой вероятностью ты уже ими пользуешься. Например, если в классе наберешь
psvm - получишь сгенерированный publis static void main(String[] args). Если в методе наберешь sout и нажмешь tab - получишь System.out.println. Если наберешь .sout в конце своего выражения и нажмешь tab - обернешь выражение в System.out.println. По аналогии, .try - обернет выражение в try-catch блок.Мы можем подружиться с Live templates и фигачить свои собственные шаблоны что бы избавить себя от скуки, серости и рутины.
Как создать свой Live template:
Settings - Editor - Live Templates - Нажать на плюсик - Live Template
Далее нужно будет заполнить поля (см. картинку поста):
1. Abbreviation - аббревиатура, т.е. шорткат, слово из которого сгенерируется код
2. Template text - код, который получится в результате набора аббревиатуры. Тут можно писать не только фиксированный код, но и приправить его гибкостью - использовать Live Template-переменные и функции. Их полный перечень - вот тут.
3. Define - контекст, в котором будет доступен твой Live template. Например только в Java-классах в методах
Ну и что бы ⚡️⚡️⚡️ зарядить на вдохновение - поделюсь своими шаблонами, которые я использую в работе:
1.
stepio.qameta.allure.@Step("$STEP_DESCRIPTION$")
public $CLASS_NAME$ $METHOD_NAME$() {
throw new UnsupportedOperationException("Напиши реализацию шагу!")
return this;
}2.
dp@org.testng.annotations.DataProvider
public Object[][] $PROVIDER_NAME$() {
return new Object[][]{};
}
3.
pvt@org.testng.annotations.Test
public void test() {
}
А какие шаблоны используешь ты? Делись в комментах💎
🔥14👍4❤1
Записал шортс где я рассказываю почему List<String> нельзя положить в List<Object>.
Это новый для меня формат, отгрузи сердечек и огоньков если зашло!
🚛🚛🚛❤️🔥
#java
Это новый для меня формат, отгрузи сердечек и огоньков если зашло!
🚛🚛🚛❤️🔥
#java
YouTube
За что нам всё это?! Java, дженерики и инвариантность
🔥18❤12👍4💯1
Огоньков и сердец было столько, что вот вам второй шортс! Сказать что вдохновили - ничего не сказать😄
Но старый добрый текстовый контент никуда не делся - уже скоро ждите новый пост про Аллюр🗒✍🏻
https://www.youtube.com/shorts/QOmAc4aPnK8
Но старый добрый текстовый контент никуда не делся - уже скоро ждите новый пост про Аллюр🗒✍🏻
https://www.youtube.com/shorts/QOmAc4aPnK8
YouTube
Топ-3 грехов автотестировщика #java #qa #testautomation
3🔥14😁4👍3❤2
Future<Salary> или как декабрьская сказка превращается в январские ужасы😈
Я не знаю как вы, а я вечно скатываюсь в финансовую яму в конце января за счет декабрьского аванса😅 поэтому интересно - я один такой или в нашем лагере легион?
Все кто сейчас на воде, дошираке и котлетах из гречки в ожидании денег - ставим 😢
Все кто родился с финансовым планированием на максималках и чувствует себя огонь - жмем 🔥
Я не знаю как вы, а я вечно скатываюсь в финансовую яму в конце января за счет декабрьского аванса😅 поэтому интересно - я один такой или в нашем лагере легион?
Все кто сейчас на воде, дошираке и котлетах из гречки в ожидании денег - ставим 😢
Все кто родился с финансовым планированием на максималках и чувствует себя огонь - жмем 🔥
😢19🔥16😁6❤2