Временная скидка 60% на годовую подписку!
Главная Кодинг (страница 5)

Кодинг

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

Xakep #215

Как защитить свое приложение для Android от реверса и дебага

Уровень пиратства в экосистеме Android таков, что говорить об этом нет никакого смысла. Приложение не только легко украсть — его легко взломать, отвязать от сервисов проверки, отключить рекламу или даже внедрить в него бэкдор. Выкладывая свое творение в Play Store, ты в результате даришь любителям вареза еще один хороший продукт. К счастью, с этим вполне можно бороться.

Xakep #215

Красота из фрагментов. Как улучшить UI в Android c помощью класса Fragment

Создать хороший UI сложно, особенно если у тебя еще не так много опыта в этой области. Поэтому вот тебе быстрый тест на знание вопроса: если ты привык, что для нового окна обязательно нужен Activity или вместо плавной анимации в свеженаписанной программе почему-то происходят конвульсии, — эта статья для тебя :).

Xakep #215

Куда уходит память. Разбираемся с memory leaks в Java на примере Spring и Log4j

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

Xakep #214

Разбираемся с фреймворком ReactiveX и пишем в реактивном стиле для Android

Мир ООП-разработки вообще и язык Java в частности живут очень активной жизнью. Тут есть свои модные тенденции, и сегодня разберем один из главных трендов сезона — фреймворк ReactiveX. Если ты еще в стороне от этой волны — обещаю, она тебе понравится! Это точно лучше, чем джинсы с завышенной талией :)

Xakep #214

Задачи на собеседованиях #214. Задачи от Stack Group и решение задач от Virtuozzo

Как насчет свежей порции облачных ноябрьских задачек? А вот и нет! Задачки-то обычные, приземленные. «Облачная» — это компания, нам с тобой эти задачи задает. Встречай — Stack Group, которая предоставляет весь спектр соответствующих услуг: IaaS, storage, VDI / VDI GRID, DRaaS и другие. Как видишь, работодатель большой и завидный :)

Xakep #214

Что интересного произошло с нашими программерами за месяц. Колонка авторов

Каждый месяц со страниц рубрики «Кодинг» на тебя смотрят самые обычные (просто очень крутые) программисты. А в свободное от написания статей время они живут обычной кодерской жизнью. В этом месяце мы решили сделать экспериментальную колонку, в которой не один колумнист, а сразу несколько авторов расскажут о том, что им показалось интересным в этом месяце.

Xakep #214

Программируем на языке R: как правильно писать циклы для обработки больших объемов данных

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

Xakep #214

VK.com как бэкенд: подводные камни. Решаем проблемы по заявкам читателей

В прошлых статьях была описана разработка мобильного приложения со всеми любимым VK в роли бесплатного и услужливого сервера. Как это часто случается со всякими хитровыкрученными системами, рано или поздно они обрастают мелкими, но досадными проблемами, затрудняющими их использование. И как только это случается, журнал «Хакер» снова приходит на помощь!

Xakep #213

Material Design за 15 минут: проверяем, на что способен ConstraintLayout

Этим летом компания Google анонсировала появление нового способа верстки пользовательских интерфейсов. Нововведения содержатся в классе ConstraintLayout: предполагается, что он не только упростит передачу мыслей дизайнеров разработчикам, но и повысит скорость работы приложения. Давай разберемся, как много в этих словах правды и где ждать подвохов.

Xakep #213

Погружаемся в Windows 10 Mobile. Как писать и отлаживать программы для новой ОС

Странная политика Microsoft в отношении 7 и 8 семейств своей мобильной операционной системы отвратила множество пользователей от экспериментов с «окошками» для смартфонов. Но «десятка» уже шагает по планете, ее главный козырь — одно ядро для всех платформ, и поэтому у нее есть все шансы перетянуть на себя хорошую часть мобильного рынка.

Xakep #213

][-обзор: сравниваем топ-6 лучших игровых движков для программиста

Со времени предыдущего обзора ситуация на игровом рынке довольно ощутимо изменилась. Геймеры постоянно хотят чего-нибудь новенького, а инди-нишу (которая два-три года назад была настоящим трендом) активно поддавливают слоны вроде Electronic Arts, Ubisoft и Microsoft. И все-таки на этом поприще все еще можно заработать!

Xakep #213

Задачи на собеседованиях #213. Задачи от Virtuozzo и награждение победителей от Postgres Professional

Мы особенно любим задачи от международных компаний. И это не только потому, что офис Virtuozzo расположен в Сиэтле: международная компания — это еще и новые связи, совсем другой уровень перспектив и возможностей. А поскольку Virtuozzo не так давно отделилась от другой крупной компании — еще и новые интересные проекты!

Xakep #212

Изучаем Gradle: что умеет система сборки приложений Android Studio

Большинство программистов, разрабатывающих для Android, хотя бы слышали о системе автоматической сборки Gradle. При этом лишь немногие из использующих эту систему кодеров уделяют достаточно времени, чтобы как следует изучить ее возможности. А ведь Gradle очень полезен не только для простой настройки сборки, но и для решения весьма нестандартных задач!

Xakep #212

data.table: выжимаем максимум скорости при работе с данными в языке R

К чему лишние слова? Ты же читаешь статью про скорость, поэтому давай сразу к сути. Статья будет интересна тем, кто уже немного знаком с языком R, а также разработчикам, которые его активно используют, но еще не открыли для себя пакет data.table.

iOS-разработка для начинающих: учимся создавать приложения для iOS с нуля

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

Xakep #212

Скрытый API: интерфейсы, которые Android прячет от разработчиков

В одной из своих предыдущих статей я уже писал о механизме под названием «уровень доступа» (protection level), который определяет, может ли твой код обращаться к тем или иным функциям ОС. Высокий уровень доступа получает только системный софт, поэтому для простых смертных он закрыт. Однако есть в Android и еще одна интересность, имя которой — скрытый API. И чтобы получить к нему доступ, не нужен root, не надо подписывать приложение ключом прошивки, достаточно лишь немного пораскинуть мозгами.

Xakep #211

Виртуальная реальность для программиста, часть 2: MS HoloLens

В прошлой статье я сделал общий обзор средств разработки для наиболее интересных устройств виртуальной реальности и дал торжественное обещание в следующем материале прицельно рассказать тебе про Microsoft HoloLens. Что ж, пора сдержать слово!

Xakep #211

VK.com — твой бесплатный бэкенд. Пишем свой клиент для стены группы vk.com

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

Xakep #211

Математика для программиста, часть 3. Создаем вероятностную структуру данных на Java

В своей прошлой «математической» статье я пообещал привести пример реализации. Речь пойдет о том, как реализовать собственную структуру данных, причем не простую, а вероятностную. Постараюсь описать все просто и понятно, не забыв при этом оставить задел для усложнения и модернизации.

Xakep #211

Android Studio: 10 траблов начинающего разработчика и их решения

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

Xakep #211

Задачи на собеседованиях #211. Задачи от Postgres Professional и награждение победителей от «Лаборатории Касперского»

Postgres Professional — относительно небольшая компания, трудится в ней около пятидесяти человек. В ее основе — разработчики известной СУБД PostgreSQL (среди основателей — три ведущих разработчика и активных участника международного сообщества). В 2016 году компания выпустила собственную СУБД Postgres Pro, представляющую собой улучшенную версию PostgreSQL. Передаем им слово!

Xakep #211

Виноград безумия. Программируем без букв на Emojicode

Сегодня мы откажемся от традиционных средств коммуникации и научимся программировать при помощи зверей, плодов и десертов. Мы испытаем просветление, поймем, как пиво помогает избежать ошибок, и, постепенно утрачивая рассудок, составим интерпретатор языка Brainfuck из девяти лимонов, двадцати двух арбузов и шести шоколадок.

Xakep #211

Как перестать кодить на Java и начать жить: сто* причин изучить Kotlin

Ребята из JetBrains сделали очень много крутых вещей, среди которых Kotlin — молодой, но очень перспективный язык программирования под JVM и Android. В этой статье я покажу, чем этот язык может заинтересовать Android-разработчика и заставить его навсегда позабыть про Java.

Xakep #210

Виртуальная реальность для программиста: обзор устройств и средств разработки

В середине девяностых казалось, что виртуальная реальность уже где-то рядом. Непонятно, на чем основывалось это ощущение, но факт остается фактом. И вот прошло двадцать с лишним лет: мы наконец стоим на пороге виртуального мира, подсматривая через щёлку в его прекрасное будущее. А кто делает будущее цифрового мира? Мы, программисты!

Xakep #210

Внимание, это розыгрыш! Пишем простой смарт-контракт

Писать умные контракты для Ethereum — не такая сложная задача, как может показаться. Чтобы рассказать тебе, как это делать, мы решили провести небольшой эксперимент. В этой статье описана разработка умного контракта, который разыгрывает трехмесячную подписку на «Хакер». Установив клиент и запустив контракт, ты сможешь принять участие!

Учиться, как гик! Можно ли научиться программированию и администрированию сетей в интернете?

Сегодня для получения хорошо оплачиваемой работы в ИТ требуется не просто иметь профильное образование, а постоянно повышать его уровень. Многие спорят о том, что правильнее: изучать программирование и администрирование сетей в институте, самостоятельно заниматься по книгам, накапливать портфолио за счет участия в мелких проектах, посещать мастер-классы разных гуру или остановиться на онлайновом формате занятий?

Xakep #210

О чем молчат книги по Android. 5 проблем, о которых не пишут в документации

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

Xakep #210

Импортозамещенное шифрование глазами программиста. Хешируем по ГОСТ 34.11—2012

ГОСТ 34.11—2012 был разработан ФСБ России для применения в продуктах, которые будут крутиться в ответственных и критических сферах и для которых обязательно прохождение сертификации в уполномоченных органах (ФСТЭК, ФСБ и подобных). Давай посмотрим, как устроен отечественный хеш-алгоритм и чем он лучше других вариантов.

Xakep #210

Задачи на собеседованиях #210. Задачи от «Лаборатории Касперского» и дополнительное награждение от ABBYY

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

Xakep #209

Пишем модули для троянов для Android. Часть 2

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

WWW: HyperDev — онлайновая среда разработки на Node.js

Представь, что тебе нужно быстро развернуть небольшой, но при этом динамический сайт. Скажем, проверить какую-то идею или на скорую руку создать инструмент, доступный через интернет. Сервис HyperDev призван сделать предварительную подготовку ненужной: ты заходишь на hyperdev.com и все — твой сайт работает, можешь начинать кодить!

Xakep #209

Как создать себе IoT. Часть 2: завершение проекта

В прошлой статье мы собрали сеть из датчиков и андроидофона с использованием BLE (Bluetooth Low Energy, Bluetooth Smart), поюзали SensorTag 2 от Texas Instruments и ознакомились с характеристиками и профилями. Узнали мы и как можно принимать и передавать данные через BLE на Android с железа. Сегодня мы свяжем полученные SensorTag’ом данные об окружающей среде через смартфон c небольшим облачным сервисом.

Xakep #209

Многопоточная разработка для Android, часть 2. Раздаем задачи по сервисам

В продолжении темы прошлого номера мы узнаем, каким образом в Android можно генерировать дополнительные потоки и зачем это может понадобиться. Сегодня поговорим о таком компоненте приложения, как сервисы, и опишем их роли в мобильном мире Android. Сервисы и потоки тесно переплетены между собой, поэтому, если ты еще не читал прошлый номер «Хакера», начни с моей статьи, будет полезно!

Xakep #209

Intel Multi-OS Engine: ожидания и реальность кросс-платформенной разработки

Фреймворк Multi-OS Engine — технология Intel, предназначенная для разработки кросс-платформенных мобильных приложений для iOS и Android из-под Windows или OS X. При этом на выходе должны получаться нативные приложения для каждой из платформ. А получаются ли? Давай посмотрим.

][-гайд: выбери оптимальный язык программирования для своих задач

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

Xakep #208

Пишем приложения с поддержкой плагинов для Android. Часть 1

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

Xakep #208

Многопоточная разработка для Android, часть 1

При создании мобильного приложения чуть сложнее «Hello, world» почти наверняка требуется скачать что-то из Сети или считать файл с диска. Для стабильной работы программы в целом эти действия должны совершаться в отдельных потоках. Зачем, когда и как генерировать новые потоки в Android — об этом ты узнаешь в этой статье.

Xakep #208

Приручаем Сфинкса, часть 2: практическая реализация распознавания речи

В двух предыдущих частях нашего обзора мы описали современные системы распознавания речи для Linux и попытались установить и настроить одну из них — CMU Sphinx. В заключительной части попробуем использовать наши наработки на практике, прикрутив движок Pocketsphinx к Android-устройству и контроллеру умного дома. Стоит сразу предупредить — для выполнения всех описанных ниже действий необходимо базовое знание Java.

Xakep #208

Очерки о математике. Может ли программист обойтись без нее?

Сложную задачу поставила передо мной редакция журнала: на правах действующего программиста и преподавателя высшей школы, с целью борьбы с веб-программистами и прочими верстальщиками раскрыть тему необходимости изучения математики :). Что ж — вызов принят, хотя это и не так просто. Тем более что в последнее время к вопросу «Должен ли программист знать классическую математику?» добавился еще один: «А должен ли data scientist уметь программировать?»

Страница 5 из 10В начало...34567 ...

25 лет «Хакеру»!

Еженедельный дайджест

Спасибо за подписку! Мы будем присылать важные новости ИБ в еженедельном дайджесте
Ошибка при подписке Случилась ошибка при создании подписки на наш дайджест. Пожалуйста, попробуйте позднее
Важные события и скидка на подписку:
«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
4000 р.
на год
920 р.
на месяц

«Хакер» в соцсетях

Материалы для подписчиков