Pull to refresh
66
0
alek_sys @alek_sys

User

Send message

TDD приложений на Spring Boot: тонкая настройка тестов и работа с контекстом

Reading time6 min
Views27K

Третья статья в цикле и небольшое ответвление от основной серии — в этот раз я покажу как устроена и как работает библиотека интеграционного тестирования Spring, что происходит при запуске теста и как можно тонко настраивать приложение и его окружения для теста.

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

TDD приложений на Spring Boot: работа с базой данных

Reading time14 min
Views31K

Вторая статья из цикла "Test-Driven Development приложений на Spring Boot" и в этот раз я буду говорить про тестирование доступа к базе данных, важного аспекта интеграционного тестирования. Я расскажу как через тесты определять интерфейс будущего сервиса для доступа к данным, как использовать встраиваемые in-memory базы для тестирования, работать с транзакциями и загружать тестовые данные в базу.

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

Как построить пирамиду в багажнике или Test-Driven Development приложений на Spring Boot

Reading time9 min
Views9.6K

Spring Framework часто приводят как пример Cloud Native фреймворка, созданного для работы в облаке, разработки Twelve-Factor приложений, микросервисов, и одного из самых стабильных, но в то же время инновационных продуктов. Но в этой статье я бы хотел остановиться на еще одной сильной стороне Spring: это его поддержка разработки через тестирование (TDD-руемость?). Не смотря на TDD-руемость, я часто замечал, что в проектах на Spring либо игнорируются некоторые best practices для тестирования, либо изобретаются свои велосипеды, либо вообще не пишутся тесты потому что они "медленные" или "ненадежные". И вот именно о том, как писать быстрые и надежные тесты для приложений на Spring Framework и вести разработку через тестирование я и расскажу. Так что если вы используете Spring (или хотите начать), понимаете что такое вообще тесты (или хотите понять), или думаете что contextLoads это и есть необходимый и достаточный уровень интеграционного тестирования — то будет интересно!

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

Представляем Spring Data JDBC

Reading time4 min
Views46K

В предстоящий релиз Spring Data под кодовым именем Lovelace мы собираемся включить новый модуль: Spring Data JDBC.


Идея Spring Data JDBC заключается в том, чтобы предоставить доступ к реляционным базам данных без использования всей сложности JPA.

Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments34

Пять вещей, которые нужно знать о Spring Framework 5

Reading time2 min
Views32K

На этой неделе, сразу за релизом Java 9 вышла новая мажорная версия одного из самых популярных фреймворков для разработки приложения на Java — Spring Framework версии 5. Под катом подробности и краткое описание, что же поменялось.

Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments2

Moving Java forward faster

Reading time5 min
Views6.9K

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


Недавно в мире Java случилось пара важных событий: Марк Рейнхольд опубликовал письмо, в котором предложил перейти на полугодовой график релизов Java, а за этим последовало сообщение от Oracle, где они предлагают ряд серьезных измненеий в работе над OpenJDK:


  • Начиная с JDK 9 GA, Oracle будет выпускать OpenJDK билды под GPL лицензией
  • Java SE перейдет на постоянный график релизов (письмо Марка)
  • Oracle внесет ранее коммерческие фичи (как Java Flight Recorder) в OpenJDK
  • Oracle будет сотрудничать с другими разработчиками OpenJDK чтобы обеспечить современню, полную и доступную среду

Несмотря на то, что коммерческая версия Oracle JDK останется, целью компании станет сделать ее полностью совместимой и взаимозаменяемой с OpenJDK (до конца 2018).


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

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

Spring: ваш следующий Java микрофреймворк

Reading time6 min
Views56K

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

Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments42

Обратная сторона Spring

Reading time11 min
Views167K

Неделя Spring на Хабре, судя по всему, открыта. Хочется сказать спасибо переводчику и комментаторам статьи "Почему я ненавижу Spring", которая не смотря на сильный негативный посыл в названии вызвала ряд интересных дискуссий, а так же тем, кто отреагировал на мою прошлую статью Как писать на Spring в 2017. Во многом благодаря комментариям к прошлой статье и появилась эта.


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

Читать дальше →
Total votes 33: ↑32 and ↓1+31
Comments24

Как писать на Spring в 2017

Reading time10 min
Views276K

В одной из классических статей для новичков, мелькавших недавно на Хабре, рассказывалось про создание базового Web приложения на Java. Все начиналось с сервлета, потом создания JSP страницы и, наконец, деплоймента в контейнер. Посмотрев на это свежим взглядом я понял, что для как раз для новичков это, наверняка, выглядит совершенно жутко — на фоне простых и понятных PHP или Node.js, где все просто — написал контроллер, вернул объект, он стал JSON или HTML. Чтобы немного развеять это ощущение, я решил написать "Гайд для новичков в Spring". Цель это статьи — показать, что создание Web приложений на Java, более того — на Spring Framework это не боль и мучительное продирание через web.xml, persistence.xml, beans.xml, и собирание приложения как карточного домика по кусочкам, а вполне себе быстрый и комфортный процесс. Аудитория — начинающие разработчики, разработчики на других языках, ну и те, кто видел Спринг в его не самые лучше времена.

Читать дальше →
Total votes 47: ↑44 and ↓3+41
Comments110

Как мы проводим собеседования в Pivotal

Reading time3 min
Views17K
От переводчика: За последние несколько дней тема использования головоломок и решения задач на доске при собеседовании программистов в очередной раз попала в тренд. Началось все с поста Егора Бугаенко Why I Don’t Talk to Google Recruiters, потом ссылка на запись появилась на Hacker News и Reddit, а затем получила реакцию в Твиттере. Твит David Heinemeir Hannson-а, создателя Ruby On Rails, запустил целую цепочку ответов в стиле “Hello, I’m … ” где люди высказывались, какого рода алгоритмические задачи они не в состоянии решить, несмотря на большой опыт и успешные проекты за плечами.



Мне показалось, что будет интересно узнать и про альтернативный подход к собеседованию. Подход, который не включает решение сложных алгоритмических задач у доски или знание тонкостей языка программирования. Ниже — перевод статьи из официального блога компании Pivotal. Проектами компании являются такие программные продукты как: фреймворк для разработки приложений на Java Spring Framework, облачная PaaS платформа Pivotal Cloud Foundry, система обмена сообщениями RabbitMQ. А подразделение Pivotal Labs занимается внедрением гибких практик в разработке ПО.
Total votes 30: ↑29 and ↓1+28
Comments33

Упражнение на гибкость — Lenovo IdeaPad Yoga 13

Reading time7 min
Views72K
Добрая традиция заманивать читателей под кат с помощью симпатичных девушек, конечно, весьма хороша. Но я решил отойти от устоев и начну рассказ про ноутбук-трансформер Lenovo IdeaPad Yoga с котяток. Если вам не понравится статья или ноутбук — то хотя бы посмотрите котяток, их все любят. Итак, под катом — что такое IdeaPad Yoga, что в нем интересного и ответ на вопрос, почему у Windows 8 есть шанс.
Читать дальше →
Total votes 24: ↑16 and ↓8+8
Comments45

Orchard CMS для разработчика — часть 2

Reading time6 min
Views3.6K
image
В продолжении статьи о разработке для open-source CMS Orchard рассмотрим вывод контента на страницу, обновление модулей и концепцию виджетов. И закончим модуль, позволяющий добавить к сайту на Orchard список пунктов быстрого перехода для закрепленного сайта Internet Explorer 9.
Читать дальше →
Total votes 17: ↑10 and ↓7+3
Comments3

Orchard CMS для разработчика

Reading time12 min
Views20K

На прямо сейчас проходящей в Лас-Вегасе конференции MIX11 была представлена новая версия Orchard CMS – open-source CMS от Microsoft включающая все самое вкусное и полезное из технологий MSFT, находящаяся, можно сказать, на острие. После первого взгляда – CMS вполне понравилась (сравниваю, в основном, с Umbraco) – и появилось желание разобраться — как же собственно происходит разработка для Orchard. Если в этом ваши желания совпадают с моими — читайте дальше.
Читать дальше →
Total votes 44: ↑27 and ↓17+10
Comments7

Microsoft WebMatrix — Reloaded

Reading time5 min
Views35K
Все новое — это хорошо забытое старое. Видимо, руководствуясь этим принципом, спустя 7 лет Microsoft решила вернуть к жизни одну из своих старых идей — но в новом облачении. Речь идет о WebMatrix — платформе для web-разработки, бета которой стала доступна недавно. Бета включает в себя много всего вкусного — обещанный IIS Express, SQL Server CE 4 и движок представлений для MVC — Razor. А так же — галерею приложений (интегрировано с WebPI), инструменты мониторинга и анализа сайта, средства публикации. Но хватит вступлений, давайте посмотрим что же есть собственно внутри WebMatrix.
Читать дальше →
Total votes 61: ↑43 and ↓18+25
Comments35

Moles — Isolation Framework от Microsoft Research или как сделать юнит-тестирование удобнее

Reading time3 min
Views1.9K
Иногда случается, что стройную и продуманную систему юнит-тестов душит сильная связность компонентов — особенно этим грешит legacy код, изначально не предназначенный для тестирования. Рефакторинг, конечно, спасает — но не всегда можно рефакторить. Одной из проблем, возникающих при создании юнит-тестов может стать использование static методов или non-virtual методов, которые должны быть перегружены для успешного написания тестов. Поможет в этом проект от Microsoft Research — Moles.
Читать
Total votes 44: ↑30 and ↓14+16
Comments12

Hello, Umbraco!

Reading time6 min
Views37K

Это вовсе не кастрюлька с двумя ручками на оранжевом фоне – а логотип Umbraco – open-source ASP.NET CMS. Данная статья – краткий вводный курс в Umbraco. Помимо общих вопросов – что это и зачем, я покажу, как можно быстро развернуть ее и сделать первое приложение – буквально за 5 минут.
Читать
Total votes 50: ↑32 and ↓18+14
Comments38

Локализация WPF приложений

Reading time5 min
Views35K
В статье я расскажу о существующих подходах к локализации WPF приложений и покажу подробно процесс локализации используя файлы ресурсов (resx). Это может быть полезно тем, кто только начинает изучать WPF или уже работает с этой технологией, но не сталкивался с многоязычными приложениями.
Читать
Total votes 45: ↑33 and ↓12+21
Comments22

Mono приносит C# на iPhone и Wii

Reading time2 min
Views2.5K
Mono, open-source реализация платформы .NET была использована для разработки игр для iPhone и Wii. Посмотрим, как статическая компиляция сделала возможным, чтобы приложения на Mono удовлетворили требованиям Apple к приложениям, размещаемым в App Store.
Интересно, как же?
Total votes 64: ↑55 and ↓9+46
Comments55

IronPython как движок для макросов в .NET приложениях

Reading time6 min
Views11K
Подозреваю, многие из вас задумывались — как можно в .NET приложение добавить поддержку макросов — чтобы можно было расширять возможности программы без ее перекомпиляции и предоставить сторонним разработчикам возможность легко и просто получить доступ к API вашего приложения? В статье рассмотрено, как в качестве основы для выполнения макросов использовать IronPython — реализацию языка Python на платформе .NET.
Читать
Total votes 34: ↑33 and ↓1+32
Comments38

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity