Рассуждения о том, что находится между двумя крайностями - плохим и отличным программистами, нормальном распределении и марафонцах.
https://lwn.net/Articles/641779/
#philosophy
https://lwn.net/Articles/641779/
#philosophy
А вы не забываете занилять созданные в тестах объекты в tearDown? Очень хороший разбор механики работы XCTest и жизненного цикла его объектов. Рекомендация от @circleRect.
http://qualitycoding.org/teardown/
#testing
http://qualitycoding.org/teardown/
#testing
Quality Coding
Most Swift Devs Are Wrong About XCTestCase tearDown…
XCTestCase tearDown is widely misunderstood. I explain the XCTestCase life cycle, and how to write safer tests.
Выложили отчет с Rambler.iOS #8 со всеми видео, слайдами и фотоотчетом! Напоминаю, какие были темы:
- Валидация ответа сервера на JSON схемах
- Разработка системы плагинов с JSCore
- Сервис-ориентированная архитектура
- Чистые unit-тесты
https://habrahabr.ru/company/rambler-co/blog/313102/
#meetups
- Валидация ответа сервера на JSON схемах
- Разработка системы плагинов с JSCore
- Сервис-ориентированная архитектура
- Чистые unit-тесты
https://habrahabr.ru/company/rambler-co/blog/313102/
#meetups
Habr
По итогам Rambler.iOS #8
Две недели назад, 5 октября, состоялась восьмая встреча Rambler.iOS, которую мы предварительно анонсировали на Хабре. В этот раз основной акцент был сделан на контенте самой конференции — мы...
Интересный анализ бинарника приложения Facebook. Особое внимание - на самое длинное название метода, предел мечты просто.
http://blog.timac.org/?p=1303
#analysis
http://blog.timac.org/?p=1303
#analysis
Что на самом деле представляют собой брейкпойнты и как они реализованы на уровне дебаггера.
http://majantali.net/2016/10/how-breakpoints-are-set/
#tools
http://majantali.net/2016/10/how-breakpoints-are-set/
#tools
Несколько простых советов по обеспечению обратной совместимости со старыми версиями iOS при разработке Today Extension'ов.
https://kristina.io/backwards-compatibility-with-ios-10-today-widgets/
#sdk
https://kristina.io/backwards-compatibility-with-ios-10-today-widgets/
#sdk
Лайтовое чтиво на пятничный вечер. Что не так с экраном блокировки в iOS 10 и почему не нужно так делать.
https://uxdesign.cc/a-critical-analysis-of-the-ios-10-lockscreen-experience-726ddfba3c1a#.csk1qkcp5
#ios #ui
https://uxdesign.cc/a-critical-analysis-of-the-ios-10-lockscreen-experience-726ddfba3c1a#.csk1qkcp5
#ios #ui
uxdesign.cc – User Experience Design
A critical analysis of the iOS 10 lockscreen experience
iOS said, “Ok clarity, let’s not be friends anymore.”
Как в Яндексе тестируют энергопотребление приложений - ребята уже выступали с этим докладом на митапе в Авито и заявлены в программе MBLTdev.
https://habrahabr.ru/company/yandex/blog/311046/
#tools #hardware
https://habrahabr.ru/company/yandex/blog/311046/
#tools #hardware
Habr
Измеряем потребление батарейки на мобильных устройствах. Эксперимент в Яндексе
В наши дни можно утверждать, что телефон перестал быть устройством только для звонков. Он позволяет нам оплачивать покупки, находить правильную дорогу, вызывать такси. Ситуация, в которой у вас...
Тепляков подытожил свой опыт парного программирования и привел примеры, в которых эта практика действительно полезна. Спойлер: все вполне ожидаемо.
http://sergeyteplyakov.blogspot.ru/2016/10/pair-programming.html
#xp
http://sergeyteplyakov.blogspot.ru/2016/10/pair-programming.html
#xp
Blogspot
О парном программировании
Идея парного программирования в том, что работа над любым продуктовым кодом должна вестись совместно: вместе дизайним, пилим, ломаем и чиним...
Есть technical debt, а есть technical knowledge debt (не нашел подходящего перевода на русский язык). О том, что это за долг, откуда он появляется и как с ним справляться, рассказывает один из основных контрибьюторов в Swift.
http://modocache.io/technical-knowledge-debt
#philosophy #learning
http://modocache.io/technical-knowledge-debt
#philosophy #learning
modocache.io
Paying Down Technical Knowledge Debt
Programmers frequently encourage one another to "pay down technical debt": spend a little time cleaning up the mess your team made when they implemented a ne...
Про оптимизацию времени компиляции Swift-модулей от разработчиков из Apple. Ребята прямо серьезно так решили свой блог вести, и это очень радует.
https://swift.org/blog/whole-module-optimizations/
#swift
https://swift.org/blog/whole-module-optimizations/
#swift
Swift.org
Whole-Module Optimization in Swift 3
Whole-module optimization is an optimization mode of the Swift compiler.
The performance win of whole-module optimization heavily depends on the project, but it can be up to two or even five times.
The performance win of whole-module optimization heavily depends on the project, but it can be up to two or even five times.
Почему DTO - это анти-ООП паттерн, а ActiveRecord - наоборот.
http://www.yegor256.com/2016/07/06/data-transfer-object.html
#patterns #oop
http://www.yegor256.com/2016/07/06/data-transfer-object.html
#patterns #oop
Yegor Bugayenko
Data Transfer Object Is a Shame
DTO is a very popular design pattern, but it is actually an anti-pattern in object-oriented programming that has no right to exist.
Написал о том, как работаем со сложными лентами контента, в которых сочетаются несколько разных типов данных.
http://etolstoy.com/2016/10/25/complex-feeds/
#architecture
http://etolstoy.com/2016/10/25/complex-feeds/
#architecture
Etolstoy
Feed, why so complex? · Egor Tolstoy
How to implement a complex feed with multiple types of data.
Ускоряем компиляцию проектов путем манипуляций с dSYM.
http://holko.pl/2016/10/18/dsym-debug/
#xcode #swift
http://holko.pl/2016/10/18/dsym-debug/
#xcode #swift
holko.pl
Speeding up Development Build Times With Conditional dSYM Generation
Are you a user of a 3rd party crash reporting service, like Crashlytics or HockeyApp, who wants to speed up simulator builds? I've got just the right not-so-weird trick for you today.
Минутка инди-разработчиков. Ребята из Branch собрали классный чек-лист, который помогает не зафакапить запуск нового приложения.
https://www.producthunt.com/posts/app-launch-checklist
#marketing
https://www.producthunt.com/posts/app-launch-checklist
#marketing
Product Hunt
DemoApp.Link - You craft the app, we create its demo link | Product Hunt
Analytics, Android, Apple, and Apple Watch
У Линуса Торвальдса можно перенять не только крылатые фразочки для код-ревью, но и отношение к чистоте кода. Разбираем пример из одного интервью с ним и в очередной раз вспоминаем, что всегда есть пространство для улучшения - даже у тех функций, которые мы пишем уже не задумываясь. Рекомендация от @resistandbite.
https://medium.com/@bartobri/applying-the-linus-tarvolds-good-taste-coding-requirement-99749f37684a
#cleancode
https://medium.com/@bartobri/applying-the-linus-tarvolds-good-taste-coding-requirement-99749f37684a
#cleancode
Medium
Applying the Linus Torvalds “Good Taste” Coding Requirement
In a recent interview with Linus Torvalds, the creator of Linux, at approximately 14:20 in the interview, he made a quick point about…
Бесконечно подробная статья про парсинг JSON в iOS. Куча теории, разбор часто встречающихся проблем, эксперименты и замеры производительности и надежности разных парсеров - вообще все. Однозначно в закладки, Evernote - или куда вы там статьи сохраняете.
http://seriot.ch/parsing_json.html
#networking #libraries
http://seriot.ch/parsing_json.html
#networking #libraries
Обзор очень мощной библиотеки для работы с анимациями в iOS - как самописными, так и svg.
https://habrahabr.ru/post/313630/
#animation
https://habrahabr.ru/post/313630/
#animation
Хабр
Macaw — удобная библиотека для векторной графики в Cocoa
Привет Хабр! Современные интерфейсы мобильных приложений содержат тонны иллюстраций и анимаций, начиная от хитрых градиентов и заканчивая диаграммами акций. Поэт...
Про то, как в построены процессы в iOS разработке Badoo: тесты, взаимодействие отделов, работа с Git, рефакторинг и много чего еще.
https://www.youtube.com/watch?v=_dp73fcyo2o
#processes
https://www.youtube.com/watch?v=_dp73fcyo2o
#processes
YouTube
Багфиксинг процесса разработки в iOS: взгляд с двух сторон
Techleads Meetup #1
"Багфиксинг процесса разработки в iOS: взгляд с двух сторон"
Екатерина Николаенко, iOS QA Lead и
Катерина Трофименко, iOS Developer (Badoo)
Описание:
Приложение Badoo для iOS существует около 7 лет и пережило уже 4 реинкарнации. Наши…
"Багфиксинг процесса разработки в iOS: взгляд с двух сторон"
Екатерина Николаенко, iOS QA Lead и
Катерина Трофименко, iOS Developer (Badoo)
Описание:
Приложение Badoo для iOS существует около 7 лет и пережило уже 4 реинкарнации. Наши…
Немного о пользе явных зависимостей и проблемах глобального стейта.
http://misko.hevery.com/2008/08/17/singletons-are-pathological-liars/
#patterns
http://misko.hevery.com/2008/08/17/singletons-are-pathological-liars/
#patterns
Если вы когда-нибудь интересовались, что именно происходит при нажатии Cmd+U, то есть при прогоне тестов, эта статья для вас. Детально разобрали весь процесс запуска тестов, участников процесса и все такое.
http://modocache.io/sentestingkit-how-does-it-even
#xcode #sdk #testing
http://modocache.io/sentestingkit-how-does-it-even
#xcode #sdk #testing
modocache.io
SenTestingKit: How Does it Even?
Have you ever wondered what used to happen when you hit ⌘U to run your unit tests in Xcode 4.6 and prior? Here's a step-by-step sequence of events detailing ...