Денис Крешихин

Денис
Крешихин

iOS-разработчик с 15+ летним опытом

Тимлид/сеньор по обстоятельствам

Интересы: swift, uikit, rxswift, oop/ood, devops, agile

2024 © Денис Крешихин

Articles tagged by swift

Нюансы обработки ошибок в completion-коллбеке

В практике программирования Swift часто можно встретить следующий формат completion-коллбеков, которые могут возвращать либо результат без ошибки, либо ошибку:

func doSomething(_ completion: (data: Data?, error: Error?) -> Void())

Проблема таких completion-коллбеков в опционалах которые должны разрешить проблемы возвращения nil на месте параметра data в случае ошибки и nil в параметре error. Но кроме этих двух состояния возникают ещё два непредусмотренных логикой - когда оба параметра nil, или когда оба параметра установлены. В этой заметке я хотел бы порассуждать о том как правильно обрабатывать такие вызовы, т.к. это проблема встречается часто при работе со старыми методами из CocoaTouch, при разработке кода с обратной совместимостью API, а так же при работе с библиотеками третьих сторон.

swiftrxswift10-го мар. 2024read more

Read&Paint

Read&Paint: Puss In Boots

Click and download "Read&Paint: Puss In Boots" from AppStore (FREE, no Ads)

The famous tale about Puss in Boots. Each page has illustration for coloring. It's necessary to colorize all pages for reading all story. Colorize all pages and see an animated clip based on the colorized pages.

Scituner. Open source guitar tuner

Scituner

Click and download SciTuner from AppStore (FREE, no Ads)

SciTuner is guitar tuner with real-time signal visualization. The application uses strong digital processing algorithm for accurate frequency estimation and wave visualization. SciTuner presents many useful features:

  • Works with guitars, ukuleles, banjos, violins and some other instruments
  • Allows to see a wave form of a sound in real time
  • Works in noisy conditions

iosdspguitarswift1-го июня 2015read more