<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-1535079481033218565</atom:id><lastBuildDate>Wed, 06 Nov 2024 02:43:29 +0000</lastBuildDate><category>iOS</category><category>Objective-C</category><category>Swift</category><category>Video Tutorials</category><category>OS X</category><category>Tips&amp;Tricks</category><category>Books</category><category>iOS 8</category><category>Cocoa</category><category>Yosemite</category><category>iOS 9</category><category>Design</category><category>Wallpapers</category><category>Icons</category><category>Class</category><category>NSTableView</category><category>NSFileManager</category><category>NSString</category><category>Animation</category><category>Useful Links</category><category>IgorMalevaniy</category><category>Libs</category><category>iOS 10</category><category>swift 3</category><category>NSNumber</category><category>NSFileHandle</category><category>#pragma mark</category><category>5K Wallpapers</category><category>@protocol</category><category>Category</category><category>NSCollectionView</category><category>NSDate</category><category>NSPopUpButton</category><category>NSSlider</category><category>Terminal</category><category>4K Wallpapers</category><category>BOOL</category><category>Humor</category><category>KVC</category><category>Media</category><category>NSAttributedString</category><category>NSCursor</category><category>NSDateFormater</category><category>NSDictionary</category><category>NSMenu</category><category>NSMutableString</category><category>NSPopover</category><category>NSUserDefault</category><category>StatusBar</category><title>Objective-C &amp;amp; Cocoa Dev Блог</title><description></description><link>http://ipetrovich.blogspot.com/</link><managingEditor>noreply@blogger.com (Sergey)</managingEditor><generator>Blogger</generator><openSearch:totalResults>287</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-3719080639821250647</guid><pubDate>Sat, 29 Apr 2017 21:02:00 +0000</pubDate><atom:updated>2017-04-30T10:18:04.016+03:00</atom:updated><title>Removed references to the books (Wenderlich)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSIYpsoZwCVHdkJkVY_6qhhh3URPhHRfc3VKVTf4HxxtolcGdS-ZEGz3rAMggk9REYRMCjhYkx1YbOPmIW2GnUUNTLRzOR_gb4Yqltb0dCDXagQY1B7x1fhxxM-V7B652N4T4XF8NnkumA/s1600/document-error-flat.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSIYpsoZwCVHdkJkVY_6qhhh3URPhHRfc3VKVTf4HxxtolcGdS-ZEGz3rAMggk9REYRMCjhYkx1YbOPmIW2GnUUNTLRzOR_gb4Yqltb0dCDXagQY1B7x1fhxxM-V7B652N4T4XF8NnkumA/s1600/document-error-flat.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Unfortunately I remove references to the books (Wenderlich) at the request of the author&#39;s books.&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Sorry friends.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: red; font-size: large;&quot;&gt;&lt;b&gt;Look new updates!!!&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://rwdc17v.gear.host/&quot; target=&quot;_blank&quot;&gt;RWDC&lt;/a&gt;&amp;nbsp;- Gift (from&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;friends)&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://adf.ly/1fmbx4&quot;&gt;All my books&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/11/unfortunately-i-remove-references-to.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSIYpsoZwCVHdkJkVY_6qhhh3URPhHRfc3VKVTf4HxxtolcGdS-ZEGz3rAMggk9REYRMCjhYkx1YbOPmIW2GnUUNTLRzOR_gb4Yqltb0dCDXagQY1B7x1fhxxM-V7B652N4T4XF8NnkumA/s72-c/document-error-flat.png" height="72" width="72"/><thr:total>217</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-7219835032185480699</guid><pubDate>Tue, 11 Apr 2017 20:51:00 +0000</pubDate><atom:updated>2017-04-11T23:51:31.098+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 10</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">swift 3</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>obj-c Core Data and Advanced Swift (Updated to Swift 3)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h3 style=&quot;text-align: center;&quot;&gt;
obj-c Core Data and Advanced Swift (Updated to Swift 3)&lt;/h3&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1mBITe&quot; target=&quot;_blank&quot;&gt;Core Data&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1mBIWE&quot; target=&quot;_blank&quot;&gt;Advanced Swift&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2017/04/obj-c-core-data-and-advanced-swift.html</link><author>noreply@blogger.com (Sergey)</author><thr:total>6</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-6646696764441058423</guid><pubDate>Fri, 07 Apr 2017 21:23:00 +0000</pubDate><atom:updated>2017-04-08T00:23:32.357+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS 10</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">swift 3</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><category domain="http://www.blogger.com/atom/ns#">Video Tutorials</category><title>Reactive Programming in iOS with RxSwift</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCHDBAJbkJutZl5jneBKVia53Bl7ubjnpCsDw5XsC0AAw4m5GN8u_b8laAu8Y9WwYms2SwLDWPxGDOwZDLkT9I-LvJNMUBdMBrgpS63rkv8BPITRNOeWFBKMjzylYg6tQZYXZc_q7pa989/s1600/Lynda.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;410&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCHDBAJbkJutZl5jneBKVia53Bl7ubjnpCsDw5XsC0AAw4m5GN8u_b8laAu8Y9WwYms2SwLDWPxGDOwZDLkT9I-LvJNMUBdMBrgpS63rkv8BPITRNOeWFBKMjzylYg6tQZYXZc_q7pa989/s640/Lynda.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2 style=&quot;text-align: center;&quot;&gt;
Reactive Programming in iOS with RxSwift&lt;/h2&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1m7J1I&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;&amp;nbsp;(535 mb)&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2017/04/reactive-programming-in-ios-with-rxswift.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCHDBAJbkJutZl5jneBKVia53Bl7ubjnpCsDw5XsC0AAw4m5GN8u_b8laAu8Y9WwYms2SwLDWPxGDOwZDLkT9I-LvJNMUBdMBrgpS63rkv8BPITRNOeWFBKMjzylYg6tQZYXZc_q7pa989/s72-c/Lynda.jpg" height="72" width="72"/><thr:total>8</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-3455808737669627664</guid><pubDate>Sun, 02 Oct 2016 12:34:00 +0000</pubDate><atom:updated>2016-10-02T15:34:42.474+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS 10</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">swift 3</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><category domain="http://www.blogger.com/atom/ns#">Video Tutorials</category><title>[UDEMY] iOS 10 &amp; Swift 3: From Beginner to Paid Professional</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYDWZsCAiMZ8O9kn8FWIiv8oZF8NzFMrtowTFYDtIuLQ4i5_Fw6AracRxlISBV_GEKg9f0-ryEymUWVWb2ae3Xz9C_iUeT1CsjKHuqk9bwHcxpF2v4RK3rSR4Ga4xJP6EfNfZYtTDDnMkb/s1600/13ab233cdcbf1f41cf062373da2be3d0.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;362&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYDWZsCAiMZ8O9kn8FWIiv8oZF8NzFMrtowTFYDtIuLQ4i5_Fw6AracRxlISBV_GEKg9f0-ryEymUWVWb2ae3Xz9C_iUeT1CsjKHuqk9bwHcxpF2v4RK3rSR4Ga4xJP6EfNfZYtTDDnMkb/s640/13ab233cdcbf1f41cf062373da2be3d0.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
The most comprehensive course on iOS development - become a master of app development&lt;br /&gt;Welcome to the world&#39;s most comprehensive course on iOS development. This course is designed like an in-person coding bootcamp to give you the most amount of content and help with the least amount of cost.&lt;div&gt;
&lt;br /&gt;Here are some of the things you&#39;ll be able to do after taking this course:&lt;br /&gt;- Submit apps to the app store&lt;br /&gt;- Understand programming &amp;amp; basic algorithms&lt;br /&gt;- Work fluently with Swift 3 &amp;amp; iOS 10&lt;br /&gt;- Apply to jr iOS development jobs&lt;br /&gt;- Work as an iOS contractor&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;Файлы примеров&lt;/b&gt;: присутствуют&lt;br /&gt;&lt;b&gt;Формат видео&lt;/b&gt;: MP4&lt;br /&gt;&lt;b&gt;Видео&lt;/b&gt;: AVC, 1920x1080, 16:9, 29.97fps, 1036kbps&lt;br /&gt;&lt;b&gt;Аудио&lt;/b&gt;: AAC, 48kHz, 120kbps, stereo&lt;div&gt;
&lt;b&gt;Объем&lt;/b&gt;: ~&amp;nbsp;20.54 GB&lt;br /&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1eTgnb&quot;&gt;Download torrent-file / Загрузить torrent-file&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/10/udemy-ios-10-swift-3-from-beginner-to.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYDWZsCAiMZ8O9kn8FWIiv8oZF8NzFMrtowTFYDtIuLQ4i5_Fw6AracRxlISBV_GEKg9f0-ryEymUWVWb2ae3Xz9C_iUeT1CsjKHuqk9bwHcxpF2v4RK3rSR4Ga4xJP6EfNfZYtTDDnMkb/s72-c/13ab233cdcbf1f41cf062373da2be3d0.png" height="72" width="72"/><thr:total>20</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-3504512959056417705</guid><pubDate>Sat, 24 Sep 2016 21:14:00 +0000</pubDate><atom:updated>2016-09-25T00:14:49.409+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 10</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">swift 3</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Swift From Two to Three</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQoTNh61tY1yPgXlMmvttV1ZmoS5HtqCbANpewcuflGiTt9MD_IsfC7A5PbGv-EJyW4YDe8PTp6ZNpD4dB7uZUkre_N-o41diqRXc0wm5yCT5XSdU9lzosQlvdHscvFaa21NDpHFbJ9YFn/s1600/hero.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQoTNh61tY1yPgXlMmvttV1ZmoS5HtqCbANpewcuflGiTt9MD_IsfC7A5PbGv-EJyW4YDe8PTp6ZNpD4dB7uZUkre_N-o41diqRXc0wm5yCT5XSdU9lzosQlvdHscvFaa21NDpHFbJ9YFn/s640/hero.jpeg&quot; width=&quot;460&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Swift From Two to Three helps guide you through the transition to Apple&#39;s latest language release. Discover what changed, why it changed, and how you can update your code.&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1eGfro&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/09/swift-from-two-to-three.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQoTNh61tY1yPgXlMmvttV1ZmoS5HtqCbANpewcuflGiTt9MD_IsfC7A5PbGv-EJyW4YDe8PTp6ZNpD4dB7uZUkre_N-o41diqRXc0wm5yCT5XSdU9lzosQlvdHscvFaa21NDpHFbJ9YFn/s72-c/hero.jpeg" height="72" width="72"/><thr:total>9</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-7715728050124177697</guid><pubDate>Thu, 22 Sep 2016 20:06:00 +0000</pubDate><atom:updated>2016-09-22T23:06:30.015+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS 10</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>SWIFTER - 100 must know tips for Swift (2nd Edition)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSfYwxg5XgagiZVyzeDOI90nDnf8LzdaUB72BSpNjVuOk1Ts0Q1FH4_ONjrH9Hqf6-VzrnJedfH7WUNhA28oNjxRxEvH6EDyFyAl2_pXaGuFoRn_i8rSgmywpdwbHbQRaPz99Nfdei9aqx/s1600/3f417f2280bf9dbf.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSfYwxg5XgagiZVyzeDOI90nDnf8LzdaUB72BSpNjVuOk1Ts0Q1FH4_ONjrH9Hqf6-VzrnJedfH7WUNhA28oNjxRxEvH6EDyFyAl2_pXaGuFoRn_i8rSgmywpdwbHbQRaPz99Nfdei9aqx/s640/3f417f2280bf9dbf.png&quot; width=&quot;452&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Год выпуска&lt;/b&gt;: 2016&lt;br /&gt;&lt;b&gt;Автор&lt;/b&gt;: Wei Wang: &lt;a href=&quot;https://leanpub.com/u/onevcat&quot;&gt;https://leanpub.com/u/onevcat&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Язык&lt;/b&gt;: Английский&lt;br /&gt;&lt;b&gt;Издательство&lt;/b&gt;: Leanpub: &lt;a href=&quot;https://leanpub.com/&quot;&gt;https://leanpub.com&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Серия&lt;/b&gt;: Swift&lt;br /&gt;&lt;b&gt;Формат&lt;/b&gt;: PDF, EPUB&lt;br /&gt;&lt;b&gt;Качество&lt;/b&gt;: eBook (изначально компьютерное)&lt;br /&gt;&lt;b&gt;Количество страниц&lt;/b&gt;: 235&lt;div&gt;
&lt;br /&gt;&lt;b&gt;Описание&lt;/b&gt;: If you are not satisfied with those beginner book on Swift, this book is what you are looking for. It covers 100 super useful tips to help you write better Swift code. I believe you could pick up some invaluable gems from these tips.&lt;br /&gt;&lt;br /&gt;Если Вы не получаете удовлетворение от книг для начинающих по Swift, эта книга то что Вы искали. Она содержит сотню супер полезных советов, которые помогут Вам лучше писать код на языке Swift. Я верю, что некоторые из них вам обязательно пригодятся!&lt;br /&gt;&lt;br /&gt;В раздаче содержится файл playground со всеми примерами из данной книги!&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1eCT35&quot;&gt;Загрузить / &amp;nbsp;Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/09/swifter-100-must-know-tips-for-swift.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSfYwxg5XgagiZVyzeDOI90nDnf8LzdaUB72BSpNjVuOk1Ts0Q1FH4_ONjrH9Hqf6-VzrnJedfH7WUNhA28oNjxRxEvH6EDyFyAl2_pXaGuFoRn_i8rSgmywpdwbHbQRaPz99Nfdei9aqx/s72-c/3f417f2280bf9dbf.png" height="72" width="72"/><thr:total>6</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-2894290904215073350</guid><pubDate>Mon, 22 Aug 2016 15:30:00 +0000</pubDate><atom:updated>2016-08-23T17:02:51.104+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">OS X</category><category domain="http://www.blogger.com/atom/ns#">Wallpapers</category><title>macOS Sierra Wallpaper (1080p and 5k)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;macOS Sierra Wallpaper&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpDhUp2h2phFfiMwlTNGOw71vj2C6ZRkjLIo6_ADUK20L_GOmRAGiw5FsHOQzO45H4kwPRwnjte8cIuvo4NZtW6tUfgM4uV1kLr_nf4hy6CBsEK-l2VOCHSIpdNByPCZQDfwfGKks-HMxq/s1600/sierra-mac-apple-os-x-gory.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;360&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpDhUp2h2phFfiMwlTNGOw71vj2C6ZRkjLIo6_ADUK20L_GOmRAGiw5FsHOQzO45H4kwPRwnjte8cIuvo4NZtW6tUfgM4uV1kLr_nf4hy6CBsEK-l2VOCHSIpdNByPCZQDfwfGKks-HMxq/s640/sierra-mac-apple-os-x-gory.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1dMVZc&quot;&gt;Загрузить / Download&lt;/a&gt;&amp;nbsp;(1080p)&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://adf.ly/1dNoFS&quot;&gt;Загрузить / Download&lt;/a&gt;&amp;nbsp;(5k)&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/08/macos-sierra-wallpaper-1080p.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpDhUp2h2phFfiMwlTNGOw71vj2C6ZRkjLIo6_ADUK20L_GOmRAGiw5FsHOQzO45H4kwPRwnjte8cIuvo4NZtW6tUfgM4uV1kLr_nf4hy6CBsEK-l2VOCHSIpdNByPCZQDfwfGKks-HMxq/s72-c/sierra-mac-apple-os-x-gory.jpg" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-2935738279200865819</guid><pubDate>Thu, 28 Jul 2016 13:33:00 +0000</pubDate><atom:updated>2016-07-28T16:33:25.666+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">swift 3</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Swift 3 Functional Programming</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdYq5HVh41MU3XqL-dpMM2pL1pHoyNBJAEZxgc3mAHtAwoBe8-6jk7rW3RJ3l6GnrW4N6b5cBry_i3h8-ZD_WyU2L6twIaWBGQwgDYthrfR65eDE1Y1dL6CGNTkb8nEaF3SG0COQ4Ot0lz/s1600/1469263612_nayebi_swift.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdYq5HVh41MU3XqL-dpMM2pL1pHoyNBJAEZxgc3mAHtAwoBe8-6jk7rW3RJ3l6GnrW4N6b5cBry_i3h8-ZD_WyU2L6twIaWBGQwgDYthrfR65eDE1Y1dL6CGNTkb8nEaF3SG0COQ4Ot0lz/s1600/1469263612_nayebi_swift.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;Автор&lt;/b&gt;: Fatih Nayebi&lt;br /&gt;&lt;b&gt;Название&lt;/b&gt;: Swift 3 Functional Programming&lt;br /&gt;&lt;b&gt;Издательство&lt;/b&gt;: Pact Publishing&lt;br /&gt;&lt;b&gt;Год&lt;/b&gt;: 2016&lt;br /&gt;&lt;b&gt;ISBN&lt;/b&gt;: 978-1785883880&lt;br /&gt;&lt;b&gt;Язык&lt;/b&gt;: English&lt;br /&gt;&lt;b&gt;Формат&lt;/b&gt;: pdf, epub&lt;br /&gt;&lt;b&gt;Размер&lt;/b&gt;: 10 mb&lt;br /&gt;&lt;b&gt;Страниц&lt;/b&gt;: 296&lt;div&gt;
&lt;br /&gt;Functional programming (FP) is getting a lot of attention as it eases many of the difficulties faced in object-oriented programming (OOP), such as testability, maintainability, scalability, and concurrency. Swift has a lot of functional programming features that can be easily used, but most Objective-C and Swift programmers are not familiar with these tools.&lt;br /&gt;&lt;br /&gt;This book aims to simplify the functional programming paradigms and make it easily usable for Swift programmers, showing you how to use popular functional programming techniques to solve many of your day-to-day development problems. Whether you are new to functional programming and Swift or experienced, this book will provide you with the skills you need to design and develop high quality, easily maintainable, scalable, and efficient applications for iOS, rnacOS, tvOS, and watchOS. Through this book, you&#39;ll learn to build bug-free, maintainable code using functional programming.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1chi39&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/07/swift-3-functional-programming.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdYq5HVh41MU3XqL-dpMM2pL1pHoyNBJAEZxgc3mAHtAwoBe8-6jk7rW3RJ3l6GnrW4N6b5cBry_i3h8-ZD_WyU2L6twIaWBGQwgDYthrfR65eDE1Y1dL6CGNTkb8nEaF3SG0COQ4Ot0lz/s72-c/1469263612_nayebi_swift.jpg" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-1037063852030461582</guid><pubDate>Sat, 11 Jun 2016 08:36:00 +0000</pubDate><atom:updated>2016-11-16T00:02:33.455+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Raywenderlich The Swift Apprentice: Beginning Programming with Swift 2 v1.3</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJbAcnYjT6I76jGO6MeneQC_oVweaqkRbF5x8ACtvYESHarozyrfOtr9GSTTh6mG7aSWWf8ZnpVkfkRSBIMozZnbGxaGuJO7OETA-FqCOv24QoG3Kz76qmHxiW1BoOsDoEoyTi6LqNUps5/s1600/d38486261938da55.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJbAcnYjT6I76jGO6MeneQC_oVweaqkRbF5x8ACtvYESHarozyrfOtr9GSTTh6mG7aSWWf8ZnpVkfkRSBIMozZnbGxaGuJO7OETA-FqCOv24QoG3Kz76qmHxiW1BoOsDoEoyTi6LqNUps5/s1600/d38486261938da55.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;Год выпуска&lt;/b&gt;: 2016&lt;br /&gt;
&lt;b&gt;Автор&lt;/b&gt;: Janie Clayton, Alexis Gallagher, Matt Galloway, Eli Ganem, Erik Kerber, Ben Morrow.&lt;br /&gt;
&lt;b&gt;Жанр&lt;/b&gt;: Разработка&lt;br /&gt;
&lt;b&gt;Издательство&lt;/b&gt;: Raywenderlich&lt;br /&gt;
&lt;b&gt;Язык&lt;/b&gt;: Английский&lt;br /&gt;
&lt;b&gt;Серия&lt;/b&gt;: Tutorials&lt;br /&gt;
&lt;b&gt;ISBN&lt;/b&gt;: 978-1942878131&lt;br /&gt;
&lt;b&gt;Формат&lt;/b&gt;: PDF&lt;br /&gt;
&lt;b&gt;Качество&lt;/b&gt;: eBook (изначально компьютерное)&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
Свифт это самый простой способ, чтобы начать разработку на платформах Apple: IOS, OS X, watchOS и tvOS. С выходом Swift 2 в 2015 году, в него упаковано еще больше возможностей и усовершенствований.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Learn How To Program with Swift 2!&lt;br /&gt;
Swift is the easiest way to get started developing on Apple&#39;s platforms: iOS, OS X, watchOS and tvOS. With the release of Swift 2 in 2015, the Swift language is packed with even more features and enhancements.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
In this book, you&#39;ll learn the basics of Swift from getting started with playgrounds to simple operations to building your own types. Everything you&#39;ll learn is platform-neutral; you&#39;ll have a firm understanding of Swift by the end of this book, and you&#39;ll be ready to move on to whichever app platform you&#39;re interested in.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Who This Book Is For:&lt;br /&gt;
This book is for complete beginners to Swift 2. No prior programming experience is necessary!&lt;br /&gt;
- Topics Covered in The Swift Apprentice&lt;br /&gt;
- Playground basics: Learn about the coding environment where you can quickly and easily try out your code as you learn.&lt;br /&gt;
- Numbers and strings: These are the basic kinds of data in any app – learn how to use them in Swift.&lt;br /&gt;
- Making Decisions: Your code doesn&#39;t always run straight through – learn how to use conditions and decide what to do.&lt;br /&gt;
- Functions: Group your code together into reusable chunks to run and pass around.&lt;br /&gt;
- Collection Types: Discover the many ways Swift offers to store and organize data into collections.&lt;br /&gt;
- Building Your Own Types: Learn how to model elements in your app using classes, structures and enumerations.&lt;br /&gt;
- Protocols &amp;amp; Protocol-Oriented Programming: Define protocols to make your code more interface-based and compositional.&lt;br /&gt;
- Error Handling: Make your code more robust and flexible by signaling and handling error conditions gracefully.&lt;br /&gt;
- Functional Programming: Learn how to use Swift in a functional style and how this can make your code clearer and easier to reason about.&lt;br /&gt;
- After reading this book and completing your Swift apprenticeship by working through the included exercises and challenges, you&#39;ll be ready to take on app development on the platform of your choice!&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: red;&quot;&gt;С исходными кодами / With source code&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Скачать / Download&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2015/10/raywenderlich-swift-apprentice.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJbAcnYjT6I76jGO6MeneQC_oVweaqkRbF5x8ACtvYESHarozyrfOtr9GSTTh6mG7aSWWf8ZnpVkfkRSBIMozZnbGxaGuJO7OETA-FqCOv24QoG3Kz76qmHxiW1BoOsDoEoyTi6LqNUps5/s72-c/d38486261938da55.png" height="72" width="72"/><thr:total>16</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-8530607582996433125</guid><pubDate>Wed, 23 Mar 2016 11:12:00 +0000</pubDate><atom:updated>2016-03-23T13:14:17.938+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Video Tutorials</category><title>RayWenderlich - Introducing Stack Views (Series)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRM00LOF79LWUnYLcHKZz7JRtyH-zpgI5F5IJJfeTnCp8gveco7EYPuiS4QffxieLC-Fsw-BQHYux5cwNWAw_O6I9VFRNuN2Nk8SizlRTX5lcu7LSPDlNBczFsywdRclLOVvaw29SvosjE/s1600/RayWenderlichLogo-250x250.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRM00LOF79LWUnYLcHKZz7JRtyH-zpgI5F5IJJfeTnCp8gveco7EYPuiS4QffxieLC-Fsw-BQHYux5cwNWAw_O6I9VFRNuN2Nk8SizlRTX5lcu7LSPDlNBczFsywdRclLOVvaw29SvosjE/s1600/RayWenderlichLogo-250x250.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;RayWenderlich - Introducing Stack Views (Series)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #cc0000;&quot;&gt;P.S. You need remove &quot;_&quot; from file extension.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1YgneI&quot; target=&quot;_blank&quot;&gt;Загрузить / Downloads&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/03/raywenderlich-introducing-stack-views.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRM00LOF79LWUnYLcHKZz7JRtyH-zpgI5F5IJJfeTnCp8gveco7EYPuiS4QffxieLC-Fsw-BQHYux5cwNWAw_O6I9VFRNuN2Nk8SizlRTX5lcu7LSPDlNBczFsywdRclLOVvaw29SvosjE/s72-c/RayWenderlichLogo-250x250.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-3244363210115198781</guid><pubDate>Wed, 23 Mar 2016 08:47:00 +0000</pubDate><atom:updated>2016-03-23T10:47:29.011+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Video Tutorials</category><title>Raywenderlich - Intermediate Swift 2 (Series)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRM00LOF79LWUnYLcHKZz7JRtyH-zpgI5F5IJJfeTnCp8gveco7EYPuiS4QffxieLC-Fsw-BQHYux5cwNWAw_O6I9VFRNuN2Nk8SizlRTX5lcu7LSPDlNBczFsywdRclLOVvaw29SvosjE/s1600/RayWenderlichLogo-250x250.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRM00LOF79LWUnYLcHKZz7JRtyH-zpgI5F5IJJfeTnCp8gveco7EYPuiS4QffxieLC-Fsw-BQHYux5cwNWAw_O6I9VFRNuN2Nk8SizlRTX5lcu7LSPDlNBczFsywdRclLOVvaw29SvosjE/s1600/RayWenderlichLogo-250x250.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;RayWenderlich - Intermediate Swift 2 (Series)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1YgaIY&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/03/raywenderlich-intermediate-swift-2.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRM00LOF79LWUnYLcHKZz7JRtyH-zpgI5F5IJJfeTnCp8gveco7EYPuiS4QffxieLC-Fsw-BQHYux5cwNWAw_O6I9VFRNuN2Nk8SizlRTX5lcu7LSPDlNBczFsywdRclLOVvaw29SvosjE/s72-c/RayWenderlichLogo-250x250.png" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-1856878877102400618</guid><pubDate>Sun, 13 Mar 2016 23:50:00 +0000</pubDate><atom:updated>2016-03-14T01:50:45.171+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Icons</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">OS X</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><category domain="http://www.blogger.com/atom/ns#">Useful Links</category><title>Создание шаблона (темплейта) файла для Xcode / Create Xcode source template</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFHf-xk6lgx8jaYgE5E2lL7EeUrjCJeOhbRbHgfDB8prg81twNSVzRs10sF_pB0d1h8EA57zxzDqLNtiZOv694lP6SqHxecKC0XxvdhdaRtAv2md4d0r5ckOuBDYpqzB3uRegpdKyVbeE2/s1600/swift-logo-hero.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;358&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFHf-xk6lgx8jaYgE5E2lL7EeUrjCJeOhbRbHgfDB8prg81twNSVzRs10sF_pB0d1h8EA57zxzDqLNtiZOv694lP6SqHxecKC0XxvdhdaRtAv2md4d0r5ckOuBDYpqzB3uRegpdKyVbeE2/s640/swift-logo-hero.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
В Xcode любой версии при создании нового файла в проекте мы видим перечень готовых шаблонов исходных файлов, которые уменьшают написания стандартных, рутинных строк кода. Дальше будет более понятней что я имею в виду.&lt;br /&gt;
&lt;br /&gt;
Например нам &amp;nbsp;нужно создать синглетон класс. Наши действия:&lt;br /&gt;
- Файл -&amp;gt; Новый -&amp;gt; Файл -&amp;gt; Соурс -&amp;gt; Свифт-файл (File -&amp;gt; New -&amp;gt; File -&amp;gt; Source -&amp;gt; Swift file)&lt;br /&gt;
- В новом файле написать код синглетона (хоть это всего лишь несколько строчек кода - это все-таки занятое время для шаблона)&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;import Foundation&lt;br /&gt;&lt;br /&gt;class NewFile {&lt;br /&gt;&lt;br /&gt;    static let sharedInstance = NewFile()&lt;br /&gt;private init(){}&lt;/span&gt;&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Можем ускорить этот процесс создания, создав для Xcode шаблон синглетона, который будет присутствовать в списке шаблонов при добавлении нового файла в проект.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Шаблон состоит из имени и расширения (как обычный пакет в OS X): &lt;b&gt;&lt;i&gt;TemplateName.xctemplate&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;Сам пакет состоит из таких файлов:&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
- Иконка файла (48х48), формата *.png (включая @2х (96х96) для ретина дисплеев)&lt;/div&gt;
&lt;div&gt;
- plist-файл в котором описывается наш шаблон&lt;/div&gt;
&lt;div&gt;
- swift-файл с кодом нашего шаблона.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;Приступим:&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
- Создадим папку с расширением шаблона: &lt;b&gt;&lt;i&gt;Swift Singleton.xctemplate:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3IkvflXU7M2OgCjpNJF85uAyMTOfd749vyfOXmgnWkOc-mjV227A8KndTQ_lKKFpSpTWqLVZtn4dOmnK2lEIK-WTC7YyDnDBbcvIfOyb3d3QguCLObHgpWGTGMWfKmC6UIRV023Ms1Ygy/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.22.59.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3IkvflXU7M2OgCjpNJF85uAyMTOfd749vyfOXmgnWkOc-mjV227A8KndTQ_lKKFpSpTWqLVZtn4dOmnK2lEIK-WTC7YyDnDBbcvIfOyb3d3QguCLObHgpWGTGMWfKmC6UIRV023Ms1Ygy/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.22.59.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Все следующие действия будут происходить в созданной нами папке-шаблоне&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
- Перейдем в папку и скопируем туда два файла-иконки (по которому мы в будущем будем ориентироваться что это наш шаблон синглетон). Плюнем на все свои правила и закинем туда обычные иконки свифт-файла:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6KRTc2PKYsGzTw1iovDEkRs_pPpT5nimsU_R6MgtpZRFgqDZ4Ki-prPnkos-eOg8u_kKqCvim5JvyPTZsauaZwAkZ3E4Bo03TfyE_TZCj9yNH2K3PZuW14QGgPTxJNUOftTSscOqgHpLA/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.25.55.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6KRTc2PKYsGzTw1iovDEkRs_pPpT5nimsU_R6MgtpZRFgqDZ4Ki-prPnkos-eOg8u_kKqCvim5JvyPTZsauaZwAkZ3E4Bo03TfyE_TZCj9yNH2K3PZuW14QGgPTxJNUOftTSscOqgHpLA/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.25.55.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
- Создадим plist-файл и опишем наш шаблон (не буду вести подробный разбор каждого раздела, думаю что все предельно ясно из названий самих разделов):&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDbK_K9fb0xzqRvr05ZVdF2wG_ZIuOS9_gEX5uT8Ue-Ijao26CiPIVhgCutKGy0MhQaatpPgbBZmvxUqiZTcNMilJPQrHyyXqXE4HbtGBoLfV1tcQ_2wolO6Lr5cXTVHSTI6CVpBuZV-Hi/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.28.15.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDbK_K9fb0xzqRvr05ZVdF2wG_ZIuOS9_gEX5uT8Ue-Ijao26CiPIVhgCutKGy0MhQaatpPgbBZmvxUqiZTcNMilJPQrHyyXqXE4HbtGBoLfV1tcQ_2wolO6Lr5cXTVHSTI6CVpBuZV-Hi/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.28.15.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Содержимое:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;lt;!DOCTYPE plist PUBLIC &quot;-//Apple//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;lt;plist version=&quot;1.0&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;lt;dict&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;AllowedTypes&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;array&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&amp;lt;string&amp;gt;public.swift-source&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;/array&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;DefaultCompletionName&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;File&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;Description&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;A Swift Singleton.&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;Kind&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;Xcode.IDEKit.TextSubstitutionFileTemplateKind&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;MainTemplateFile&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;___FILEBASENAME___.swift&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;SortOrder&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;5&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;Summary&amp;lt;/key&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;A Swift Singleton&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;lt;/dict&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;lt;/plist&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
- Переходим к содержимому нашего сердца шаблона - swift-файл:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4jHJn_PTAA6fzpJV1Fxjr7XFZVQCB1Ll-yIRQTOfHxsomBY9B7BreNd2Ro1JWbwNr3nnneZ3PpGdYs9KTkPokLO1TUmDIXutaR12i-FY5JCh6zh_m9PRSbznVtrtcQLHHdjKr0_XVVwp2/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.32.24.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4jHJn_PTAA6fzpJV1Fxjr7XFZVQCB1Ll-yIRQTOfHxsomBY9B7BreNd2Ro1JWbwNr3nnneZ3PpGdYs9KTkPokLO1TUmDIXutaR12i-FY5JCh6zh_m9PRSbznVtrtcQLHHdjKr0_XVVwp2/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.32.24.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Содержимое:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;//&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;// &amp;nbsp;___FILENAME___&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;// &amp;nbsp;___PROJECTNAME___&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;//&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;// &amp;nbsp;Created by ___FULLUSERNAME___ on ___DATE___.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;//___COPYRIGHT___&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;//&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;import Foundation&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;class ___FILEBASENAMEASIDENTIFIER___ {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;nbsp; &amp;nbsp; static let sharedInstance = ___FILEBASENAMEASIDENTIFIER___()&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;nbsp; &amp;nbsp; private init(){}&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
___FILEBASENAMEASIDENTIFIER___ - вместо этого идентификатора будет подставляться введенное имя юзером во время создания нового файла-синглетона. Остальные идентификаторы интуитивно понятны.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
- Теперь осталось перейти:&amp;nbsp;&lt;b&gt;&lt;i&gt;~Library/Developer/Xcode/Templates/File Templates/&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Папки &lt;u&gt;Templates&lt;/u&gt; и &lt;u&gt;File Templates&lt;/u&gt; нужно будет создать, т.к. они отсутствуют (если Вы не ставили шаблоны, например с помощью утилиты Alcatraz).&amp;nbsp;&lt;u&gt;File Templates&lt;/u&gt;&amp;nbsp;- это не обязательное имя. Я для себя назвал &lt;u&gt;User Templates&lt;/u&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
- Осталось скопировать наш шаблон-папку по выше указанному пути, и создать новый файл в проекте. Теперь в списке разделов (для iOS) появится дополнительный наш раздел, где будет присутствовать наш шаблон-синглетон (Если что-то пошло не так, всегда можно перезапустить Xcode).&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmpFTaoxBgNbMh0Bp6fP03SW79C3jeZwpUB883bakwEKsJY2IPeFojj_pz1L151aXFAjkY4wrKT139zYaATZKUl4bR0QHorTAiOiYVocFFzILaPrY-eBR9hHMdJWvwo_jvWiDvKP_dxGdx/s1600/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.42.22.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;460&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmpFTaoxBgNbMh0Bp6fP03SW79C3jeZwpUB883bakwEKsJY2IPeFojj_pz1L151aXFAjkY4wrKT139zYaATZKUl4bR0QHorTAiOiYVocFFzILaPrY-eBR9hHMdJWvwo_jvWiDvKP_dxGdx/s640/%25D0%2597%25D0%25BD%25D1%2596%25D0%25BC%25D0%25BE%25D0%25BA+%25D0%25B5%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD%25D0%25B0+2016-03-14+%25D0%25BE+01.42.22.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Вводим имя файла и наслаждаемся дальнейшей работой уже с готовым шаблоном.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;u&gt;Примеры шаблонов можно посмотреть в самом Xcode:&lt;/u&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;&lt;i&gt;/Applications/Xcode.app/ Contents/Developer/Platforms/ iPhoneOS.platform/Developer/ Library/Xcode/Templates/ File Templates/Source&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/03/xcode-create-xcode-source-template.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFHf-xk6lgx8jaYgE5E2lL7EeUrjCJeOhbRbHgfDB8prg81twNSVzRs10sF_pB0d1h8EA57zxzDqLNtiZOv694lP6SqHxecKC0XxvdhdaRtAv2md4d0r5ckOuBDYpqzB3uRegpdKyVbeE2/s72-c/swift-logo-hero.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-6372902474752922111</guid><pubDate>Fri, 19 Feb 2016 12:06:00 +0000</pubDate><atom:updated>2016-02-19T23:51:47.211+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Swift. Основы разработки приложений под iOS</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirtlXwIjv2iWj4KzRSdr3m1W7MMsXTjEe4igXjq0T8BIn-ytln9TO4W0dwwSTN8WGPeD7S5_b06yYUaNcntMP15l7t3aA_dQXmf8s3abWmgWF6b9StGmpLWpYZoo64X1lbO5U4n7iKlLLH/s1600/1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirtlXwIjv2iWj4KzRSdr3m1W7MMsXTjEe4igXjq0T8BIn-ytln9TO4W0dwwSTN8WGPeD7S5_b06yYUaNcntMP15l7t3aA_dQXmf8s3abWmgWF6b9StGmpLWpYZoo64X1lbO5U4n7iKlLLH/s640/1.jpg&quot; width=&quot;436&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Усов В.А.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Тема&lt;/b&gt;: Библиотека программиста &lt;br /&gt;
&lt;b&gt;Год&lt;/b&gt;: 2016 &lt;br /&gt;
&lt;b&gt;Страниц&lt;/b&gt;: 304 &lt;br /&gt;
&lt;b&gt;Обложка&lt;/b&gt;: Обл Ц &lt;br /&gt;
&lt;b&gt;Формат&lt;/b&gt;: 60х90/16 &lt;br /&gt;
&lt;b&gt;Баркод&lt;/b&gt;: 9785496022569 &lt;br /&gt;
&lt;b&gt;ISBN&lt;/b&gt;: 978-5-496-02256-9&lt;br /&gt;
&lt;br /&gt;
Swift — быстрый, современный, безопасный и удобный язык программирования — появился совсем недавно и стал огромным сюрпризом для iOS-общественности. И вот, спустя год, Apple выпустила версию 2.0, а следом и 2.1, привнесшую в процесс разработки ряд значительных нововведений.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
Данная книга содержит исчерпывающую информацию для всех желающих научиться программировать на замечательном языке Swift и создавать собственные iOS-приложения. Вы найдете не только теоретический материал, но и большое количество практических примеров и заданий, которые позволят постичь все тонкости нового языка. Дерзайте, ведь, изучив Swift, вы сможете создавать приложения для любой платформы — iOS, OS X, tvOS или watchOS.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1XAzrl&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/02/swift-ios.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirtlXwIjv2iWj4KzRSdr3m1W7MMsXTjEe4igXjq0T8BIn-ytln9TO4W0dwwSTN8WGPeD7S5_b06yYUaNcntMP15l7t3aA_dQXmf8s3abWmgWF6b9StGmpLWpYZoo64X1lbO5U4n7iKlLLH/s72-c/1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-1038214574530579710</guid><pubDate>Fri, 19 Feb 2016 06:42:00 +0000</pubDate><atom:updated>2016-11-16T00:02:15.230+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Source codes from Ray Wenderlich books (except tvOS book)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKb8T6EIolzP7jkpZFn5aglouTer655DDYlWKJBFCpZjeM1QgTJjmd_NsyDzmo1sUcX8mR3EoJIMTnSey2fQLFLLLdDW2Iarfi4TotSTTEdjevJsrMWBuYtbLj502egAk4XhtjU5HuCPJS/s1600/haneke-icon-rounded-1024.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKb8T6EIolzP7jkpZFn5aglouTer655DDYlWKJBFCpZjeM1QgTJjmd_NsyDzmo1sUcX8mR3EoJIMTnSey2fQLFLLLdDW2Iarfi4TotSTTEdjevJsrMWBuYtbLj502egAk4XhtjU5HuCPJS/s320/haneke-icon-rounded-1024.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Core Data by Tutorials&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Raywenderlich 2D iOS and tvOS Games by Tutorials&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Raywenderlich iOS 9 by Tutorials Learning the new ios 9 apis with swift 2&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Raywenderlich iOS Animations by Tutorials v2.0&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Raywenderlich Swift Apprentice&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Raywenderlich The iOS Apprentice Beginning iOS Development with Swift 2 4th Edition&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Raywenderlich WatchOS 2 by Tutorials&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/02/source-codes-from-ray-wenderlich-books.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKb8T6EIolzP7jkpZFn5aglouTer655DDYlWKJBFCpZjeM1QgTJjmd_NsyDzmo1sUcX8mR3EoJIMTnSey2fQLFLLLdDW2Iarfi4TotSTTEdjevJsrMWBuYtbLj502egAk4XhtjU5HuCPJS/s72-c/haneke-icon-rounded-1024.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-4090618516464611259</guid><pubDate>Wed, 17 Feb 2016 22:28:00 +0000</pubDate><atom:updated>2016-02-18T00:28:04.612+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Beginning Swift Programming: Kids Edition by Charles Ivan Mozar</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnRjwLe8o-rixo6uPQvGy29OX_p6brrXW0T5JxFCYEGS10dGXZVNcQ6MpAzScy8EFXHy4zV8Pa00b8Fn0JuYlbWbbK8mR205P7kXLFWEg7rIdGhyphenhyphen-oClNdeqZFH97ZFCE5rszIFhgUFayC/s1600/beginning-swift-programming-kids-edition.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnRjwLe8o-rixo6uPQvGy29OX_p6brrXW0T5JxFCYEGS10dGXZVNcQ6MpAzScy8EFXHy4zV8Pa00b8Fn0JuYlbWbbK8mR205P7kXLFWEg7rIdGhyphenhyphen-oClNdeqZFH97ZFCE5rszIFhgUFayC/s1600/beginning-swift-programming-kids-edition.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Get your children into programming! Beginning Swift Development will help your kid learn the programming language through fictional instruction. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Instructions ( for parents )&lt;/b&gt;: &lt;br /&gt;1. Download Xcode &lt;br /&gt;2. Create a new playground &lt;br /&gt;3. Get Him/Her to play with it ( or follow along the book )&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1X5Ujc&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/02/beginning-swift-programming-kids.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnRjwLe8o-rixo6uPQvGy29OX_p6brrXW0T5JxFCYEGS10dGXZVNcQ6MpAzScy8EFXHy4zV8Pa00b8Fn0JuYlbWbbK8mR205P7kXLFWEg7rIdGhyphenhyphen-oClNdeqZFH97ZFCE5rszIFhgUFayC/s72-c/beginning-swift-programming-kids-edition.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-474769554922651816</guid><pubDate>Wed, 17 Feb 2016 22:21:00 +0000</pubDate><atom:updated>2016-02-18T00:21:16.447+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><title>Core Data (objc)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJCosaNehZ65ZNBEw1ISjbH-9wMtuK0CjreB0gkrWqjuBS6kNd_MNuz03GaSbijzVAz_kxhxzqPSZHr-uc-sWz31QMRG-nXJ9GddGOLImMWTwwvW7VWjslCIjtfvI7yYuELIO1PW9PYNH1/s1600/core-data.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJCosaNehZ65ZNBEw1ISjbH-9wMtuK0CjreB0gkrWqjuBS6kNd_MNuz03GaSbijzVAz_kxhxzqPSZHr-uc-sWz31QMRG-nXJ9GddGOLImMWTwwvW7VWjslCIjtfvI7yYuELIO1PW9PYNH1/s1600/core-data.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;Core Data best practices by example: from simple persistency to multithreading and syncing &lt;br /&gt;&lt;br /&gt;This book strives to give you clear guidelines for how to get the most out of Core Data while avoiding the pitfalls of this flexible and powerful framework. We start with a simple example app and extend it step by step as we talk about relationships, advanced data types, concurrency, syncing, and many other topics.&lt;br /&gt;&lt;br /&gt;Later on, we go well beyond what’s needed for the basic example app. We’ll discuss in depth how Core Data works behind the scenes, how to get great performance, the trade-offs between different Core Data setups, and how to debug and profile your Core Data code.&lt;br /&gt;&lt;br /&gt;All code samples in this book are written in Swift. We show how you can leverage Swift’s language features to write elegant and safe Core Data code. We expect that you’re already familiar with Swift and iOS, but both newcomers and experienced Core Data developers will find a trove of applicable information and useful patterns.&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1X5Toe&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/02/core-data-objc.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJCosaNehZ65ZNBEw1ISjbH-9wMtuK0CjreB0gkrWqjuBS6kNd_MNuz03GaSbijzVAz_kxhxzqPSZHr-uc-sWz31QMRG-nXJ9GddGOLImMWTwwvW7VWjslCIjtfvI7yYuELIO1PW9PYNH1/s72-c/core-data.jpg" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-9134014019128705019</guid><pubDate>Sun, 07 Feb 2016 20:51:00 +0000</pubDate><atom:updated>2016-02-07T22:51:50.078+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Animation</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><category domain="http://www.blogger.com/atom/ns#">Useful Links</category><title>SAConfettiView дождь из конфети / rain of confetti</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEtF9a4XV6QpVeDAjk7mNdTQemZY7uSt_S_XqS6cYvKBIplny7qkujvdmRP68PpJoOyXFHs5CEcyNTR8SJ5APklS8JQmOcxC8JquovNOdiyw0Ez9Eu_bID1-SUv0BM67WrFWmBlKNIED3D/s1600/f97b6bd8-a2da-11e5-9083-b131fa796373.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEtF9a4XV6QpVeDAjk7mNdTQemZY7uSt_S_XqS6cYvKBIplny7qkujvdmRP68PpJoOyXFHs5CEcyNTR8SJ5APklS8JQmOcxC8JquovNOdiyw0Ez9Eu_bID1-SUv0BM67WrFWmBlKNIED3D/s1600/f97b6bd8-a2da-11e5-9083-b131fa796373.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
SAConfettiView - позволяет добавить в ваше приложение представление с дождем из конфети, цветных треугольников, звездочек, кристаллов или ваших собственных изображений. &lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
SAConfettiView is the easiest way to add fun, multi-colored confetti to your application and make users feel rewarded. Written in Swift, SAConfettiView is a subclass of UIView and is highly customizable. From various types and colors of confetti to different levels of intensity, you can make the confetti as fancy as you want.&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1Wd9tk&quot; target=&quot;_blank&quot;&gt;Загрузить&lt;/a&gt; / &lt;a href=&quot;http://adf.ly/1Wd9tk&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/02/saconfettiview-rain-of-confetti.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEtF9a4XV6QpVeDAjk7mNdTQemZY7uSt_S_XqS6cYvKBIplny7qkujvdmRP68PpJoOyXFHs5CEcyNTR8SJ5APklS8JQmOcxC8JquovNOdiyw0Ez9Eu_bID1-SUv0BM67WrFWmBlKNIED3D/s72-c/f97b6bd8-a2da-11e5-9083-b131fa796373.gif" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-6145633469102733586</guid><pubDate>Tue, 02 Feb 2016 21:20:00 +0000</pubDate><atom:updated>2016-02-02T23:20:03.729+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Libs</category><category domain="http://www.blogger.com/atom/ns#">Objective-C</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Tips&amp;Tricks</category><category domain="http://www.blogger.com/atom/ns#">Useful Links</category><title>SCFacebook (simple and cleaner to use the api facebook-ios-sdk)</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjF8kYE-8NSU06Rc1FA4YNMdm79eL4nb7tHSEBQhj-wvgGXgAqcNN55ifyWOdW1Nxsgm5R0ihS95iHaMcRpYOOs5MwbMHzQoPyUgm7Ti-oJV4kAd-xMg8NNphhi2FjDU3nH1KK0ll9ixpaW/s1600/687474703a2f2f7777772e6c75636173636f727265612e636f6d2f4769742f534346616365626f6f6b44656d6f2e676966.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjF8kYE-8NSU06Rc1FA4YNMdm79eL4nb7tHSEBQhj-wvgGXgAqcNN55ifyWOdW1Nxsgm5R0ihS95iHaMcRpYOOs5MwbMHzQoPyUgm7Ti-oJV4kAd-xMg8NNphhi2FjDU3nH1KK0ll9ixpaW/s1600/687474703a2f2f7777772e6c75636173636f727265612e636f6d2f4769742f534346616365626f6f6b44656d6f2e676966.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;SCFacebook&lt;/b&gt; &lt;b&gt;4.0&lt;/b&gt; is a simple and cleaner to use the api &lt;a href=&quot;https://github.com/facebook/facebook-ios-sdk&quot;&gt;Facebook-ios-sdk&lt;/a&gt; with Blocks.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Need&lt;/b&gt;:&lt;div&gt;
FBSDKCoreKit&lt;/div&gt;
&lt;div&gt;
FBSDKShareKit&lt;/div&gt;
&lt;div&gt;
FBSDKLoginKit&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1WNEoq&quot; target=&quot;_blank&quot;&gt;Link to library&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/02/scfacebook-simple-and-cleaner-to-use.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjF8kYE-8NSU06Rc1FA4YNMdm79eL4nb7tHSEBQhj-wvgGXgAqcNN55ifyWOdW1Nxsgm5R0ihS95iHaMcRpYOOs5MwbMHzQoPyUgm7Ti-oJV4kAd-xMg8NNphhi2FjDU3nH1KK0ll9ixpaW/s72-c/687474703a2f2f7777772e6c75636173636f727265612e636f6d2f4769742f534346616365626f6f6b44656d6f2e676966.gif" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-2467788330329917033</guid><pubDate>Wed, 06 Jan 2016 22:26:00 +0000</pubDate><atom:updated>2016-01-07T00:26:14.812+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><title>Developing for Apple TV using tvOS and Swift</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPBDXqyabwlyf7bNYun5Q8gcwCy6i334svZoOr5wlOGRqBM6Q6k5nNG-ctxwo9h1WRKdxDsdavVuvZjZfreduDwqbKfmD7GCugShJukawtOyGVWz-d39Ii_CpB8J4PY6e80Rzz_Sb6bO48/s1600/175679b7975f39a.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPBDXqyabwlyf7bNYun5Q8gcwCy6i334svZoOr5wlOGRqBM6Q6k5nNG-ctxwo9h1WRKdxDsdavVuvZjZfreduDwqbKfmD7GCugShJukawtOyGVWz-d39Ii_CpB8J4PY6e80Rzz_Sb6bO48/s640/175679b7975f39a.jpeg&quot; width=&quot;422&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;b&gt;Book Description:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Gary Bennett, Brad Lees, and Stefan Kaczmarek, the team behind Swift 2 for Absolute Beginners, brings you a hands-on “Swift” introduction to the new tvOS SDK with a collection of app projects to try out.&lt;br /&gt;&lt;br /&gt;You’ll learn how to create a BookStore app for the TV, including using Stack Views for book details, how to create a photo gallery app, and how to use collection view and split view controllers with a music collection app. Finally, you’ll also learn how to store Apple TV app data in iCloud.&lt;br /&gt;&lt;br /&gt;The new Apple TV is here, and it’s open for your native apps ― Developing for the Apple TV with tvOS and Swift will get you started developing right away.&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1Uj72d&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/01/developing-for-apple-tv-using-tvos-and.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPBDXqyabwlyf7bNYun5Q8gcwCy6i334svZoOr5wlOGRqBM6Q6k5nNG-ctxwo9h1WRKdxDsdavVuvZjZfreduDwqbKfmD7GCugShJukawtOyGVWz-d39Ii_CpB8J4PY6e80Rzz_Sb6bO48/s72-c/175679b7975f39a.jpeg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-7399261846406055009</guid><pubDate>Sat, 02 Jan 2016 18:28:00 +0000</pubDate><atom:updated>2016-01-02T20:28:12.019+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Libs</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Useful Links</category><title>DGElasticPullToRefresh</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6iAkd59vpTE3w3Tru4vxGCsPu8pQfYfCq0M_zDVoQbPzG-sU2_xdZH1UrryMMmAPToDZ9zIYs9XTAflY66gVVRc45UJ3GeFqZEau8IibAc-ndcyLx8lZi9zcUSwcXLF0MrV0k5hcl6dai/s1600/DGElasticPullToRefreshPreview1.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6iAkd59vpTE3w3Tru4vxGCsPu8pQfYfCq0M_zDVoQbPzG-sU2_xdZH1UrryMMmAPToDZ9zIYs9XTAflY66gVVRc45UJ3GeFqZEau8IibAc-ndcyLx8lZi9zcUSwcXLF0MrV0k5hcl6dai/s1600/DGElasticPullToRefreshPreview1.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Elastic pull to refresh compontent developed in Swift&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1UVrro&quot; target=&quot;_blank&quot;&gt;Link&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/01/dgelasticpulltorefresh.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6iAkd59vpTE3w3Tru4vxGCsPu8pQfYfCq0M_zDVoQbPzG-sU2_xdZH1UrryMMmAPToDZ9zIYs9XTAflY66gVVRc45UJ3GeFqZEau8IibAc-ndcyLx8lZi9zcUSwcXLF0MrV0k5hcl6dai/s72-c/DGElasticPullToRefreshPreview1.gif" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-789368246673683368</guid><pubDate>Sat, 02 Jan 2016 18:19:00 +0000</pubDate><atom:updated>2016-01-02T20:19:24.671+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Libs</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Useful Links</category><title>DGRunkeeperSwitch</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgofXy9tds8EZTpasHdOYDJjBUfXKIc3oPLsivFZ94Tf5CxXjv5P3L2gbg3eIscmdqEoNFqfdSu0CK2UYsPC5-xoEUiDq3TGywl8NuffafWl1LNuj9UvdPuU6xM751gX73J7iVAXlfoiBTo/s1600/DGRunkeeperSwitch.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;112&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgofXy9tds8EZTpasHdOYDJjBUfXKIc3oPLsivFZ94Tf5CxXjv5P3L2gbg3eIscmdqEoNFqfdSu0CK2UYsPC5-xoEUiDq3TGywl8NuffafWl1LNuj9UvdPuU6xM751gX73J7iVAXlfoiBTo/s320/DGRunkeeperSwitch.gif&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;Runkeeper&lt;/b&gt; design switch control (two part segment control) developed in Swift 2.0&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: &#39;Helvetica Neue&#39;, Helvetica, &#39;Segoe UI&#39;, Arial, freesans, sans-serif, &#39;Apple Color Emoji&#39;, &#39;Segoe UI Emoji&#39;, &#39;Segoe UI Symbol&#39;; font-size: 16px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: &#39;Helvetica Neue&#39;, Helvetica, &#39;Segoe UI&#39;, Arial, freesans, sans-serif, &#39;Apple Color Emoji&#39;, &#39;Segoe UI Emoji&#39;, &#39;Segoe UI Symbol&#39;; font-size: 16px;&quot;&gt;&lt;a href=&quot;http://adf.ly/1UVp6Y&quot; target=&quot;_blank&quot;&gt;Link&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/01/dgrunkeeperswitch.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgofXy9tds8EZTpasHdOYDJjBUfXKIc3oPLsivFZ94Tf5CxXjv5P3L2gbg3eIscmdqEoNFqfdSu0CK2UYsPC5-xoEUiDq3TGywl8NuffafWl1LNuj9UvdPuU6xM751gX73J7iVAXlfoiBTo/s72-c/DGRunkeeperSwitch.gif" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-5232096280579832524</guid><pubDate>Sat, 02 Jan 2016 13:43:00 +0000</pubDate><atom:updated>2016-01-02T15:43:35.657+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Libs</category><category domain="http://www.blogger.com/atom/ns#">Objective-C</category><category domain="http://www.blogger.com/atom/ns#">Useful Links</category><title>DGActivityIndicatorView</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFPynqDjrlnTjjfSFULhENEMcUVu9K8wE6DUTi5ZQTYw9URXuJzGZctzKUlpNWMKh_bR-ykGNQq8Idmuc6BLcAfhex3C6RZmEpVnEDvhziCGNEBYpmhlTKUhOv-wLA-ucsLF58oBXHme6Y/s1600/DGActivityIndicatorView.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFPynqDjrlnTjjfSFULhENEMcUVu9K8wE6DUTi5ZQTYw9URXuJzGZctzKUlpNWMKh_bR-ykGNQq8Idmuc6BLcAfhex3C6RZmEpVnEDvhziCGNEBYpmhlTKUhOv-wLA-ucsLF58oBXHme6Y/s320/DGActivityIndicatorView.gif&quot; width=&quot;256&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;DGActivityIndicatorView&lt;/b&gt; is a great way to make loading spinners in your application look nicer. It contains 32 different indicator view styles.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1UV623&quot; target=&quot;_blank&quot;&gt;Link&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/01/dgactivityindicatorview.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFPynqDjrlnTjjfSFULhENEMcUVu9K8wE6DUTi5ZQTYw9URXuJzGZctzKUlpNWMKh_bR-ykGNQq8Idmuc6BLcAfhex3C6RZmEpVnEDvhziCGNEBYpmhlTKUhOv-wLA-ucsLF58oBXHme6Y/s72-c/DGActivityIndicatorView.gif" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-217017811817775969</guid><pubDate>Sat, 02 Jan 2016 10:39:00 +0000</pubDate><atom:updated>2016-01-02T12:39:22.551+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><title>Swift Programming The Big Nerd Ranch Guide</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9qo6OC4fHVwdfQp5crntFAnnd2hyphenhyphenSIroaLJTgVfMIh8iotyehNPHYdKfRu_akBuN9vCTeom7FA5QmVmrC_AfcWZf6kTuSLhlEC5PhGFYnWPlmp5xNvVYLC76OamKmskOZ4K1eXszgKRnM/s1600/Swift-Programming-The-Big-Nerd-Ranch-Guide.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9qo6OC4fHVwdfQp5crntFAnnd2hyphenhyphenSIroaLJTgVfMIh8iotyehNPHYdKfRu_akBuN9vCTeom7FA5QmVmrC_AfcWZf6kTuSLhlEC5PhGFYnWPlmp5xNvVYLC76OamKmskOZ4K1eXszgKRnM/s640/Swift-Programming-The-Big-Nerd-Ranch-Guide.png&quot; width=&quot;448&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;eBook Details:&lt;br /&gt;&lt;b&gt;Paperback&lt;/b&gt;: 400 pages&lt;br /&gt;&lt;b&gt;Publisher&lt;/b&gt;: Big Nerd Ranch Guides; 1st edition&lt;br /&gt;&lt;b&gt;Language&lt;/b&gt;: English&lt;br /&gt;&lt;b&gt;ISBN-10&lt;/b&gt;: 0134398017&lt;br /&gt;&lt;b&gt;ISBN-13&lt;/b&gt;: 978-0134398013&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1UUiU6&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/01/swift-programming-big-nerd-ranch-guide.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9qo6OC4fHVwdfQp5crntFAnnd2hyphenhyphenSIroaLJTgVfMIh8iotyehNPHYdKfRu_akBuN9vCTeom7FA5QmVmrC_AfcWZf6kTuSLhlEC5PhGFYnWPlmp5xNvVYLC76OamKmskOZ4K1eXszgKRnM/s72-c/Swift-Programming-The-Big-Nerd-Ranch-Guide.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-1763655342252910838</guid><pubDate>Fri, 01 Jan 2016 23:05:00 +0000</pubDate><atom:updated>2016-01-02T01:05:18.428+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Books</category><category domain="http://www.blogger.com/atom/ns#">iOS</category><category domain="http://www.blogger.com/atom/ns#">iOS 8</category><category domain="http://www.blogger.com/atom/ns#">iOS 9</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><title>iOS Programming: The Big Nerd Ranch Guide 5th Edition</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWPtQYAAkHqlax7Q05Z0ZLmTnWu6RLyHb95rrMkbNkFXhR-DL-FmRHb78r4ordWJZcsUDMA874sA3R-YnF_4tl8xEobzfcb9Kz2Vj1qD01ShmAh0OUph5gDxUfAKupdfF1V-JSI7BvbumN/s1600/iOS-Programming-The-Big-Nerd-Ranch-Guide-5th-Edition.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWPtQYAAkHqlax7Q05Z0ZLmTnWu6RLyHb95rrMkbNkFXhR-DL-FmRHb78r4ordWJZcsUDMA874sA3R-YnF_4tl8xEobzfcb9Kz2Vj1qD01ShmAh0OUph5gDxUfAKupdfF1V-JSI7BvbumN/s640/iOS-Programming-The-Big-Nerd-Ranch-Guide-5th-Edition.png&quot; width=&quot;448&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;b&gt;Paperback&lt;/b&gt;: 416 pages&lt;br /&gt;&lt;b&gt;Publisher&lt;/b&gt;: Big Nerd Ranch Guides; 5th edition&lt;br /&gt;&lt;b&gt;Language&lt;/b&gt;: English&lt;br /&gt;&lt;b&gt;ISBN-10&lt;/b&gt;: 0134390733&lt;br /&gt;&lt;b&gt;ISBN-13&lt;/b&gt;: 978-0134390734&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;a href=&quot;http://adf.ly/1UTEyr&quot; target=&quot;_blank&quot;&gt;Загрузить / Download&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2016/01/ios-programming-big-nerd-ranch-guide.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWPtQYAAkHqlax7Q05Z0ZLmTnWu6RLyHb95rrMkbNkFXhR-DL-FmRHb78r4ordWJZcsUDMA874sA3R-YnF_4tl8xEobzfcb9Kz2Vj1qD01ShmAh0OUph5gDxUfAKupdfF1V-JSI7BvbumN/s72-c/iOS-Programming-The-Big-Nerd-Ranch-Guide-5th-Edition.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1535079481033218565.post-497416319451108366</guid><pubDate>Thu, 31 Dec 2015 10:01:00 +0000</pubDate><atom:updated>2015-12-31T12:01:03.003+02:00</atom:updated><title>Happy NEW YEAR</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbHfTqly9aYpcAUcO5owNFXZ9bxtlp12Kvon2sZ62S6ftzNcPMg0232jf6D4wcJ_P7r7wcQVOIZ-nlk_-J6TN0vhMcno6tvkn7_Attdc3U7coQwqM48S1o3cnj3UVv0yzvm_rpSgbiA5BM/s1600/30.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;634&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbHfTqly9aYpcAUcO5owNFXZ9bxtlp12Kvon2sZ62S6ftzNcPMg0232jf6D4wcJ_P7r7wcQVOIZ-nlk_-J6TN0vhMcno6tvkn7_Attdc3U7coQwqM48S1o3cnj3UVv0yzvm_rpSgbiA5BM/s640/30.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2 style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;Thank &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;you&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #f1c232;&quot;&gt;all&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #3d85c6;&quot;&gt;for&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #e69138;&quot;&gt;reading&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #6aa84f;&quot;&gt;my&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #674ea7;&quot;&gt;blog&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;. &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;Best&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #cc0000;&quot;&gt;regards&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #38761d;&quot;&gt;and&lt;/span&gt;&lt;/h2&gt;
&lt;h2 style=&quot;text-align: center;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;Happy&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; NEW YEAR&lt;/span&gt;&lt;/h2&gt;
&lt;/div&gt;
</description><link>http://ipetrovich.blogspot.com/2015/12/happy-new-year.html</link><author>noreply@blogger.com (Sergey)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbHfTqly9aYpcAUcO5owNFXZ9bxtlp12Kvon2sZ62S6ftzNcPMg0232jf6D4wcJ_P7r7wcQVOIZ-nlk_-J6TN0vhMcno6tvkn7_Attdc3U7coQwqM48S1o3cnj3UVv0yzvm_rpSgbiA5BM/s72-c/30.jpg" height="72" width="72"/><thr:total>3</thr:total></item></channel></rss>