Как стать автором
Обновить
20
0
Борис Кафтанатий @kaftanati

Пользователь

Отправить сообщение

Руководство по возможностям Java версий 8-14

Время на прочтение13 мин
Количество просмотров26K

Здесь есть все, что вам нужно знать о различных версиях и функциях Java.



Java 8, Java 11, Java 13, Java 14 — какая разница?


Вы можете использовать это руководство, чтобы получить практическую информацию о том, как найти и установить последнюю версию Java, понять различия между дистрибутивами Java (AdoptOpenJdk, OpenJDK, OracleJDK и т.д.), А также получить обзор возможностей языка Java, включая версии Java 8-14.


Примечание переводчика
17 февраля был опубликован перевод Руководство по версиям и возможностям Java
В комментарии к нему Julegg написал
Там у Марко уже описание java-14 добавилось. Будет ли тут перевод добавлен?

Вашему вниманию предлагается обновленная версия руководства от 09 апреля 2020 г.
Читать дальше →

Как начать использовать USB Type-C в своих разработках

Время на прочтение13 мин
Количество просмотров53K

В современных embedded-устройствах используется огромное количество различных разъемов, таких как USB Type-B, miniUSB, microUSB и так далее. Все они отличаются форм-фактором, максимальной пропускной способностью и другими различными характеристиками. Самым верным решением в данной ситуации было бы минимизировать количество используемых разъемов и остановиться на каком-то одном, «едином» для большинства разработок. Наиболее перспективным выглядит использование разъема Type-C. В нем объединены невероятная пропускная способность с высокой мощностью питания. Такие производители, как Apple, Huawei, Sony уже внедряют разъем Type-C в свои разработки, постепенно отказываясь от использования «старых» разъемов. А чем embedded-разработчики хуже?


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

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

Android insets: разбираемся со страхами и готовимся к Android Q

Время на прочтение23 мин
Количество просмотров52K
Android Q — это десятая версия Android с 29-м уровнем API. Одна из главных идей новой версии это концепция edge-to-edge, когда приложения занимают весь экран, от нижней рамки до верхней. Это значит, что Status Bar и Navigation Bar должны быть прозрачными. Но, если они прозрачны, то системный UI нет — он перекрывает интерактивные компоненты приложения. Эта проблема решается с помощью insets.

Мобильные разработчики избегают insets, они вызывают у них страх. Но в Android Q обойти insets не удастся — придется их изучить и применять. На самом деле, в insets нет ничего сложного: они показывают, какие элементы экрана пересекаются с системным интерфейсом, и подсказывают, как переместить элемент, чтобы он не конфликтовал с системным UI. О том, как работают insets и чем они полезны, расскажет Константин Цховребов.

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

«Сгоревшие» сотрудники: есть ли выход?

Время на прочтение18 мин
Количество просмотров161K
Ты работаешь в хорошей компании. Вокруг тебя крутые профессионалы, получаешь достойную зарплату, каждый день делаешь важные и нужные вещи. Илон Маск запускает спутники, Сергей Семёнович улучшает и без того лучший город Земли. Погода отличная, солнце светит, деревья цветут — живи да радуйся!

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

Что же делать? Как работать с Игнатом? Добро пожаловать под кат!


Почему только прокачка кодинга не сделает из тебя лучшего разработчика

Время на прочтение9 мин
Количество просмотров27K


Techlead Skyeng Кирилл Роговой (flashhhh) выступает на конференциях с докладом, в котором рассказывает о навыках, развивать которые стоит каждому хорошему разработчику, чтобы стать лучшим. Я попросил его поделиться этой историей с читателями Хабры, передаю Кириллу слово.


Миф про хорошего разработчика гласит, что он:


  1. Пишет чистый код
  2. Знает много технологий
  3. Быстрее кодит задачи
  4. Знает кучу алгоритмов и шаблонов проектирования
  5. Умеет отрефакторить любой код по Clean Code
  6. Не тратит время на непрограммистские задачи
  7. 100% мастер своей любимой технологии

Так видят идеальных кандидатов HRы, и вакансии, соответственно, выглядят тоже так.


Но мой опыт говорит, что это не сильно соответствует действительности.

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

Магия чисел в децимальных номерах

Время на прочтение10 мин
Количество просмотров98K
КДПВ

Статья написана в дополнение к предыдущей по просьбе сообщества.

В этой статье разберемся с магией чисел в децимальных номерах. И рассмотрим нумерацию не только принятую в ЕСКД (Единая система конструкторской документации), а также в ЕСПД (Единая система программной документации) и КСАС (Комплекс стандартов на автоматизированные системы), так как Харб в большей степени состоит из ИТ специалистов.

В соответствии с требованиями стандартов ЕСКД, ЕСПД и КСАС каждому изделию (программе, системе) должно быть присвоено обозначение — децимальный номер.

Обозначение присваивается в соответствии с установленными в стандартах правилами. Это придумано людьми в древние времена для унификации и упрощения идентификации изделий и документации, ведения учёта и архива.

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

Для каждого комплекта стандартов рассматривать порядок действий будем по отдельности.
Приступим

Слон в посудной лавке: 3D принтеры с огромным полем печати

Время на прочтение5 мин
Количество просмотров12K
Со временем, все сталкиваются с необходимостью производства крупных деталей с помощью аддитивных технологий. А бытовые 3D принтеры, в своей основной массе, имеют относительно небольшой стол для печати (квадрат со стороной 180....220 мм). Маловато. А что делать, если хочется большего?

Существуют различные интересные решения для увеличения размеров печати, в том числе и огромные дорогостоящие промпринтеры, но есть и бюджетные варианты для печати дома.


Рисуем мультяшный взрыв за 180 строчек голого C++

Время на прочтение6 мин
Количество просмотров70K
Неделю назад я опубликовал очередную главу из моего курса лекций по компьютерной графике; сегодня опять возвращаемся к трассировке лучей, но на сей раз пойдём самую чуточку дальше отрисовки тривиальных сфер. Фотореалистичность мне не нужна, для мультяшных целей подобный взрыв, как мне кажется, сойдёт.

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

Итого, как в таких условиях нарисовать вот такую картинку за 180 строчек кода?


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

Обзор 27” IPS монитора Acer HA270bid: для самостоятельной доработки

Время на прочтение8 мин
Количество просмотров25K
Так случилось, что в жизни на экране моего старого 24-дюймового IPS монитора Philips появилась светлая полоса. Аккурат посреди экрана, сверху вниз. Вопрос покупки нового монитора внезапно назрел.
Читать дальше →

DIY тепловизор на Raspberry PI или «Кажется теперь я знаю, чем займусь этим летом»

Время на прочтение6 мин
Количество просмотров103K
image

Всем привет!

Пришла зима, а с ней и задача проверить теплоизолирующие свойства построек загородной резиденции дачи. А тут ещё оказалось, что на известном китайском сайте появились вполне доступные тепловизионные модули. Не собрать ли себе экзотическую и, возможно, даже полезную вещь — самодельный тепловизор? Почему бы и нет, вроде и Raspberry где-то валялась… Что из этого вышло — расскажу под катом.
Читать дальше →

Эволюция планировщиков задач

Время на прочтение12 мин
Количество просмотров19K


Приложение iFunny, над которым мы работаем, доступно в сторах уже более пяти лет. За это время мобильной команде пришлось пережить множество разных подходов и миграций между инструментами, а год назад появилось время перейти с самописного решения и посмотреть в сторону чего-то более «модного» и распространённого. Эта статья — небольшая выжимка о том, что было изучено, на какие решения смотрели и к чему в итоге пришли.
Читать дальше →

Переход на Kotlin в Android-проекте: Tips and Tricks

Время на прочтение10 мин
Количество просмотров14K

Автор: Сергей Ешин, Strong Middle Android Developer, DataArt

Уже более полутора лет прошло с тех пор, как Google объявил об официальной поддержке Kotlin в Android, а самые матерые разработчики начали экспериментировать с ним в своих боевых и не очень проектах больше трех лет назад.

Новый язык тепло приняли в Android-сообществе, и подавляющая часть новых проектов на Android стартует с Kotlin на борту. Важно и то, что Kotlin компилируется в JVM-байткод, следовательно, полностью совместим с Java. Значит, в существующих Android-проектах, написанных на Java, тоже есть возможность (более того — потребность) задействовать все фичи Kotlin, благодаря которым он и приобрел столько поклонников.

В статье я расскажу об опыте миграции Android-приложения с Java на Kotlin, трудностях, которые пришлось преодолеть в процессе, и объясню, почему все это было не зря. Статья в большей степени рассчитана на Android-разработчиков, только начинающих изучение Kotlin, и кроме личного опыта, опирается на материалы других членов сообщества.
Читать дальше →

Регулятор оборотов минидрели

Время на прочтение3 мин
Количество просмотров39K
Сверление печатных плат — настоящая головная боль для электронщика, но наше новое устройство поможет ее немного смягчить. Это простое и компактное дополнение к минидрели позволит продлить жизнь двигателю и сверлам. Схема, плата, инструкции по настройке, видео — все в статье!


Введение в новую систему тайловых карт Unity

Время на прочтение12 мин
Количество просмотров108K

Знакомство с систему двухмерных тайловых карт Unity даёт отличную возможность экономии времени инди-разработчиков и игровых студий на прототипирование и создание качественных 2D-игр.

Без этой системы можно потратить дни, если не недели на написание собственной системы тайловых карт или переработку чужой. И это только программирование, а как насчёт редактора тайловых карт?

Новая система бесплатна и встроена непосредственно в редактор Unity. Она предоставляет множество возможностей, которые мы рассмотрим в этом туториале.

В этой статье мы воспользуемся простой тайловой 2D-игрой, чтобы узнать следующее:

  • Как работают тайловые карты.
  • Как включать тайловые карты в Unity и настраивать сетку.
  • Как добавлять в проект спрайты, преобразовывать их в тайлы, а затем добавлять их в палитру тайлов.
  • Как использовать инструменты редактора тайлов для создания уровней.
  • Как сортировать тайлы и размещать их в разных слоях.
  • Как добавить тайлам физику Unity.
  • Как динамически окрашивать тайлы.
  • Как изменять тайлы-префабы с помощью собственного кода и логики.
  • Как добавлять в проект собственные расширения и скрипты тайловых карт.
Читать дальше →

Анимации в Android по полочкам (Часть 1. Базовые анимации)

Время на прочтение11 мин
Количество просмотров97K
Всем привет!

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

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

Головная боль от RecyclerView.Adapter — выход есть

Время на прочтение5 мин
Количество просмотров17K
Привет, Хабр! Сегодня в нашем блоге Макс Туев, архитектор Surf, одной из наших сертифицированных студий. Ребята занимаются заказной разработкой, поэтому сроки важны не меньше, чем качество кода. Подходы и технологии, которые тормозят разработку, здесь не подходят. Хороший пример такого — RecyclerView.Adapter. Под катом Макс расскажет, как сэкономить время и нервы. Слово Максу.


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

От «Hello World» до приложения в App Store: советы новичкам

Время на прочтение3 мин
Количество просмотров8K

Материал может быть полезен для людей, которые хотели бы развиваться в сфере мобильной разработки на iOS.

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

Современная Android разработка на Kotlin. Часть 1

Время на прочтение15 мин
Количество просмотров114K
Данная статья является перевом статьи от Mladen Rakonjac

Очень сложно найти один проект, который охватывал бы всё новое в разработке под Android в Android Studio 3.0, поэтому я решил написать его. В этой статье мы разберём следующее:



  1. Android Studio 3
  2. Язык программирования Kotlin
  3. Варианты сборки
  4. ConstraintLayout
  5. Библиотека привязки данных Data Binding
  6. Архитектура MVVM + паттерн repository (с mapper'ами) + Android Manager Wrappers
  7. RxJava2 и как это помогает нам в архитектуре
  8. Dagger 2.11, что такое внедрение зависимости, почему вы должны использовать это.
  9. Retrofit (Rx Java2)
  10. Room (Rx Java2)

Каким будет наше приложение?


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

Я попытаюсь объяснить как можно больше строк кода. Вы всегда можете посмотреть код, который я опубликовал на GitHub.
Читать дальше →

Delegate Adapter — зачем и как

Время на прочтение11 мин
Количество просмотров35K
Практически во всех проектах, которыми я занимался, приходилось отображать список элементов (ленту), и эти элементы были разного типа. Часто задача решалась внутри главного адаптера, определяя тип элемента через instanceOf в getItemViewType(). Когда в ленте 2 или 3 типа, кажется, что такой подход себя оправдывает… Или нет? Что, если завтра придет требование ввести еще несколько типов да еще и по какой-то замысловатой логике?



В статье хочу показать, как паттерн DelegateAdapter позволяет решить эту проблему. Знакомым с паттерном может быть интересно посмотреть реализацию на Kotlin с использованием LayoutContainer.
Читать дальше →

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность