Pull to refresh
6
0
Юрий Шабан @yumka

User

Send message

Mockito и как его готовить

Reading time21 min
Views299K

О статье


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


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

Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments11

Передовой опыт тестирования в Java

Reading time20 min
Views26K


Чтобы покрытие кода было достаточным, а создание нового функционала и рефакторинг старого проходили без страха что-то сломать, тесты должны быть поддерживаемыми и легко читаемыми. В этой статье я расскажу о множестве приёмов написания юнит- и интеграционных тестов на Java, собранных мной за несколько лет. Я буду опираться на современные технологии: JUnit5, AssertJ, Testcontainers, а также не обойду вниманием Kotlin. Некоторые советы покажутся вам очевидными, другие могут идти вразрез с тем, что вы читали в книгах о разработке ПО и тестировании.
Читать дальше →
Total votes 40: ↑40 and ↓0+40
Comments23

Про Гауди — разработчика из девятнадцатого века, добившегося всего, чего может добиться разработчик

Reading time8 min
Views100K
Вот что строил испанский архитектор Антонио Гауди:



Его здания описывают как «бионические дома», некоторые говорят о «летящей пластичной материи». За морем восторгов художников и дизайнеров, как мне показалось, упущена некоторая невероятная рационализация и прагматичность. Гауди был в первую очередь отличным разработчиком, математиком и геометром. Но чтобы объяснить это, сначала я покажу другую картинку:


Это два крепления. Первое производится серийно — оно просто в проектировании, просто в изготовлении, дёшево и невероятно уродливо. Второе красивое, и требует на 25% меньше материала для того, чтобы выдержать тот же вес (то есть — куда прочнее). Только его трудно рассчитать, оно будет дороже в серии — и придётся подумать.

Примерно то же самое делал Гауди. Ему пришлось обойтись без математического аппарата и современных материалов. И ещё действовать в рамках строго ограниченного бюджета. Он, фактически, заложил новые принципы всего от фасада до последней дверной ручки, создал шедевры оптимизации — в общем смёл все стереотипы как сухие листья, создал с нуля теорию и воплотил её. В девятнадцатом веке всё то, что он делал, было просто диким. Некоторые даже считали его сумасшедшим.
Читать дальше →
Total votes 228: ↑225 and ↓3+222
Comments136

Полезные приёмы работы с Apache Camel

Reading time11 min
Views42K
Если вам приходилось создавать интеграционные решения на Java, наверняка, вам знаком замечательный Java framework под названием Apache Camel. Он с лёгкостью осуществит связку между несколькими сервисами, импортирует данные из файлов, баз данных и прочих источников, оповестит вас о различных событиях в Jabber-клиент или по E-mail, станет основой для композитного приложения на базе большого числа других приложений.
Далее
Total votes 6: ↑6 and ↓0+6
Comments6

Гарвардский курс CS50 на русском. Все серии

Reading time4 min
Views581K


Друзья, мы рады сообщить, что перевод всего гарвардского курса CS50 закончен.

Мы писали, что в курсе 24 серии, однако последние две оказались одной и той же лекцией (одна прочитана в Гарварде, а другая в Йеле), поэтому в списке переведённых лекций не 24, а 23.

Список лекций под катом.

Что вы узнаете, прослушав этот курс:
  • Основы компьютерных наук и программирования;
  • Концепции алгоритмов и алгоритмичности мышления. Какие задачи можно решать с помощью программирования и каким образом;
  • Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка;
  • Основы языка программирования C и Scratch;
  • Основы баз данных и SQL;
  • Веб-разработка: основы CSS, HTML, JavaScript и PHP;
  • Основы подготовки презентации проектов по программированию.


Курс переведён и озвучен нашей студией по заказу JavaRush, и мы хотим сказать им огромное спасибо за поддержку!
Total votes 40: ↑37 and ↓3+34
Comments34

День шифровальщика: подборка книг по теме

Reading time5 min
Views41K

Родина слышит, Вася Ложкин


Сегодня в России отмечается день шифровальщика. Давно в прошлом те времена, когда шифрование было уделом только военных и шпионов. Теперь оно повсеместно используется в IT. Поэтому в честь праздника мы сделали для вас подборку книг по вопросам, связанным с шифрованием.

Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments7

Просто Angular

Reading time10 min
Views129K

Введение


8-9-го декабря 2016 года была проведена первая конференция по Angular в Бельгии. Игор Минар (ведущий разработчик Angular) выступил в качестве основного докладчика с несколькими интересными объявлениями относительно того, по какому графику будет выпускаться Angular. И представьте себе, в марте 2017 года нас ждет релиз Angular 4. При этом, на данный момент уже опубликована бета-версия.


От переводчиков


Всем привет, с вами Максим Иванов и Дмитрий Сергиенков, и сегодня мы выясним куда делась третья версия, и почему мы по-прежнему можем быть верны Angular. Сейчас начинающему фронтенд-разработчику, изучающему JavaScript, довольно трудно определиться: какой же фреймворк или библиотеку им взять и изучить, оставаясь в тренде? Конечно, без слова React, сейчас не обходится ни один разговор на тему фронтенда, однако, в свое время я начал с первой версии Angular, начитался много руководств по написанию фронтенда на ES6 (с классами и прочим добром) и до сих пор не жалею. Да, вы можете писать корпоративные приложения с использованием только jQuery, но по мере развития и сложности проекта вы начнете закапывать себя в спагетти-коде, смешивая логику и представление, MV*-фреймворки же этого сделать вам не дадут.

Total votes 36: ↑35 and ↓1+34
Comments43

Проприоцепция для неспециалистов. Часть 1: Ровная спина стоя за 10 секунд

Reading time2 min
Views81K
Совсем недавно мою статью о чувствах человека сильно штормило – оценка пользователей колебалась от +5 до -4. В комментариях отмечались такие забавные моменты, как:

Но да, я почитал про проприоцептивную чувствительность. Не занимательно — вычурные слова для того, чтобы показать превосходство профессионалов данной сферы
И при чем здесь количество чувств? По логике вашей статьи, вы не можете пользоваться кишечником, пока не осознаете как он работает.
Собственно, расписывание на более подробные «чувства» является лишь бесполезным уточнением. Автор же просто вводит удобные ему «чувства», ведь он «Врач-невролог, сертифицированный преподаватель соматики» и учит людей «двигаться легко и без боли» (с).

Урок из данной статьи займёт 10-15 секунд и он позволит вам найти то внутреннее ощущение, которое позволит удобно держать ровную спину стоя длительное время. Вы на собственном опыте сможете убедиться в том, стоит ли выделять отдельно проприоцепцию (суставно-мышечное чувство).
Total votes 35: ↑30 and ↓5+25
Comments65

Доступные 3D-фрезерные станки c ЧПУ, от 250 000 до 1000 000 рублей

Reading time6 min
Views18K


Выбор есть. Если у вас относительно крупное производство, либо вы хотите закрыть вопрос оснащения на более продолжительное время, имеет смысл приобрести сразу фрезер помощнее — с большей скоростью работы и рабочей областью, с дополнительными функциями и изрядным ресурсом.
Читать дальше →
Total votes 23: ↑15 and ↓8+7
Comments20

Биология поведения человека. Лекция #2. [Роберт Сапольски, 2010. Стэнфорд]

Reading time1 min
Views18K


Приветствуем! Мы продолжаем публиковать лекции Стэнфордского университета. Рады представить вторую лекцию курса 2010 г. «Биология поведения человека» профессора Роберта Сапольски.
Total votes 19: ↑19 and ↓0+19
Comments4

Лазерная резка: как избежать неудачи при работе с резаком?

Reading time5 min
Views50K
Несколько советов для начинающих



Cтанки лазерной резки c ЧПУ нельзя назвать дешевыми, но средней руки предприниматель уже может себе позволить такую систему. Некоторые модели из Китая стоят около $4000. Лазером можно делать все — вырезать корпуса приборов, отдельные элементы конструкции, наносить изображения на металл, дерево, кожу и пластик.

Но наличие компьютерного управления вовсе не значит, что оператор может отдыхать на кушетке с любимой книжкой в одной руке и бутылкой пива — в другой. Для того, чтобы результат работы удовлетворял всем критериям успеха, оператору нужно приложить немалые усилия. На каких этапах резки сфокусировать внимание? Об этом рассказывает мастер, который довольно продолжительное время работал с системами лазерной резки разного типа.
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments25

Платежная EMV-карта. Механизмы обеспечения безопасности платежа

Reading time15 min
Views86K


Платежные карты прочно вошли в нашу жизнь. Еще совсем недавно повсеместно использовались только карты с магнитной полосой. Сегодня же никого не удивишь картой с чипом. Всем известно, что чиповая, микропроцессорная или, созвучнее, платежная EMV-карта – современный и надежный способ доступа к расчетному счету. Она безопаснее карты с магнитной полосой и ее практически невозможно подделать. Однако детали реализации «внутренностей» EMV-карты мало известны. Всем кому интересно как работает EMV-карта, почему технология EMV обеспечивает безопасность платежей и насколько стоит всему этому доверять – добро пожаловать под кат.
Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments116

«Кухонный гаджет»: Новинка для низкотемпературной готовки

Reading time4 min
Views12K


Социологи сообщают: фастфуд и перекусы в кафе теряют популярность; новый тренд – готовка домашних блюд. В 2013 году агентство Tiburon Research по заказу журнала Psychologies провело исследование среди более тысячи человек в возрасте 15-30 лет. Результат оказался просто удивительным: 87% девушек и 78% мужчин сообщили, что выступают против питания вне дома, что им нравится готовить, и они стараются делать это как можно чаще.

В связи с этим на рынке появляется все более изощренные инструменты для готовки. В 2015 году основатель Музея еды и напитков Дэйв Арнолд (Dave Arnold) выпустил прибор под названием Searzall – кулинарный инструмент для приготовления мяса. Еще годом ранее инженер Массачусетского технологического института объявил о создании «умной» сковороды Pantelligent, температуру которой можно регулировать через приложение.

Современный рынок изобилует подобными кулинарными игрушками. Чаще всего за их изобретением стоят исследовательские лаборатории или кулинарные школы, но мало кто ожидал, что в разработке одного из таких устройств примет участие игровой магнат Гейб Ньюэлл (Gabe Newell).
Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments65

5 советов от экспертов, как построить карьеру в ИТ

Reading time3 min
Views49K
image

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

Ниже я подобрала пять докладов, которые отвечают на вопросы, как проходить собеседования, какие способности нужно развить, чтобы стать успешнее в сфере ИТ, и что делать, чтобы карьера пошла в гору. Осторожно, здесь говорят про бизнес!

Читать дальше →
Total votes 27: ↑15 and ↓12+3
Comments25

Людям с высоким IQ не нужно много друзей для счастья

Reading time3 min
Views62K
Интересное исследование опубликовано в Британском журнале психологии. Авторы научной работы — эволюционные психологи Сатоси Каназава из Лондонской школы экономики и Норман Ли из Сингапурского университета менеджмента — попытались определить, какие факторы влияют на субъективное ощущение счастья современного человека. Они провели анализ данных опроса более 15 000 американцев от 18 до 28 лет, чтобы определить, как влияют плотность населения, количество друзей и интеллект на счастье. Некоторые результаты можно назвать довольно неожиданными, хотя для специалистов они не стали откровением (см. ниже).
Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments126

Как устроено наше тестирование и почему QA участвует в постановке задач нашим разработчикам

Reading time6 min
Views19K
Добрый день!

Меня зовут Евгений, я руководитель тестирования облачных решений Acronis, и я хочу рассказать вам о том, как у нас всё это устроено.

Вообще, QA — это почти как КГБ: нас не всегда видно, но мы есть везде. Мы участвуем в процессах, начиная с самых ранних этапов, когда ещё идёт обсуждение техтребований, их доработка, черновое прототипирование фич. QA не имеет права голоса, но обязательно объясняет девлиду и программ-менеджеру багоопасные места на основе своего опыта. И, как правило, это объяснение влияет на требования к фиче.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments2

Шпаргалка Java программиста 1: JPA и Hibernate в вопросах и ответах

Reading time36 min
Views568K
image

Знаете ли вы JPA? А Hibernate? А если проверить?

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.




Данная статья будет полезна и для тех кто только собирается изучать JPA и Hibernate (В этом случае рекомендую сразу открывать ответы), и для тех кто уже хорошо знает JPA и Hibernate (В этом случае статья позволит проверить свои знания и освежить особенности технологий). Особенно статья будет полезна тем кто собирается пройти техническое интервью, где возможно будут задавать вопросы по JPA и Hibernate (или сам собирается провести техническое интервью).

Поехали...
Total votes 37: ↑32 and ↓5+27
Comments16

Ключевые тренды мирового рынка электронных платежей. Часть 1

Reading time6 min
Views12K
imageОтлаженный и удовлетворяющий нуждам клиентов процесс онлайн-оплаты актуален как никогда. Однако при выходе на новые рынки со своим проектом сделать выбор из более чем 300 существующих на сегодняшний день платежных схем может быть непросто. Мировой рынок платежей растет быстро: в 2015 году он достиг отметки в 1.66 трлн долларов, увеличившись на 14% по сравнению с 2014 годом. Как сообщает в своем новом исследовании компания Worldpay, альтернативные способы оплаты, такие как электронные кошельки, обошли пластиковые карты, став наиболее популярным способом онлайн-оплаты.

До сих пор самым популярным способом среди альтернативных видов оплаты были электронные кошельки PayPal, AliPay, Яндекс.Деньги и их аналоги. Worldpay ожидают, что к 2019 году объем платежей через цифровые кошельки составит 647 млрд долларов или 27% выручки всего рынка, тогда как кредитные карты — 577 млрд долларов или 24% рынка. Дебетовые карты станут третьим по популярности способом.

Под катом первая часть исследования Worldpay «Тенденции глобального рынка платежей», в котором представлены статистические и прогнозные данные по рынкам e-commerce различных регионов мира. Но для начала предлагаю остановиться на определениях различных способов оплаты.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments6

Не пельменем единым жив программист или история о том, как все успеть

Reading time7 min
Views136K
image

По заявкам трудящихся и в связи с переносом — возвращаю пост, который многих порадовал. Надеюсь НЛО будет не против.

На написание этого поста меня сподвиг замечательный пост «За что конкретно я ненавижу некоторых отдельно взятых маркетологов — или как айтишник по магазинам ходил». Сразу хочу извиниться за возможные опечатки — пишу с планшета, сидя в микроавтобусе и вытягивая сеть телефоном. Hacker's keyboard очень удобен для ssh-доступа, но большие тексты писать им не очень удобно.

IT- специалисты — народ любопытный. То соберут на базе микроконтроллеров автоматическую систему полива и освещения для любимого фикуса, то пропатчат прошивку мультиварки для раздачи торрентов. Но, по непонятной и загадочной причине, когда дело доходит до еды, пресловутый принцип DIY дает сбой. И наш герой, способный часами переделывать кинескоп старого телевизора в Луч Смерти, идет на кухню утолить голод соевым текстуратом пополам с гидроцеллюлозой и «коллагеновым сырьем».

В этом посте я хочу разрушить миф о том, что еда может быть либо быстрой и удобной, либо съедобной. Не секрет, что многим из нас приходится работать по 12 часов в сутки, что не способствует кулинарным подвигам с участием 28 приправ и перьев с зада дракона, омытых слезами единорога. Вы получите замечательную возможность посмотреть в глаза своей половинки на 8 марта после того, как она получит не контроллер для дистанционного управления шторой, а свежевыпеченный хлеб ручной работы рано утром. Если вам надоело есть синтетику — добро пожаловать под hubracut.
Читать дальше →
Total votes 269: ↑263 and ↓6+257
Comments293

Шпаргалка для кандидата: какие вопросы задать потенциальному работодателю на собеседовании

Reading time6 min
Views392K
У каждого кандидата в конце собеседованию рекрутер обычно спрашивает, есть ли вопросы. Часто люди теряются и не находят, что спросить. И лишь по прошествии некоторого времени (часто, когда человек уже работает в компании) сами собой всплывают вопросы, о которых нужно было поинтересоваться заранее, а не брать кота в мешке и удивляться «Как я сюда попал? Куда я смотрел? Почему я об этом не подумал?». Это так называемый «эффект лестницы». Я подготовил шпаргалку, что ты, %habrauser%, не растерялся.

Общее


1. Рабочий график и можно ли его двигать?
Я люблю поспать. Но на моей прошлой работе «рабочее утро» начиналось в 7:30. Мало того, что я довольно часто не мог прийти к этому времени, я еще пол дня занимался тем, что пытался привести себя в рабочую форму. Где то до 10:00. С 10:30 до 11:30 я усердно работал. Потом был обед. А потом мне хотелось спать, а не работать, т.к. я не высыпался еще с утра. Надо ли говорить, что вместо 8 часов, на которые меня нанял работодатель, я работал в «потоке» только часа 3-4. Так что для себя нужно решить вопрос – когда я наиболее трудоспособен? И обговорить рабочий график с руководством. И еще один нюанс. Попробуйте закрепить обговоренный график в трудовом договоре или контракте (далее ТД), если работодатель идет на персональный рабочий график для Вас. Никаких устных договоренностей. Иначе Вам начнут крутить руки уже в процессе работы (как это было со мной).
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments30

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity