Search
Write a publication
Pull to refresh
101
0
Ярослав @kciray

Java Software Engineer

Send message

Что стоит знать задумавшемуся о переходе на Ubuntu

Reading time8 min
Views116K


Знакомый, в глаза не видевший Linux, но заинтересовавшийся опенсурсом, после выхода Ubuntu 10.10 попросил написать ему, "чем хорошо, чем плохо, какие осложнения, какие тонкости, как наладить отношения с вин7", чтобы он мог решить, нужно ли ему это счастье.


Сначала подумал "зачем буду писать текст, когда наверняка его уже сто человек написали — быстро нагуглю, пошлю ссылку, а потом уже на конкретные вопросы отвечать буду". Но затем обнаружил, что по запросам вроде "миграция на ubuntu" вываливаются гигантские мануалы с тонкостями настройки compiz, а недлинный текст для "неопределившихся" быстро найти не получается ни в интернете вообще, ни на ubuntu.com и ubuntu.ru (то есть все как и писал в предыдущем посте), ни на Хабре — вот и подумал, что пусть теперь хотя бы на Хабре будет.


Участники "Убунтариума" вряд ли узнают из текста что-то новое, зато они могут дополнить его в комментах (не претендую на звание гуру, так что много важного наверняка упустил), и тогда люди, которые позже введут в гугл что-то вроде "переход на ubuntu", найдут тут счастье.

Читать дальше →

Как перейти от Java к Scala в вашем проекте

Reading time7 min
Views32K
Всем привет.
Периодически от Java-разработчиков, которые узнали о существовании Scala, звучат вопросы «Как начать использовать Scala в существующем Java-проекте? Сложно ли перейти от одного к другому? Много ли времени это займет? Как убедить начальство?» В нашем проекте именно такой переход и происходил, на сегодняшний день практически весь проект уже на Scala, поэтому решил поделиться рецептами и впечатлениями.

С чего все началось, оно же «А зачем оно мне вообще надо?»:
  1. хотелось изучить что-то новое и полезное в производстве;
  2. надоело писать много букв на Java, но и радикально переписывать все, скажем на Python, совсем не хотелось;

С учетом таких желаний выбор пал на обзор альтернативных JVM-based языков.
После обзора остановились на Scala. Понравились компактный синтаксис, strong typing, возможность писать в ОО-стиле и заявленное хорошее взаимодейтствие с Java-кодом в обе стороны. Тот факт, что Scala уже активно используют такие крупные компании, как Twitter, LinkedIn, Foursquare и так далее, внушил определенную уверенность в будущем языка.
У нас уже имелся проект на Maven с юнит-тестами на JUnit, поэтому важно было легко включить Scala без существенных затрат на адаптацию инфраструктуры.
Итак, по порядку.
Почитать по порядку

Gradle: Better Way To Build

Reading time5 min
Views114K
Ни один проект с использованием платформы Java (и не только) не обходится без инструментов сборки (если только это не «Hello, world!»). Рано или поздно, но собирать дистрибутив руками надоедает. Да и компилировать из консоли было бы неплохо, если в проекте используется несколько разных IDE. А перед сборкой дистрибутива было бы здорово проставить номер версии в его имени. И unit тесты прогнать — не зря же Kent Beck книжки пишет. А там и Continues Integration на горизонте маячит. И здорово было бы научить CI сервер это все делать самостоятельно. Одним словом, есть уйма задач.

Раз есть задачи, то есть и решения. Думаю, большинство разработчиков хоть раз, но сталкивались с Ant. Очень многие используют Maven. Есть другие, не такие распространённые инструменты: GAnt, Buildr, и др. Каждый из них обладает набором своих плюсов и минусов, но сегодня я хочу представить вам кое-что новенькое. Gradle.
Читать дальше →

Еще раз об архитектуре Android приложения или джентльменский набор библиотек

Reading time6 min
Views57K
Вот надумал написать обзор библиотек с помощью которых легко и удобно писать приложения под Android.
Список вырисовывается такой:

Если заинтересованны прошу под кат.
Читать дальше →

Начинающим Java программистам

Reading time2 min
Views1.2M
Программирую на Java вот уже 7 лет. Но на работе часто приходится обучать новое поколение. В связи с этим и решил сделать некоторую шпаргалку, которая, надеюсь, пригодится и для хабрчан. Если кто-то может помочь дополнить чем-то информацию из этой статьи, то пишите! Итак:

Основные ресурсы для начального обучения


  • www.javable.com — сайт со статьями и tutorial'ом по Java. Все в основном на русском.
  • www.exampledepot.com — очень полезный ресурс, где собраны краткие примеры использования классов для тех или иных пакетов
  • java.sun.com — без первоисточника не обойтись. Для любого Java программиста JavaDoc должен быть истиной в последней инстанции. Так же здесь можно найти серию tutorial'ов на все возможные темы.

Читать дальше →

20 вещей, которые я должен был знать в 20 лет

Reading time3 min
Views718K
1. Мир пытается оставить тебя тупым. Начиная от банковских платежей и процентов и заканчивая чудо-диетами — из необразованных людей легче вытрясти деньги и ими проще управлять. Занимайтесь самообразованием столько, сколько можете — для того, чтобы быть богатым, независимым и счастливым.
Читать дальше →

Рейтинг постов хаба

Reading time35 min
Views55K

Привет, Хабр!

Решил посмотреть лучшие посты своего любимого хаба и с ужасом обнаружил, что такой фичи нет.

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

Читать дальше →

Встречайте: IntelliJ IDEA 13

Reading time5 min
Views71K

Что у нас было в 2013


Одна из самых радостных для нас новостей в 2013 году прозвучала на Google I/O: Google анонсировал preview-версию Android Studio, новую среду разработки приложений под Android. Android Studio разрабатывается в сотрудничестве с JetBrains на основе IntelliJ IDEA Community Edition. IntelliJ IDEA 13 — это первый мажорный релиз, включающий в себя то новое, что возникло в результате этого сотрудничества.

Этой весной мы сделали и поддержку новой Java 8.

Мы остаемся привержены идее вдумчивой интеграции одних наших инструментов с другими: например, мы обновили плагины для совместной работы IntelliJ IDEA с TeamCity, продолжаем разрабатывать наши новые продукты, используя опыт создания платформы IntelliJ. Так, в сентябре 2013 мы анонсировали наш новый продукт — UpSource, серверную платформу для работы с кодом в браузере с присущими нашим инструментам возможностями: навигацией, find usages, показом изменений в коде и анализом кода.

И сегодня… Буквально пять минут назад… Па-пам! Мы выпустили IntelliJ IDEA 13.



Осторожно! Дальше - несколько видео на английском и много скриншотов!

Хитрые задачи по Java

Reading time7 min
Views117K
Совсем недавно я сдал OCA Java SE 7 Programmer I. За время подготовки успел решить огромное количество задач и извлечь из них много тонких моментов языка. Самые интересные и ловкие — сохранял на будущее. И вот у меня накопилась небольшая личная коллекция, лучшую часть которой я здесь и опишу.

В замечательной статье Знаешь ли ты JAVA, %username% и её второй части автор тоже поделился опытом после подготовки. Однако я пришёл к выводу, что могу добавить что-то своё. Так и зародилась эта статья.

Читать дальше →

Настройка IDEA для чистокодеров

Reading time4 min
Views290K
Я люблю две вещи: Intellij IDEA и чистый код (Clean Code).
IDEA создана для чистого кода. Многие настройки по умолчанию уже стимулируют вас писать как надо.


Но она всё ещё не идеальна.
Когда я устанавливаю новую копию IDEA, я пробегаю по настройкам и выставляю свои любимые галочки.
Хочу ими с вами поделиться в надежде, что когда-нибудь и они станут стандартом.

Мои любимые настройки IDEA с картинками

Учимся писать в информационном стиле

Reading time2 min
Views106K
По работе я пишу тексты: посты на хабр, email-рассылку, статьи в СМИ. Пишу уже пару лет, последние полгода не меньше двух текстов в неделю. Значительным шагом в развитии моего навыка письма было открытие для себя информационного стиля и советов Максима Ильяхова.

Цель текста в информационном стиле — донести информацию до читателя. Информационный стиль: лаконичный, однозначный, точный и объективный. В информационных текстах нет лишних слов, эмоций, личного мнения. Они читаются легко и быстро.

Максим вводит понятие стоп-слов. Стоп-слова не характерны для текстов в информационном стиле и если вы встретили его — задумайтесь и перефразируйте это место. Стоп-слова это «кстати», междометия, модальные глаголы, отглагольные существительные и другие, всего около 100.

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


Читать дальше →

Java навсегда! 12 причин длительного доминирования Java

Reading time9 min
Views144K
Java foreverЛегко забыть значимость технологии, как только она пронесется кометой через коллективное сознание и погаснет огненной смертью за горизонтом. К примеру, Cobol — когда-то этот язык был культовым для целой эпохи, а сейчас его можно сравнить разве что с протухшей рыбой. В наши дни любой хипстер-программист вам отчеканит, что Cobol – это полный отстой, старый и бесполезный язык. Java может стать следующей жертвой «актуальных» суждений.

Пик продаж книг по Java – далеко в прошлом. Матерые Java-утилиты уже не достаточно сексуальны для обложек журналов. Java уже 19 лет, а прогрессивные разработчики увлечены такими моднейшими и актуальнейшими технологиями как Node.js, Objective-C, Dart, Go и т.д., удивляясь: «Java? Этот артефакт эпохи Web 1.0 еще жив?»

Беглый поиск на Dice.com показывает, что работы на Java — навалом. Если для iOS около — 2500 предложений, для Java — более 17000. Конечно, нельзя всецело полагаться на эти цифры. Но тот факт, что на Dice.com рынок работы на Java потенциально в семь раз больше, чем для моднейшей iOS, говорит о том, «старина Java» чувствует себя довольно таки неплохо.
Читать дальше →

Java. Новое поколение разработки. Техники Java 7 и многоязычное программирование

Reading time4 min
Views18K


Название оригинала: The Well-Grounded Java Developer: Vital techniques of Java 7 and polyglot programming
Автор: Б. Эванс, М. Вербург
Перевод книги: Сивченко Олег
Дата выхода: осень 2013г.


Осенью у нас выходит новая переводная книга по Java. У книги очень хорошие отзывы и высокий рейтинг на сайте www.amazon.com.

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

Все о String.intern()

Reading time4 min
Views125K
Думаю, что многие Java-разработчики знают или хотя бы слышали о методе String.intern(). Но далеко не каждый использует его в своих приложениях или представляет в каких случаях он полезен и полезен ли вообще. Так было и со мной до тех пор пока я не столкнулся с этим методом в одном из проектов. В тот момент я захотел узнать смысл и особенности его использования и набрел на одну весьма интересную статью ведущего разработчика Yahoo! по имени Ethan Nicholas, переводом которой теперь хочу поделиться с той частью Хабра-сообщества, которая не безразлична к языку Java.

Тем, кто знает об этом методе лишь понаслышке, добро пожаловать под кат.
Читать дальше →

Знаешь ли ты JAVA, %username%?

Reading time11 min
Views150K
JAVA Evil EditionНедавно я сдавал экзамен Oracle Certified Professional Java Programmer (бывший Sun Certified), и за время подготовки прорешал огромное количество различных задачек. Отдельные задачки по джаве иногда появляются на хабре и вызывают немалый интерес, поэтому я решил поделиться накопленным и сделать небольшую подборку.

Итак, ниже представлен десяток наиболее, на мой взгляд, интересных задач по Java SE из более чем 1000, проработанных мной. Сложность варьируется от средней до ооооооочень сложной. Решение большинства задач практически не требует знания API, достаточно логики и фундаментальных основ Java.

К слову, сложность экзамена Oracle Certified Professional Java Programmer гораздо ниже чем сложность данного теста, поэтому все, кто правильно ответит хотя бы на половину этих вопросов, может смело сдавать этот экзамен без всякой подготовки.

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

ВНИМАНИЕ: во второй половине статьи — ответы и подробные пояснения по соответствующим нюансам JAVA.

Читать дальше →

Подготовка к сдаче экзамена Oracle certified JAVA programmer

Reading time2 min
Views24K
Совершенно случайно заметил что на dzone появился гайд по относительно новому экзамену от Oracle и тоже решил написать.

Скажу сразу что здесь не будет silver bullet golden hammer для сдачи этого экзамена. Среди Java разработчиков распространена тяга к best practices. Так как многие проблемы уже когда-то и кем то были решены в ходе почти 20ти летного процесса развития языка, то среди программистов считается плохим тоном придумывать свой велосипед. Настоящий Java-гуру мыслит парадигмами из книг Josh Bloch и Bruce Eckel. Меня, пришедшего из других языков, это всегда умиляло. В данном случае прийдется много работать, т.к. идеального источника для подготовки пока нет.
Далее

Чтение конфигурационных файлов в Java: nProperty

Reading time10 min
Views88K
image
Многие разработчики сталкиваются с необходимостью чтения конфигурационных (*.ini, *.prop, *.conf, etc.) файлов в разрабатываемых приложениях. В Java есть стандартный класс Properties, с помощью которого можно очень легко загрузить ini-файл и прочитать его свойства. При большом объеме конфигурационных файлов чтение и запись настроек в объекты превращается в очень нудную и рутинную работу: создать объект Properties, конвертировать каждую настройку в нужный формат и записать его в поле.

Библиотека nProperty (Annotated Property) призвана упростить этот процесс, сократив примерно в два раза требуемый код для написания загрузчиков настроек.

Чтобы показать, каким образом возможно обещанное сокращение кода в два раза, ниже приведены два примера: в первом примере используется стандартный класс Properties, во-втором — nProperty.

Прошу под кат за подробностями

Мой отчет по годовому изучению платформы Java EE

Reading time6 min
Views119K
Этот пост – отчет по результатам годового изучения платформы Java EE.
Он будет полезен мне своей отчетностью. Может быть пост будет полезен тем читателям хабра, которые задумали учить Джаву.

подробности

Подкаст «Заметки о Qt» — первый, пилотный, выпуск

Reading time1 min
Views2K
Мы с Vass тут слегка заскучали и решили попробовать сделать подкаст по Qt. Этот выпуск пробный, косяков в нем много и от вас, слушатели, зависит будут ли еще выпуски. В общем, слушайте, критикуйте, комментируйте, предлагайте.

Сам подкаст на rpod.ru — qt-notes.rpod.ru/272730.html
Читать дальше →

QJson как библиотека для работы с JSON в Qt

Reading time4 min
Views64K

Привет, хабр!

На хабре еще не писали про QJson — отличный и очень простой инструмент для работы с JSON на Qt. Вообще Qt рекоммендуют использовать XML — но мне кажется что в очень многих случаях он бывает чересчур уж избыточным или лишним. В некоторых случаях лучше использовать JSON. В этой заметке я расскажу как скачать, собрать и использовать QJson для работы с JSON в Qt.

Внимание! Этот пост — заметка. Все что вы тут прочитаете можно найти в гугле и на офф сайте проекта — но я думаю что такая заметка не будет лишней.
Читать заметку...

Information

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