{"id":3277,"date":"2015-10-28T13:02:37","date_gmt":"2015-10-28T13:02:37","guid":{"rendered":"http:\/\/bestkora.com\/IosDeveloper\/?p=3277"},"modified":"2015-11-01T07:09:51","modified_gmt":"2015-11-01T07:09:51","slug":"chto-novogo-v-swift-2-na-primerah-chast-2","status":"publish","type":"post","link":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/","title":{"rendered":"&#171;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&#187; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2."},"content":{"rendered":"<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3359 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM.png\" alt=\"Screen Shot 2015-10-28 at 3.18.06 PM\" width=\"1754\" height=\"666\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM.png 1754w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM-300x114.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM-1024x389.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM-500x190.png 500w\" sizes=\"auto, (max-width: 1754px) 100vw, 1754px\" \/><\/a><\/p>\n<p>\u0412 <strong><a href=\"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2\/\">\u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 <\/a><\/strong>\u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043b\u0438\u0448\u044c \u0447\u0430\u0441\u0442\u044c \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439\u00a0<strong>Swift 2<\/strong>:<\/p>\n<ul>\n<li>\u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u044f\u0437\u044b\u043a\u0430, \u0442\u0430\u043a\u0438\u0435, \u043a\u0430\u043a\u00a0<strong><span style=\"color: #0000ff;\">enums<\/span><\/strong>,\u00a0<strong><span style=\"color: #0000ff;\">scoping<\/span><\/strong>\u00a0(\u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f), \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0442.\u0434.<\/li>\n<li>\u00a0\u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441 \u043e\u0431\u0440\u0430\u0437\u0446\u043e\u043c (<strong>pattern<\/strong>\u00a0<strong>matching<\/strong>)<\/li>\n<li>\u00a0\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438 (<strong>error<\/strong>\u00a0<strong>handling<\/strong>)<\/li>\n<\/ul>\n<p>\u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f:<\/p>\n<ul>\n<li>\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f (<strong>extensions<\/strong>) \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430<\/li>\n<li>\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 (<strong>availability<\/strong>\u00a0<strong>checking<\/strong>)<\/li>\n<li>\u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u00a0<strong>Objective-C <\/strong>\u0438<strong> \u0421<\/strong><\/li>\n<\/ul>\n<p>\u042f \u0431\u0443\u0434\u0443 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438<strong>\u00a0Swift 2,<\/strong>\u00a0\u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u044f \u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438, \u043a\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430<strong><a href=\"https:\/\/github.com\/BestKora\/WhatsNewInSwift2\">\u00a0Github<\/a><\/strong>.<\/p>\n<p><!--more--><\/p>\n<h1>\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 (Protocol extension)<\/h1>\n<p>\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0441\u0442\u0430\u043b\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432 <strong>Swift 2<\/strong>, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u043b\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 (\u0432 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0435 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439) \u043a \u043b\u044e\u0431\u044b\u043c \u043a\u043b\u0430\u0441\u0441\u0430\u043c, \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u043c \u0438 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0442 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b.<\/p>\n<p>\u0414\u043e <strong>Swift 2<\/strong>, \u043a\u0430\u043a \u0432 <strong>Objective-C<\/strong>, \u0442\u0430\u043a \u0438 \u0432 <strong>Swift 1.x<\/strong>, \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u044b \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043b\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0446\u0438\u044e \u043c\u0435\u0442\u043e\u0434\u043e\u0432. \u0421 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430\u00a0\u0432\u00a0<strong>Swift 2<\/strong>, \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0433\u0443\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043d\u0430\u0440\u044f\u0434\u0443 \u0441 \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0446\u0438\u0435\u0439, \u00a0<em><span style=\"text-decoration: underline;\">\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e<\/span><\/em> \u043c\u0435\u0442\u043e\u0434\u043e\u0432.\u00a0\u042d\u0442\u043e\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043c\u044b \u0433\u043e\u0434\u0430\u043c\u0438 \u0436\u0434\u0430\u043b\u0438 \u0434\u043b\u044f <strong>Objective-C<\/strong>, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u044f\u0442\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0435\u0435 \u0432\u043e\u043f\u043b\u043e\u0449\u0435\u043d\u0438\u0435 \u0432 \u043d\u043e\u0432\u043e\u043c \u044f\u0437\u044b\u043a\u0435.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043e \u0431\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u0441\u0435\u043c \u0442\u0438\u043f\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b (\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441). \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0441\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u00a0\u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u0441\u0432\u043e\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432. \u0421 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430\u043c\u0438 \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u0441\u0442\u0438\u043b\u044f \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0434\u0432\u0443\u043c\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438: 1) \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u0432 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0435 \u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0449\u0438\u0439 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043b \u043c\u0435\u0442\u043e\u0434, \u0438\u043b\u0438 2) \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0445 \u0442\u0438\u043f\u043e\u0432, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b.<\/p>\n<p>Cocoa (<strong>Objective-C<\/strong>) \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0435\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0440\u0435\u0448\u0435\u043d\u0438\u044f.<\/p>\n<p><strong>Swift 1.x<\/strong> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0432\u0442\u043e\u0440\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0440\u0435\u0448\u0435\u043d\u0438\u044f. \u0422\u0430\u043a\u0438\u0435 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u0430\u043a <strong><span style=\"color: #0000ff;\">map<\/span><\/strong> \u043e\u043f\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0441 \u043b\u044e\u0431\u043e\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0435\u0439 <strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong>. \u042d\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u043b\u043e \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043d\u043e \u0443\u0436\u0430\u0441\u043d\u044b\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0441\u044c (<strong>override<\/strong>) \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0435\u0433\u043e \u043f\u043e\u0434 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0442\u0438\u043f.<\/p>\n<p>[js]<br \/>\nlet x = filter(map(numbers) { $0 * 3 }) { $0 &gt;= 0 } \/\/&#8212; Swift 1<br \/>\n[\/js]<\/p>\n<p>\u0421 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0442\u0440\u0435\u0442\u044c\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0440\u0435\u0432\u043e\u0441\u0445\u043e\u0434\u0438\u0442 \u0434\u0432\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435. <strong><span style=\"color: #0000ff;\">map\u00a0<\/span><\/strong>\u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0432 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 <strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong>.\u00a0\u0412\u0441\u0435 \u0442\u0438\u043f\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0442 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b <strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong>, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 <strong><span style=\"color: #0000ff;\">map<\/span><\/strong>\u00a0\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e.<\/p>\n<p>[js]<br \/>\nlet x = numbers.map { $0 * 3 }.filter { $0 &gt;= 0 } \/\/&#8212; Swift 2<br \/>\n[\/js]<\/p>\n<p>\u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432 <strong>Swift 2<\/strong> \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 <strong><span style=\"color: #0000ff;\">myMap<\/span><\/strong> \u043a\u0430\u043a\u00a0\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430\u00a0<strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong>.<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-24-at-7.04.39-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3282 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-24-at-7.04.39-PM.png\" alt=\"Screen Shot 2015-10-24 at 7.04.39 PM\" width=\"1028\" height=\"264\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-24-at-7.04.39-PM.png 1028w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-24-at-7.04.39-PM-300x77.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-24-at-7.04.39-PM-1024x263.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-24-at-7.04.39-PM-500x128.png 500w\" sizes=\"auto, (max-width: 1028px) 100vw, 1028px\" \/><\/a><\/p>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u00a0<strong><span style=\"color: #0000ff;\">myMap<\/span><\/strong>\u00a0 \u0434\u043b\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 <strong><span style=\"color: #0000ff;\">Array&lt;T&gt;<\/span><\/strong><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.22.16-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3374 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.22.16-PM.png\" alt=\"Screen Shot 2015-10-29 at 2.22.16 PM\" width=\"1008\" height=\"164\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.22.16-PM.png 1008w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.22.16-PM-300x49.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.22.16-PM-1000x164.png 1000w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.22.16-PM-500x81.png 500w\" sizes=\"auto, (max-width: 1008px) 100vw, 1008px\" \/><\/a><br \/>\n\u0434\u043b\u044f \u0441\u043b\u043e\u0432\u0430\u0440\u0435\u0439<strong><span style=\"color: #0000ff;\"> Dictionary &lt;Key : Value&gt;<\/span><\/strong><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.24.27-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3375 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.24.27-PM.png\" alt=\"Screen Shot 2015-10-29 at 2.24.27 PM\" width=\"1082\" height=\"220\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.24.27-PM.png 1082w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.24.27-PM-300x61.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.24.27-PM-1024x208.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.24.27-PM-500x102.png 500w\" sizes=\"auto, (max-width: 1082px) 100vw, 1082px\" \/><\/a><br \/>\n\u0434\u043b\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<span style=\"color: #0000ff;\"><strong> Set &lt;T&gt;<\/strong><\/span><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.26.18-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3376 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.26.18-PM.png\" alt=\"Screen Shot 2015-10-29 at 2.26.18 PM\" width=\"1010\" height=\"162\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.26.18-PM.png 1010w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.26.18-PM-300x48.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.26.18-PM-500x80.png 500w\" sizes=\"auto, (max-width: 1010px) 100vw, 1010px\" \/><\/a><br \/>\n\u0434\u043b\u044f \u0441\u0442\u0440\u043e\u043a <strong><span style=\"color: #0000ff;\">String.characters<\/span><\/strong><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.28.00-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3377 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.28.00-PM.png\" alt=\"Screen Shot 2015-10-29 at 2.28.00 PM\" width=\"1060\" height=\"338\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.28.00-PM.png 1060w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.28.00-PM-300x96.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.28.00-PM-1024x327.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.28.00-PM-500x159.png 500w\" sizes=\"auto, (max-width: 1060px) 100vw, 1060px\" \/><\/a><br \/>\n\u0434\u043b\u044f \u0441\u043b\u0430\u0439c\u043e\u0432 <strong><span style=\"color: #0000ff;\">ArraySlice &lt;T&gt;<\/span><\/strong><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.30.40-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3378 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.30.40-PM.png\" alt=\"Screen Shot 2015-10-29 at 2.30.40 PM\" width=\"1008\" height=\"196\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.30.40-PM.png 1008w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.30.40-PM-300x58.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.30.40-PM-500x97.png 500w\" sizes=\"auto, (max-width: 1008px) 100vw, 1008px\" \/><\/a><br \/>\n\u0434\u043b\u044f \u0441\u0442\u0440\u0430\u0439\u0442\u043e\u0432\u00a0<strong><span style=\"color: #0000ff;\"><span class=\"nl\">StrideThrough<\/span>&lt;T&gt;<\/span><\/strong><span style=\"color: #000000;\">, \u043d\u043e \u043d\u0435 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u0430 \u0447\u0435\u0440\u0435\u0437<\/span><strong><span style=\"color: #0000ff;\"> map<\/span><\/strong><span style=\"color: #000000;\">, \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0449\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c (\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b <strong><span style=\"color: #0000ff;\">SequenceType<\/span><\/strong>) \u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e\u00a0(\u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b <strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong><\/span><span style=\"color: #000000;\">)<\/span><\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.32.35-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3379 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.32.35-PM.png\" alt=\"Screen Shot 2015-10-29 at 2.32.35 PM\" width=\"1006\" height=\"208\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.32.35-PM.png 1006w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.32.35-PM-300x62.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.32.35-PM-1000x208.png 1000w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-2.32.35-PM-500x103.png 500w\" sizes=\"auto, (max-width: 1006px) 100vw, 1006px\" \/><\/a><\/p>\n<p>\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u043b\u0435\u0436\u0438\u0442 \u0432 \u043e\u0441\u043d\u043e\u0432\u0435 \u00a0\u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043a \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e <strong>Apple<\/strong> \u043a\u0430\u043a \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b-\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 (\u041f\u041e\u041f), \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u0432 <strong>Swift<\/strong> \u043d\u0430\u0440\u044f\u0434\u0443 \u0441 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u043c \u041e\u0431\u044a\u0435\u043a\u0442\u043d\u043e-\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c ( \u041e\u041e\u041f) \u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u0424\u041f). \u041e\u043d\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0434\u043e\u043b\u0435\u0442\u044c \u0442\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b\u00a0\u041e\u041e\u041f, \u043a\u0430\u043a &#171;\u0445\u0440\u0443\u043f\u043a\u0438\u0439 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441&#187; \u0438 \u0436\u0435\u0441\u0442\u043a\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f (rigidity and fragility of inheritance), &#171;\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0440\u043e\u043c\u0431\u0430&#187; (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Multiple_inheritance#The_diamond_problem\">\u201cdiamond problem\u201d<\/a>), \u043d\u0435\u044f\u0432\u043d\u043e\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u044b, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0447\u0430\u0441\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f &#171;\u043a\u0430\u0441\u0442\u0438\u043d\u0433\u0430&#187; \u0432\u043d\u0438\u0437 (downcasting) \u0432 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u0430\u0445. \u0422\u0430\u043a\u0436\u0435 \u043a\u0430\u043a \u0442\u044f\u0436\u0435\u043b\u043e \u043c\u043d\u043e\u0433\u0438\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u0430 \u043b\u0435\u0433\u0447\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435, \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b-\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445.<\/p>\n<h2>\u041f\u0440\u0438\u043c\u0435\u0440 1. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0442\u0430\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0438\u0448\u0435\u0440\u0430-\u0419\u0435\u043d\u0441\u0430<\/h2>\n<p>\u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0433\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0439 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c\u00a0\u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A2%D0%B0%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D0%B8%D1%88%D0%B5%D1%80%D0%B0%E2%80%93%D0%99%D0%B5%D1%82%D1%81%D0%B0\">\u00a0<\/a><b><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A2%D0%B0%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D0%B8%D1%88%D0%B5%D1%80%D0%B0%E2%80%93%D0%99%D0%B5%D1%82%D1%81%D0%B0\">\u0422\u0430\u0441\u043e\u0432\u0430\u043d\u0438\u0435 \u0424\u0438\u0448\u0435\u0440\u0430\u2013<span style=\"color: #1b8be0;\">\u0419\u0435\u043d\u0441\u0430<\/span><\/a><\/b><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A2%D0%B0%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D0%B8%D1%88%D0%B5%D1%80%D0%B0%E2%80%93%D0%99%D0%B5%D1%82%D1%81%D0%B0\">\u00a0<\/a>&#171;\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u044f&#187; \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435\u00a0\u0444\u0443\u043d\u043a\u0446\u0438\u0438\u00a0<strong><span style=\"color: #0000ff;\">shuffle <\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">\u0434\u043b\u044f <strong>Swift 1.2 (OO\u041f<\/strong>) \u0438<strong> Swift 2 (\u041f\u041e\u041f)<\/strong><\/span><\/span><span style=\"color: #000000;\">.<\/span> \u042d\u0442\u043e\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0437\u0434\u0430\u0447\u0435 \u043a\u0430\u0440\u0442 \u0432 \u043a\u0430\u0440\u0442\u043e\u0447\u043d\u043e\u0439 \u0438\u0433\u0440\u0435.<\/p>\n<p>\u0412<strong> Swift 1.2<\/strong> \u043c\u044b \u0431\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e <strong><span style=\"color: #0000ff;\">shuffle\u00a0<\/span><\/strong>\u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u043c\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0443 2, \u0442\u043e \u0435\u0441\u0442\u044c \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <em><strong><span style=\"text-decoration: underline;\">\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<\/span> <\/strong><\/em>\u0441 <strong>generics<\/strong>:<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.35.03-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3321 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.35.03-PM.png\" alt=\"Screen Shot 2015-10-26 at 12.35.03 PM\" width=\"1070\" height=\"400\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.35.03-PM.png 1070w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.35.03-PM-300x112.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.35.03-PM-1024x383.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.35.03-PM-500x187.png 500w\" sizes=\"auto, (max-width: 1070px) 100vw, 1070px\" \/><\/a><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u044d\u0442\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435. \u041d\u0430 \u0432\u0445\u043e\u0434 \u044d\u0442\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 \u043f\u043e\u0434\u0430\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u0430 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f <span style=\"color: #0000ff;\"><strong>\u00a0var list: C<\/strong><\/span>\u00a0\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0432\u0430\u044f \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0436\u0435 \u0442\u0438\u043f\u0430 <span style=\"color: #0000ff;\"><strong>\u0421<\/strong><span style=\"color: #000000;\"> \u0441 &#171;\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0430\u043d\u043d\u044b\u043c\u0438&#187; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438<\/span>\u00a0<b>list<\/b><\/span>.\u00a0\u042d\u0442\u0443 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0442\u0438\u043f\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0442 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b <strong><span style=\"color: #0000ff;\">Mutable<\/span><span style=\"color: #0000ff;\"><strong>CollectionType<\/strong>\u00a0<\/span><\/strong>\u0438 \u0438\u043c\u0435\u044e\u0442 \u0446\u0435\u043b\u044b\u0435 \u0438\u043d\u0434\u0435\u043a\u0441\u044b. \u0422\u0430\u043a\u0438\u0445 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439 \u0434\u0432\u0435: \u043c\u0430\u0441\u0441\u0438\u0432\u00a0<strong><span style=\"color: #0000ff;\">Array<\/span><\/strong>\u00a0<strong><span style=\"color: #0000ff;\">&lt;T&gt;<\/span><\/strong> \u0438 \u0441\u043b\u0430\u0439\u0441\u00a0<strong><span style=\"color: #0000ff;\">ArraySlice &lt;T&gt;<\/span><\/strong><\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-3.56.29-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3297 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-3.56.29-PM.png\" alt=\"Screen Shot 2015-10-25 at 3.56.29 PM\" width=\"1324\" height=\"588\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-3.56.29-PM.png 1324w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-3.56.29-PM-300x133.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-3.56.29-PM-1024x455.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-3.56.29-PM-500x222.png 500w\" sizes=\"auto, (max-width: 1324px) 100vw, 1324px\" \/><\/a><br \/>\n\u041d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435, \u043a\u0430\u043a\u043e\u0435 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a \u044d\u0442\u043e\u0439 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438?<\/p>\n<p>[js]<br \/>\nshuffle(strings1)<br \/>\nshuffle(numbers1)<br \/>\n[\/js]<\/p>\n<p>\u042d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0442\u0430\u0446\u0438\u044e \u0441 &#171;\u0442\u043e\u0447\u043a\u043e\u0439&#187;, \u0432 \u043a\u0440\u0443\u0433\u043b\u044b\u0445 \u0441\u043a\u043e\u0431\u043a\u0430\u0445 \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u0430\u043c\u0443 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e. \u042d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0438\u0434\u0435\u0442 \u0446\u0435\u043b\u0430\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0443 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u043a\u0440\u0443\u0433\u043b\u044b\u0445 \u0441\u043a\u043e\u0431\u043e\u043a, \u0430 \u0435\u0441\u043b\u0438 \u044d\u0442\u043e \u0432\u0441\u0435 \u0447\u0435\u0440\u0435\u0434\u0443\u0435\u0442\u0441\u044f \u0441 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438 \u0442\u0438\u043f\u0430, \u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 &#8212; \u0431\u0435\u0434\u0430. \u041c\u044b \u0443\u0436\u0435 \u0432\u0438\u0434\u0435\u043b\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0432\u044b\u0448\u0435.<\/p>\n<p>[js]<br \/>\nlet x = filter(map(numbers) { $0 * 3 }) { $0 &gt;= 0 } \/\/&#8212; Swift 1<br \/>\n[\/js]<\/p>\n<p>\u0415\u0441\u043b\u0438 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 &#171;\u0442\u043e\u0447\u0435\u0447\u043d\u043e\u0439&#187; \u043d\u043e\u0442\u0430\u0446\u0438\u0435\u0439 \u0432 <strong>Swift 1.2<\/strong>, \u0442\u043e \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <strong><span style=\"color: #0000ff;\">shuffle<\/span><\/strong> \u0432 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043b\u0430\u0441\u0441\u0430\u00a0<strong><span style=\"color: #0000ff;\">Array<\/span>\u00a0<\/strong>(\u044d\u0442\u043e \u0441\u043f\u043e\u0441\u043e\u0431 1). \u041f\u0440\u0438\u0447\u0435\u043c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u0438\u0437\u043c\u0435\u043d\u044f\u044e\u0449\u0438\u0439 \u043f\u043e \u043c\u0435\u0441\u0442\u0443 (<strong>mutating<\/strong>) \u043c\u0435\u0442\u043e\u0434 \u00a0<strong><span style=\"color: #0000ff;\">shuffleInPlace<\/span><\/strong>, \u0442\u0430\u043a \u0438 \u043c\u0435\u0442\u043e\u0434 <strong><span style=\"color: #0000ff;\">shuffle<\/span><\/strong>, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u00a0\u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441 &#171;\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0430\u043d\u043d\u044b\u043c\u0438&#187; \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (<strong>non<\/strong>&#8212;<strong>mutating<\/strong>)\u00a0)<span style=\"color: #0000ff;\">\u00a0<\/span>:<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.08.04-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3300 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.08.04-PM.png\" alt=\"Screen Shot 2015-10-25 at 5.08.04 PM\" width=\"900\" height=\"534\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.08.04-PM.png 900w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.08.04-PM-300x178.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.08.04-PM-500x297.png 500w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/a><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0434\u0432\u0430 \u043c\u0435\u0442\u043e\u0434\u0430 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u043c (<strong><span style=\"color: #0000ff;\">extension<\/span><\/strong>) \u0434\u043b\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u0430 <strong><span style=\"color: #0000ff;\">Array<\/span><\/strong> \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b <em><span style=\"text-decoration: underline;\">\u0442\u043e\u043b\u044c\u043a\u043e<\/span><\/em> \u0434\u043b\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 .<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.24.52-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3301 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.24.52-PM.png\" alt=\"Screen Shot 2015-10-25 at 5.24.52 PM\" width=\"1066\" height=\"258\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.24.52-PM.png 1066w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.24.52-PM-300x73.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.24.52-PM-1024x248.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.24.52-PM-500x121.png 500w\" sizes=\"auto, (max-width: 1066px) 100vw, 1066px\" \/><\/a><\/p>\n<p>\u041d\u0438 <strong><span style=\"color: #0000ff;\">Set<\/span><\/strong>, \u043d\u0438 <strong><span style=\"color: #0000ff;\">ArraySlice<\/span><\/strong>, \u043d\u0438\u043a\u0430\u043a\u0438\u0435 \u0434\u0440\u0443\u0433\u0438\u0435 <strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong> \u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>\u0412 <strong>Swift 2<\/strong> \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043c\u0435\u0442\u043e\u0434\u044b\u00a0<strong><span style=\"color: #0000ff;\">shuffle<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\"> \u0438\u00a0<\/span><\/span><strong><span style=\"color: #0000ff;\">shuffleInPlace<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">\u00a0\u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u00a0<\/span><\/span><span style=\"color: #000000;\">\u0434<\/span>\u043b\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432\u00a0<strong><span style=\"color: #0000ff;\">CollectionType \u0438\u00a0MutableCollectionType <\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">(\u0441\u043f\u043e\u0441\u043e\u0431 3)<\/span><\/span><span style=\"color: #000000;\">:<\/span><\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.39.59-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3322 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.39.59-PM.png\" alt=\"Screen Shot 2015-10-26 at 12.39.59 PM\" width=\"1008\" height=\"690\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.39.59-PM.png 1008w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.39.59-PM-300x205.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-12.39.59-PM-438x300.png 438w\" sizes=\"auto, (max-width: 1008px) 100vw, 1008px\" \/><\/a><br \/>\n\u0418 \u0441 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432, \u043c\u0435\u0442\u043e\u0434\u044b <strong><span style=\"color: #0000ff;\">shuffle<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">\u00a0\u0438\u00a0<\/span><\/span><strong><span style=\"color: #0000ff;\">shuffleInPlace<\/span><\/strong>\u00a0\u043c\u043e\u0433\u0443\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u0438 \u043a <strong><span style=\"color: #0000ff;\">Set<\/span><\/strong>, \u0438 \u043a <span style=\"color: #0000ff;\"><b>Array<\/b><\/span>, \u0438 \u043a <strong><span style=\"color: #0000ff;\">ArraySlice<\/span><\/strong> \u0438 \u043b\u044e\u0431\u043e\u0439 \u0434\u0440\u0443\u0433\u043e\u0439 <strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong> \u0431\u0435\u0437 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u0438\u043b\u0438\u0439, \u043f\u0440\u0438\u0447\u0435\u043c \u0432 \u043d\u0443\u0436\u043d\u043e\u0439 \u043d\u0430\u043c &#171;\u0442\u043e\u0447\u0435\u0447\u043d\u043e\u0439&#187; \u043d\u043e\u0442\u0430\u0446\u0438\u0438:<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.56.35-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3304 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.56.35-PM.png\" alt=\"Screen Shot 2015-10-25 at 5.56.35 PM\" width=\"1148\" height=\"864\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.56.35-PM.png 1148w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.56.35-PM-300x226.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.56.35-PM-1024x771.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-5.56.35-PM-399x300.png 399w\" sizes=\"auto, (max-width: 1148px) 100vw, 1148px\" \/><\/a><\/p>\n<p>\u041f\u0440\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u0432 <strong>Swift 2<\/strong> \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0442\u0438\u043f. \u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e \u0438\u0437 \u043a\u043e\u0434\u0430, \u043c\u044b \u0432\u043d\u0430\u0447\u0430\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 <strong><span style=\"color: #0000ff;\">MutableCollectionType<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 \u0446\u0435\u043b\u044b\u0435 \u0447\u0438\u0441\u043b\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u043c \u043d\u0430\u00a0<strong><span style=\"color: #0000ff;\">CollectionType<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">.<\/span><\/span><\/p>\n<p>\u0412 \u043a\u043e\u043d\u0446\u0435 \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 &#171;\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u044f&#187; \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438. \u0412 <strong>Swift 2<\/strong> \u0443\u0436\u0435 \u0435\u0441\u0442\u044c <a href=\"https:\/\/developer.apple.com\/library\/prerelease\/ios\/documentation\/GameplayKit\/Reference\/GKRandomSource_Class\/index.html#\/\/apple_ref\/occ\/instm\/GKRandomSource\/arrayByShufflingObjectsInArray:\">\u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u00a0\u0442\u0430\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0438\u0448\u0435\u0440\u0430-\u0419\u0435\u043d\u0441\u0430<\/a> \u0432\u00a0<strong>GameplayKit<\/strong> (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0438\u0433\u0440). \u041f\u0440\u0430\u0432\u0434\u0430 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438.<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-11.32.11-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3307 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-11.32.11-PM.png\" alt=\"Screen Shot 2015-10-25 at 11.32.11 PM\" width=\"1136\" height=\"88\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-11.32.11-PM.png 1136w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-11.32.11-PM-300x23.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-11.32.11-PM-1024x79.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-25-at-11.32.11-PM-500x39.png 500w\" sizes=\"auto, (max-width: 1136px) 100vw, 1136px\" \/><\/a><\/p>\n<h2>\u041f\u0440\u0438\u043c\u0435\u0440 2. \u00a0\u041f\u0440\u043e\u0449\u0430\u0439 <strong>pipe<\/strong>\u00a0(\u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440\u043d\u044b\u0439) \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440<strong><span style=\"color: #0000ff;\">\u00a0<\/span><span style=\"color: #0000ff;\"><code>|<\/code><\/span><span style=\"color: #0000ff;\">&gt; <\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">\u0441 \u043f\u0440\u0438\u0445\u043e\u0434\u043e\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432<\/span><\/span><span style=\"color: #000000;\">.<\/span><\/h2>\n<p>C \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c\u00a0<strong>Swift<\/strong>\u00a0\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u043b\u0438\u0441\u044c \u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0435, \u0440\u0435\u0448\u0430\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u0438\u0435\u043c\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u00a0\u0434\u043b\u044f <strong><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D0%9B%D1%83%D0%BD%D0%B0\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u041b\u0443\u043d\u0430<\/a><\/strong> \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u043e\u0439 \u0446\u0438\u0444\u0440\u044b \u043f\u043b\u0430\u0441\u0442\u0438\u043a\u043e\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b <strong><a href=\"http:\/\/airspeedvelocity.net\/2014\/12\/03\/a-straw-man-argument-for-more-trying-functional-programming-in-swift\/\">\u0431\u044b\u043b\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043e <\/a><\/strong>\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <strong>pipe<\/strong> (\u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440\u043d\u044b\u0439) \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440<strong><span style=\"color: #0000ff;\">\u00a0<\/span><span style=\"color: #0000ff;\"><code>|<\/code><\/span><span style=\"color: #0000ff;\">&gt;<\/span><\/strong>\u00a0, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043d\u0430\u0434\u043e\u0435\u0434\u043b\u0438\u0432\u043e\u0433\u043e \u043c\u0435\u0442\u0430\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438. \u041d\u043e \u0432\u044b\u0448\u0435\u043b <strong>Swift 2<\/strong> \u0438 \u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 <strong><a href=\"http:\/\/airspeedvelocity.net\/2015\/06\/23\/protocol-extensions-and-the-death-of-the-pipe-forward-operator\/\">\u043f\u043e\u0437\u0432\u043e\u043b\u0438\u043b\u0430 \u0440\u0435\u0448\u0438\u0442\u044c \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443<\/a><\/strong> \u0435\u0449\u0435 \u043f\u0440\u043e\u0449\u0435.<\/p>\n<p>\u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u043c<\/p>\n<p>1. \u0426\u0438\u0444\u0440\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0443\u043c\u0435\u0440\u0443\u044e\u0442\u0441\u044f \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e.<br \/>\n2. \u0426\u0438\u0444\u0440\u044b, \u043e\u043a\u0430\u0437\u0430\u0432\u0448\u0438\u0435\u0441\u044f \u043d\u0430 \u043d\u0435\u0447\u0451\u0442\u043d\u044b\u0445 \u043c\u0435\u0441\u0442\u0430\u0445, \u043e\u0441\u0442\u0430\u044e\u0442\u0441\u044f \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439.<br \/>\n3. \u0426\u0438\u0444\u0440\u044b, \u0441\u0442\u043e\u044f\u0449\u0438\u0435 \u043d\u0430 \u0447\u0451\u0442\u043d\u044b\u0445 \u043c\u0435\u0441\u0442\u0430\u0445, \u0443\u043c\u043d\u043e\u0436\u0430\u044e\u0442\u0441\u044f \u043d\u0430 2.<br \/>\n4. \u0415\u0441\u043b\u0438 \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0442\u0430\u043a\u043e\u0433\u043e \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0431\u043e\u043b\u044c\u0448\u0435 9 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 8 \u00d7 2 = 16), \u043e\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u0443\u043c\u043c\u043e\u0439 \u0446\u0438\u0444\u0440 \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f\u00a0\u00a0(\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 16: 1 + 6 = 7, 18: 1 + 8 = 9)\u2014 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u044b\u043c \u0447\u0438\u0441\u043b\u043e\u043c, \u0442\u043e \u0435\u0441\u0442\u044c \u0446\u0438\u0444\u0440\u043e\u0439.<br \/>\n5. \u0412\u0441\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0446\u0438\u0444\u0440\u044b \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f. \u0415\u0441\u043b\u0438 \u0441\u0443\u043c\u043c\u0430 \u043a\u0440\u0430\u0442\u043d\u0430 10, \u0442\u043e \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u0435\u0440\u043d\u044b.<\/p>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0448\u0430\u0433\u043e\u0432, \u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0443\u0434\u0435\u043c \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430, \u043b\u0438\u0431\u043e \u0442\u0438\u043f\u0430, \u043b\u0438\u0431\u043e \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432.<\/p>\n<p>\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0432 \u00a0<strong>Swift 2 <span style=\"color: #0000ff;\">String<\/span><\/strong> \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u043d\u043e <span style=\"color: #0000ff;\"><strong>String.characters<\/strong><\/span>\u00a0\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u0438 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e\u00a0\u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0432 \u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e. \u042d\u0442\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043c\u044b \u00a0\u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043c \u043d\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u0442\u0438\u043f\u0430 <strong><span style=\"color: #0000ff;\">\u00a0Int<\/span><\/strong><span style=\"color: #000000;\">.\u00a0\u0422\u043e \u0435\u0441\u0442\u044c \u0432\u043c\u0435\u0441\u0442\u043e\u00a0<strong><span style=\"color: #0000ff;\">String.toInteger<\/span><\/strong> \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c<strong><span style=\"color: #0000ff;\"> Int.init(String<\/span><span style=\"color: #0000ff;\">)<\/span><\/strong><\/span><strong><span style=\"color: #0000ff;\">\u00a0<\/span><\/strong>:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-1.48.58-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3324 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-1.48.58-PM.png\" alt=\"Screen Shot 2015-10-26 at 1.48.58 PM\" width=\"1014\" height=\"170\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-1.48.58-PM.png 1014w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-1.48.58-PM-300x50.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-1.48.58-PM-500x84.png 500w\" sizes=\"auto, (max-width: 1014px) 100vw, 1014px\" \/><\/a><br \/>\n\u042d\u0442\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 <strong>Optional<\/strong>, \u0442\u0430\u043a \u043a\u0430\u043a \u0432 \u043d\u043e\u043c\u0435\u0440\u0435 \u043a\u0440\u0435\u0434\u0438\u0442\u043d\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0431\u0435\u043b\u044b, \u0430 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0434\u0430\u043b\u044c\u0448\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430\u0434 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u043c\u0438 \u0446\u0435\u043b\u044b\u043c\u0438 \u0447\u0438\u0441\u043b\u0430\u043c\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u0432 <strong>Swift 2<\/strong> \u043c\u0435\u0442\u043e\u0434 <strong><span style=\"color: #0000ff;\">flatMap<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u0431\u0435\u0440\u0435\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u044b \u0432 \u043d\u043e\u043c\u0435\u0440\u0435 \u043a\u0430\u0440\u0442\u044b<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.06.32-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3383 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.06.32-PM.png\" alt=\"Screen Shot 2015-10-29 at 5.06.32 PM\" width=\"1006\" height=\"262\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.06.32-PM.png 1006w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.06.32-PM-300x78.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.06.32-PM-500x130.png 500w\" sizes=\"auto, (max-width: 1006px) 100vw, 1006px\" \/><\/a><br \/>\n\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043d\u0430\u0448\u0435\u043c\u0443 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443, \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0446\u0438\u0444\u0440\u044b \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e, \u0430 \u0443 \u043d\u0430\u0441 \u043e\u043d\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u043c \u043d\u0430\u0448\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0447\u0438\u0441\u0435\u043b \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 <strong><span style=\"color: #0000ff;\">reverse<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\"> \u0438 \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 <strong><span style=\"color: #0000ff;\">map<\/span><\/strong><\/span><\/span><\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.10.04-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3384 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.10.04-PM.png\" alt=\"Screen Shot 2015-10-29 at 5.10.04 PM\" width=\"1006\" height=\"300\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.10.04-PM.png 1006w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.10.04-PM-300x89.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.10.04-PM-500x149.png 500w\" sizes=\"auto, (max-width: 1006px) 100vw, 1006px\" \/><\/a><\/p>\n<p>\u041d\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 <strong><span style=\"color: #0000ff;\">map<\/span><\/strong>, \u0430 <strong><span style=\"color: #0000ff;\">map<\/span><\/strong>, \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0449\u0438\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0434 \u043a\u0430\u0436\u0434\u044b\u043c <strong>N- \u043c<\/strong> \u0447\u043b\u0435\u043d\u043e\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u041e\u043f\u044f\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435, \u043d\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u0443\u0436\u0435 \u043d\u0435 \u0442\u0438\u043f\u0430, \u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 <strong><span style=\"color: #0000ff;\">SequenceType<\/span><\/strong><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.49.29-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3327 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.49.29-PM.png\" alt=\"Screen Shot 2015-10-26 at 2.49.29 PM\" width=\"1064\" height=\"372\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.49.29-PM.png 1064w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.49.29-PM-300x105.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.49.29-PM-1024x358.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.49.29-PM-500x175.png 500w\" sizes=\"auto, (max-width: 1064px) 100vw, 1064px\" \/><\/a><br \/>\n\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.13.37-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3385 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.13.37-PM.png\" alt=\"Screen Shot 2015-10-29 at 5.13.37 PM\" width=\"1006\" height=\"294\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.13.37-PM.png 1006w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.13.37-PM-300x88.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-5.13.37-PM-500x146.png 500w\" sizes=\"auto, (max-width: 1006px) 100vw, 1006px\" \/><\/a><br \/>\n\u0417\u0430\u0442\u0435\u043c \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u043c\u0435\u0442\u043e\u0434, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0442\u044c \u0441\u0443\u043c\u043c\u0443 \u043b\u044e\u0431\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0439 \u0446\u0435\u043b\u044b\u0435 \u0447\u0438\u0441\u043b\u0430:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.56.02-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3328 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.56.02-PM.png\" alt=\"Screen Shot 2015-10-26 at 2.56.02 PM\" width=\"1010\" height=\"140\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.56.02-PM.png 1010w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.56.02-PM-300x42.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.56.02-PM-1000x140.png 1000w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-2.56.02-PM-500x69.png 500w\" sizes=\"auto, (max-width: 1010px) 100vw, 1010px\" \/><\/a><br \/>\n\u0438 \u043c\u0435\u0442\u043e\u0434 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430<\/p>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.12.13-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3331 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.12.13-PM.png\" alt=\"Screen Shot 2015-10-26 at 3.12.13 PM\" width=\"1012\" height=\"128\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.12.13-PM.png 1012w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.12.13-PM-300x38.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.12.13-PM-500x63.png 500w\" sizes=\"auto, (max-width: 1012px) 100vw, 1012px\" \/><\/a><br \/>\n\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0435\u0442\u043e\u0434 \u00a0<strong><span style=\"color: #0000ff;\">luhnchecksum<\/span><span style=\"color: #0000ff;\">()<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u0442\u0438\u043f <strong><span style=\"color: #0000ff;\">String <\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">\u0438\u00a0<\/span><\/span><span style=\"color: #000000;\">\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u0441\u0443\u043c\u043c\u0443 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439<\/span><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.45.45-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3332 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.45.45-PM.png\" alt=\"Screen Shot 2015-10-26 at 3.45.45 PM\" width=\"1008\" height=\"278\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.45.45-PM.png 1008w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.45.45-PM-300x83.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.45.45-PM-500x138.png 500w\" sizes=\"auto, (max-width: 1008px) 100vw, 1008px\" \/><\/a><br \/>\n\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.50.56-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3333 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.50.56-PM.png\" alt=\"Screen Shot 2015-10-26 at 3.50.56 PM\" width=\"980\" height=\"114\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.50.56-PM.png 980w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.50.56-PM-300x35.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-3.50.56-PM-500x58.png 500w\" sizes=\"auto, (max-width: 980px) 100vw, 980px\" \/><\/a><\/p>\n<h2>\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430<\/h2>\n<p>\u042f \u0434\u0443\u043c\u0430\u044e, \u0447\u0442\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u0432\u043e\u0435\u0431\u0440\u0430\u0437\u043d\u044b\u043c \u043e\u0442\u0432\u0435\u0442\u043e\u043c <strong>Apple<\/strong> \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 (<strong>optional<\/strong>) \u043c\u0435\u0442\u043e\u0434\u0430\u0445 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430. \u0427\u0438\u0441\u0442\u044b\u0435 <strong>Swift<\/strong> \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u044b \u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0438 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 (<strong>optional<\/strong>) \u043c\u0435\u0442\u043e\u0434\u044b. \u041c\u044b \u043f\u0440\u0438\u0432\u044b\u043a\u043b\u0438 \u043a \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 (<strong>optional<\/strong>) \u043c\u0435\u0442\u043e\u0434\u0430\u043c \u0432 <strong>Objective-C<\/strong> \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430\u0445, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u0432\u0435\u0449\u0435\u0439, \u043a\u0430\u043a \u0434\u0435\u043b\u0435\u0433\u0430\u0442\u044b:<\/p>\n<p>[objc]<br \/>\n@protocol MyClassDelegate<br \/>\n    @optional<\/p>\n<p>    &#8212; (BOOL)shouldDoThingOne;<br \/>\n    &#8212; (BOOL)shouldDoThingTwo<\/p>\n<p>    @end<br \/>\n[\/objc]<\/p>\n<p>\u0427\u0438\u0441\u0442\u044b\u0439 <strong>Swift<\/strong> \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u0430:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.03.41-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3341 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.03.41-PM.png\" alt=\"Screen Shot 2015-10-26 at 9.03.41 PM\" width=\"1022\" height=\"126\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.03.41-PM.png 1022w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.03.41-PM-300x37.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.03.41-PM-500x62.png 500w\" sizes=\"auto, (max-width: 1022px) 100vw, 1022px\" \/><\/a><br \/>\n\u0414\u043e \u0441\u0438\u0445 \u043f\u043e\u0440, \u0432\u0441\u0435, \u043a\u0442\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u043b \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u043b\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u044d\u0442\u0438 \u043c\u0435\u0442\u043e\u0434\u044b. \u042d\u0442\u043e \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u0443\u0435\u0442 \u0441 \u0438\u0434\u0435\u0435\u0439 \u0434\u0435\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f <strong>Cocoa<\/strong> \u043a\u0430\u043a \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u0441\u0435\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0434\u0435\u043b\u0435\u0433\u0430\u0442\u0430, \u043e\u0442\u0434\u0430\u0432\u0430\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0421 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0432 <strong>Swift 2<\/strong>, \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u043e \u0441\u0430\u043c\u0438\u043c \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u043c:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.01.31-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3340 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.01.31-PM.png\" alt=\"Screen Shot 2015-10-26 at 9.01.31 PM\" width=\"1030\" height=\"292\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.01.31-PM.png 1030w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.01.31-PM-300x85.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.01.31-PM-1024x290.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-9.01.31-PM-500x142.png 500w\" sizes=\"auto, (max-width: 1030px) 100vw, 1030px\" \/><\/a><br \/>\n\u0412 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c \u0441\u0447\u0435\u0442\u0435 \u044d\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0442\u0443 \u0436\u0435 \u0441\u0430\u043c\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e \u0438 \u00a0<strong><span style=\"color: #0000ff;\">@optional<\/span> <\/strong>\u0432<strong> Objective-C<\/strong>, \u043d\u043e \u0431\u0435\u0437 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a \u0432 <strong>runtime<\/strong>.<\/p>\n<h2>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u00a0API<\/h2>\n<p>\u041e\u0434\u043d\u0430 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443\u0434\u0440\u0443\u0447\u0430\u0435\u0442<strong> iOS<\/strong> \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, &#8212; \u044d\u0442\u043e \u043d\u0435\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0431\u044b\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u043e\u0432\u044b\u0445 <strong>API<\/strong>s. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <strong><span style=\"color: #0000ff;\">UIStackView<\/span> <\/strong>\u00a0\u0432 \u00a0<strong>iOS 8<\/strong>, \u0442\u043e \u0432\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0441\u044f \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u043e. \u0412 \u0434\u0430\u0432\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430 <strong>Objective C<\/strong> \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0431\u044b \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u043a\u043e\u0434:<\/p>\n<p>[objc]<br \/>\nNSClassFromString(@&quot;UIAlertController&quot;) != nil<br \/>\n[\/objc]<\/p>\n<p>\u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 &#171;\u0435\u0441\u043b\u0438 \u043a\u043b\u0430\u0441\u0441 <strong><span style=\"color: #0000ff;\">UIAlertController<\/span><\/strong> \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442,&#187; \u0438 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043b\u0438 \u044d\u0442\u043e \u043d\u0430 <strong>\u00a0iOS 8<\/strong> \u0438\u043b\u0438 \u043f\u043e\u0437\u0436\u0435. \u041d\u043e \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e <strong>Xcode<\/strong> \u043d\u0435 \u0434\u043e\u0433\u0430\u0434\u044b\u0432\u0430\u043b\u0441\u044f \u043e\u0431 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0439 \u0446\u0435\u043b\u0438 \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0442\u043e \u043e\u043d \u0438 \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u043d\u0430\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0412\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u043e\u0441\u044c \u0432 <strong>Swift 2<\/strong>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u044f\u0432\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u0434:<\/p>\n<p>[js]<br \/>\nif #available(iOS 9, *) {<br \/>\n    let stackView = UIStackView()<br \/>\n    \/\/ \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435&#8230;<br \/>\n}<br \/>\n[\/js]<\/p>\n<p>\u041c\u0430\u0433\u0438\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f <strong><span style=\"color: #0000ff;\">#available<\/span><\/strong>: \u043e\u043d\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0435\u0441\u044c \u043b\u0438 \u0432\u044b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 iOS 9 \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0437\u0434\u043d\u0435\u0439, \u0438 \u0435\u0441\u043b\u0438 &#171;\u0434\u0430&#187;, \u0442\u043e \u043a\u043e\u0434 \u0441 <strong><span style=\"color: #0000ff;\">UIStackView<\/span><\/strong> \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0443\u0449\u0435\u043d. \u041d\u0430\u043b\u0438\u0447\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u00a0&#171;<strong><span style=\"color: #0000ff;\">*<\/span><\/strong>&#187; \u043f\u043e\u0441\u043b\u0435 &#171;<strong><span style=\"color: #0000ff;\">iOS 9<\/span><\/strong>&#187; \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0439 \u0431\u0443\u0434\u0443\u0449\u0435\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u0443\u044e <strong>Apple<\/strong> \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442.<br \/>\n\u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 <strong><span style=\"color: #0000ff;\">#available<\/span><\/strong> \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0435\u0449\u0435 \u0442\u0435\u043c, \u0447\u0442\u043e \u043e\u043d\u043e \u0434\u0430\u0435\u0442 \u0432\u0430\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0432 <strong><span style=\"color: #0000ff;\">else<\/span><\/strong> \u0431\u043b\u043e\u043a\u0435, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e <strong>Xcode<\/strong> \u0442\u0435\u043f\u0435\u0440\u044c \u0437\u043d\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u0431\u043b\u043e\u043a \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f, \u0435\u0441\u043b\u0438 \u043d\u0430 \u043f\u0440\u0438\u0431\u043e\u0440\u0435 \u0432\u0435\u0440\u0441\u0438\u044f iOS 8 \u0438\u043b\u0438 \u043c\u043b\u0430\u0434\u0448\u0435 \u0438 \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0438\u0442\u044c \u0432\u0430\u0441, \u0435\u0441\u043b\u0438 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c \u043d\u043e\u0432\u044b\u0435 <strong>API<\/strong>s. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435:<\/p>\n<p>[js]<br \/>\nif #available(iOS 9, *) {<br \/>\n    \/\/ do cool iOS 9 stuff<br \/>\n} else {<br \/>\n    let stackView = UIStackView()<br \/>\n}<br \/>\n[\/js]<\/p>\n<p>\u2026\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043e\u0448\u0438\u0431\u043a\u0443:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-10.38.50-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3342 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-10.38.50-PM.png\" alt=\"Screen Shot 2015-10-26 at 10.38.50 PM\" width=\"878\" height=\"296\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-10.38.50-PM.png 878w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-10.38.50-PM-300x101.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-10.38.50-PM-500x169.png 500w\" sizes=\"auto, (max-width: 878px) 100vw, 878px\" \/><\/a><br \/>\n<strong>Xcode<\/strong> \u0432\u0438\u0434\u0438\u0442, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <strong><span style=\"color: #0000ff;\">UIStackView<\/span><\/strong> \u0442\u0430\u043c, \u0433\u0434\u0435 \u043e\u043d \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0438 \u043e\u043d \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u044f\u0441\u044c \u0441 &#171;\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043b\u0438 \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0441&#187; \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043a\u0430\u0437\u0430\u0442\u044c <strong>Xcode<\/strong> \u043e \u043d\u0430\u0448\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0438\u044f\u0445, \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043d\u0430\u0448\u0435\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.<\/p>\n<h2>\u0421\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c<\/h2>\n<p>\u041a\u043e\u0433\u0434\u0430 \u0432\u044b \u043f\u0438\u0448\u0438\u0442\u0435 \u043a\u043e\u0434 \u043d\u0430 <strong>Swift<\/strong>, \u0442\u043e \u0435\u0441\u0442\u044c \u0440\u044f\u0434 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 <a href=\"https:\/\/developer.apple.com\/library\/ios\/documentation\/Swift\/Conceptual\/BuildingCocoaApps\/MixandMatch.html\">\u043f\u0440\u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0433\u043e\u0432\u043e\u0440\u044f\u0442 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0443, \u043d\u0443\u0436\u043d\u043e \u043b\u0438 \u0438 \u043a\u0430\u043a, \u044d\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u00a0<strong>Objective-C<\/strong> \u043c\u0435\u0442\u043e\u0434\u044b, \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u0442.\u0434.\u00a0\u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e, \u0432 \u0432\u0430\u0448\u0435\u043c \u0440\u0430\u0441\u043f\u043e\u0440\u044f\u0436\u0435\u043d\u0438\u0438 \u0435\u0441\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u044d\u0442\u0438\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c. \u0412\u043e\u0442 \u044d\u0442\u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b:<\/p>\n<ul>\n<li><strong><span style=\"color: #0000ff;\"><code>@IBOutlet<\/code><\/span><\/strong>\u00a0\u0438<span style=\"color: #0000ff;\">\u00a0<strong><code>@IBAction<\/code><\/strong><\/span>\u00a0\u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 <strong>Swift<\/strong> \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c \u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a\u00a0<strong>outlets<\/strong> \u0438 <strong>Actions\u00a0<\/strong>\u0432 \u00a0<strong>Interface Builder<\/strong>;<\/li>\n<li><span style=\"color: #0000ff;\"><code>dynamic<\/code><\/span>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <strong>KVO<\/strong> \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430;<\/li>\n<li><strong><span style=\"color: #0000ff;\"><code>@objc<\/code><\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u043b\u0430\u0441\u0441 \u0438\u043b\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u043c \u0438\u0437 <strong>Objective-C<\/strong>.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.03.04-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3336 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.03.04-PM.png\" alt=\"Screen Shot 2015-10-26 at 7.03.04 PM\" width=\"1014\" height=\"576\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.03.04-PM.png 1014w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.03.04-PM-300x170.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.03.04-PM-500x284.png 500w\" sizes=\"auto, (max-width: 1014px) 100vw, 1014px\" \/><\/a><br \/>\n\u0412 <strong>Swift 2<\/strong> \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u043d\u043e\u0432\u044b\u0439 \u0442\u0430\u043a\u043e\u0439 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 <strong><span style=\"color: #0000ff;\">@nonobjc<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f\u0432\u043d\u043e \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u0438\u043b\u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043e\u0442 \u044d\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 <strong>Objective-C<\/strong>. \u042d\u0442\u043e\u0442 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043b\u0435\u0437\u0435\u043d, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435. \u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 (\u0441\u043c\u043e\u0442\u0440\u0438 \u043d\u0438\u0436\u0435) \u0432 \u043a\u043b\u0430\u0441\u0441\u0430 <strong><span style=\"color: #0000ff;\">ViewController<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0442 Cocoa \u043a\u043b\u0430\u0441\u0441\u0430 <strong><span style=\"color: #0000ff;\">UIViewController<\/span><\/strong>, \u0432\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438 3 \u043c\u0435\u0442\u043e\u0434\u0430 \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c <strong><span style=\"color: #0000ff;\">performOperation<\/span><\/strong>, \u043d\u043e \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u042d\u0442\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e, <strong>Swift<\/strong> \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0442\u044c \u044d\u0442\u0438 \u043c\u0435\u0442\u043e\u0434\u044b, \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u044b\u0432\u0430\u044f\u0441\u044c \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0442\u0438\u043f\u0430\u0445 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430. \u041d\u043e <strong>Objective-C<\/strong> \u0442\u0430\u043a \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0412 <strong>Objective<\/strong>-C \u043c\u0435\u0442\u043e\u0434\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u0438\u043c\u0435\u043d\u0430\u043c, \u0430 \u043d\u0435 \u043f\u043e \u0442\u0438\u043f\u0430\u043c. \u0415\u0441\u043b\u0438 \u044d\u0442\u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432<strong> Objective-C<\/strong>, \u0442\u043e \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043e\u0448\u0438\u0431\u043a\u0443 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0442\u0430\u043a\u043e\u043c \u0432\u0438\u0434\u0435 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 <strong>Objecrive-C<\/strong> \u043d\u0435\u043b\u044c\u0437\u044f. \u0412\u0441\u0435 \u0434\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0430\u0448 \u043a\u043b\u0430\u0441\u0441 <strong><span style=\"color: #0000ff;\">ViewController<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u0430, \u043d\u0430\u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0442 Cocoa \u043a\u043b\u0430\u0441\u0441\u0430 <strong><span style=\"color: #0000ff;\">UIViewCiontroller<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">, \u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u044f\u0432\u043d\u043e<\/span><\/span>\u00a0\u043c\u0435\u0442\u0438\u0442 \u0432\u0441\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u043c \u00a0<strong><span style=\"color: #0000ff;\">@objc<\/span><\/strong>. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u044b \u0432 <strong>Objective-C<\/strong>, \u0442\u043e \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043d\u0430\u0431\u0434\u0438\u0442\u044c \u0438\u0445 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u043c <strong><span style=\"color: #0000ff;\">@noobjc<\/span> <\/strong> \u0438 \u043e\u0448\u0438\u0431\u043a\u0430 \u0438\u0441\u0447\u0435\u0437\u0430\u0435\u0442:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.49-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3337 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.49-PM.png\" alt=\"Screen Shot 2015-10-26 at 7.07.49 PM\" width=\"1194\" height=\"316\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.49-PM.png 1194w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.49-PM-300x79.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.49-PM-1024x271.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.49-PM-500x132.png 500w\" sizes=\"auto, (max-width: 1194px) 100vw, 1194px\" \/><\/a><br \/>\n. . . . . . . . . . . . . . . . .<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.36-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3338 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.36-PM.png\" alt=\"Screen Shot 2015-10-26 at 7.07.36 PM\" width=\"1198\" height=\"590\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.36-PM.png 1198w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.36-PM-300x148.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.36-PM-1024x504.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-26-at-7.07.36-PM-500x246.png 500w\" sizes=\"auto, (max-width: 1198px) 100vw, 1198px\" \/><\/a><\/p>\n<p>\u0414\u0440\u0443\u0433\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 <strong>Swift 2<\/strong> \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c &#8212; \u044d\u0442\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c\u0438 <strong>C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u0426\u0435\u043b\u044c\u044e \u044d\u0442\u043e\u0433\u043e \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u043e\u0435\u0434\u043b\u0438\u0432\u043e\u0433\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f <strong>Swift<\/strong>, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0435 \u0434\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0442\u0430\u043a\u0438\u043c \u0432\u0430\u0436\u043d\u044b\u043c \u0421 &#8212; \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u043e\u043c \u043a\u0430\u043a <strong>Core Audio<\/strong>, \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c <strong>callback<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u00a0\u0412 <strong>Swift 1.x<\/strong> \u043d\u0435 \u0431\u044b\u043b\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430<strong> \u0421<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u044e <strong>Swift<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439. \u0412\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e &#171;\u043e\u0431\u0435\u0440\u0442\u043a\u0443&#187; \u043d\u0430 <strong>C<\/strong> \u0438\u043b\u0438 <strong>Objective-C<\/strong>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u043d\u043a\u0430\u043f\u0441\u0443\u043b\u0438\u0440\u0443\u0435\u0442 <strong>callback<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u044e. <strong>\u0412\u00a0Swift 2<\/strong>\u00a0\u0441\u0442\u0430\u043b\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0434\u043b\u044f<strong> Swift<\/strong>\u00a0<strong>2<\/strong> \u043e\u0431\u0440\u0430\u0437\u043e\u043c. \u0423\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u043d\u0430 <strong>C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0438<a href=\"https:\/\/developer.apple.com\/library\/prerelease\/ios\/documentation\/Swift\/Conceptual\/BuildingCocoaApps\/InteractingWithCAPIs.html\"> \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 Swift \u043a\u0430\u043a \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f<\/a>. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0435 <strong>Swift<\/strong>\u00a0<strong>2<\/strong> \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0435 \u0438\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0441 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u0432 \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u043d\u0430 <strong>C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u2013 \u0441 \u043e\u0434\u043d\u0438\u043c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c: \u0432 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f\u043c, \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u043d\u0430<strong> C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438 &#171;\u0437\u0430\u0445\u0432\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e&#187; \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f (\u043e\u043d\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c\u0438). \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u043d\u0430\u00a0<strong>C<\/strong>\u00a0\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 <strong>Swift<\/strong>\u00a0<strong>2<\/strong> \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 &#171;\u0437\u0430\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0442&#187; \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442. <strong>Swift<\/strong>\u00a0<strong>2<\/strong> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043d\u043e\u0432\u0443\u044e \u043d\u043e\u0442\u0430\u0446\u0438\u044e\u00a0<strong><span style=\"color: #0000ff;\">@convention(c)<\/span><\/strong>\u00a0\u0434\u043b\u044f \u0438\u043d\u0434\u0438\u043a\u0430\u0446\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0430\u0445:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.24.56-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3346 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.24.56-AM.png\" alt=\"Screen Shot 2015-10-28 at 10.24.56 AM\" width=\"1020\" height=\"100\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.24.56-AM.png 1020w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.24.56-AM-300x29.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.24.56-AM-500x49.png 500w\" sizes=\"auto, (max-width: 1020px) 100vw, 1020px\" \/><\/a><br \/>\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 <strong>C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438<strong><span style=\"color: #0000ff;\">\u00a0qsort<\/span> <\/strong>\u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.20.06-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3345 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.20.06-AM.png\" alt=\"Screen Shot 2015-10-28 at 10.20.06 AM\" width=\"1038\" height=\"292\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.20.06-AM.png 1038w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.20.06-AM-300x84.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.20.06-AM-1024x288.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-10.20.06-AM-500x141.png 500w\" sizes=\"auto, (max-width: 1038px) 100vw, 1038px\" \/><\/a><br \/>\n\u041e\u0447\u0435\u043d\u044c \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\u00a0\u00a0<strong><a href=\"http:\/\/oleb.net\/blog\/2015\/06\/c-callbacks-in-swift\/\">C Callbacks in Swift<\/a><\/strong>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c <strong><span style=\"color: #0000ff;\">CGPath<\/span><\/strong>\u00a0\u0438\u043b\u0438 <strong><span style=\"color: #0000ff;\">UIBezierPath<\/span><\/strong> \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b\u0437\u043e\u0432\u0430\u00a0<a href=\"https:\/\/developer.apple.com\/library\/ios\/documentation\/GraphicsImaging\/Reference\/CGPath\/index.html#\/\/apple_ref\/c\/func\/CGPathApply\"><code>CGPathApply<\/code><\/a>\u00a0\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u043d\u0430 <strong>callback<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u044e. <strong><span style=\"color: #0000ff;\">CGPathApply<\/span><\/strong> \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u044d\u0442\u043e\u0442\u00a0<strong>callback<\/strong> \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e\u00a0path \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430.<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-2.41.54-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3354 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-2.41.54-PM.png\" alt=\"Screen Shot 2015-10-28 at 2.41.54 PM\" width=\"1128\" height=\"360\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-2.41.54-PM.png 1128w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-2.41.54-PM-300x96.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-2.41.54-PM-1024x327.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-2.41.54-PM-500x160.png 500w\" sizes=\"auto, (max-width: 1128px) 100vw, 1128px\" \/><\/a><br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3347 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM.png\" alt=\"Screen Shot 2015-10-28 at 11.05.00 AM\" width=\"1026\" height=\"1030\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM.png 1026w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM-150x150.png 150w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM-300x300.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM-1020x1024.png 1020w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.05.00-AM-299x300.png 299w\" sizes=\"auto, (max-width: 1026px) 100vw, 1026px\" \/><\/a><br \/>\n\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0439\u0434\u0435\u043c\u0441\u044f \u043f\u043e \u0432\u0441\u0435\u043c\u0443 <strong><span style=\"color: #0000ff;\">path<\/span><\/strong> \u0438 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.08.34-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3348 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.08.34-AM.png\" alt=\"Screen Shot 2015-10-28 at 11.08.34 AM\" width=\"1026\" height=\"422\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.08.34-AM.png 1026w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.08.34-AM-300x123.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.08.34-AM-1024x421.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.08.34-AM-500x206.png 500w\" sizes=\"auto, (max-width: 1026px) 100vw, 1026px\" \/><\/a><br \/>\n\u0418\u043b\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u0442\u044c, \u0441\u043a\u043e\u043b\u044c\u043a\u043e <strong><span style=\"color: #0000ff;\">closepath<\/span><\/strong> \u043a\u043e\u043c\u0430\u043d\u0434 \u0432 \u044d\u0442\u043e\u043c <strong><span style=\"color: #0000ff;\">path<\/span><\/strong>:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.20.34-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3349 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.20.34-AM.png\" alt=\"Screen Shot 2015-10-28 at 11.20.34 AM\" width=\"1016\" height=\"140\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.20.34-AM.png 1016w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.20.34-AM-300x41.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-11.20.34-AM-500x69.png 500w\" sizes=\"auto, (max-width: 1016px) 100vw, 1016px\" \/><\/a><br \/>\n\u0412 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e <strong>Swift 2<\/strong> \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c (bridges) \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 <strong>C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0439. \u042d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0439 (\u0438 \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u043e\u0439) \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0447\u0438\u0441\u043b\u043e\u043c <strong>C API<\/strong>s , \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 <strong>callbacks<\/strong>. \u0418\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0441\u043e\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f \u043f\u043e \u0432\u044b\u0437\u043e\u0432\u0430\u043c <strong>C<\/strong> \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u044d\u0442\u0438\u043c \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f\u043c &#171;\u0437\u0430\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0442\u044c&#187; \u0432\u043d\u0435\u0448\u043d\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435, \u0432\u0430\u043c \u0447\u0430\u0441\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0435 \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043d\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u0430\u0448\u0435 <strong>callback<\/strong> \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0435, \u0447\u0435\u0440\u0435\u0437 <strong><span style=\"color: #0000ff;\">void<\/span><\/strong> \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043d\u043e\u0433\u0438\u0435 <strong>C API<\/strong>s \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0446\u0435\u043b\u0438. \u042d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432 <strong>Swift<\/strong>\u00a0<strong>2<\/strong> \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0438\u0437\u0432\u0438\u043b\u0438\u0441\u0442\u044b\u043c \u043f\u0443\u0442\u0435\u043c, \u043d\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e.<\/p>\n<h2>\u041d\u043e\u0432\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 Objective-C<\/h2>\n<p>Apple \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u0442\u0440\u0438 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0432 \u00a0<strong>Objective-C<\/strong> \u0432 <strong>Xcode 7<\/strong> \u0441 \u043f\u0440\u0438\u0446\u0435\u043b\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0445 \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 &#171;\u0433\u043b\u0430\u0434\u043a\u043e\u0439&#187;\u00a0\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 <strong>Swift<\/strong>:<\/p>\n<ul>\n<li><strong>nullability<\/strong>;<\/li>\n<li>\u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0435 (lightweight) <strong>generics<\/strong>;<\/li>\n<li><span style=\"color: #0000ff;\"><code>__kindof<\/code><\/span>\u00a0\u0442\u0438\u043f\u044b.<\/li>\n<\/ul>\n<h2>Nullability<\/h2>\n<p>\u042d\u0442\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0431\u044b\u043b\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0443\u0436\u0435 \u0432 <strong>Xcode 6.3<\/strong>, \u043d\u043e \u0441\u0442\u043e\u0438\u0442 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e <strong>Objective-C<\/strong> \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0442\u043e\u0447\u043d\u043e \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043b\u044e\u0431\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0442\u043e\u0433\u043e, \u043c\u043e\u0433\u0443\u0442 \u043b\u0438 \u043e\u043d\u0438 \u0431\u044b\u0442\u044c <strong><span style=\"color: #0000ff;\">nil<\/span><\/strong> \u0438\u043b\u0438 \u043d\u0435\u0442. \u042d\u0442\u043e \u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u00a0<strong>Swift<\/strong>\u00a0\u043a\u00a0<strong>Optional<\/strong> \u0438\u043b\u0438 <strong>\u043d\u0435-Optional<\/strong> \u0442\u0438\u043f\u0430\u043c \u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 <strong>Objective-C<\/strong> \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0442\u0440\u0438 \u043a\u0432\u0430\u043b\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430 \u0434\u043b\u044f <strong>nullability<\/strong>:<\/p>\n<ul>\n<li><strong><span style=\"color: #0000ff;\"><code>nullable<\/code> (<code>__nullable<\/code><\/span><\/strong>\u00a0\u0434\u043b\u044f <strong>C<\/strong> \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439), \u043e\u0437\u043d\u0430\u0447\u0430\u044e\u0449\u0438\u0439, \u0447\u0442\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u00a0\u00a0<strong><span style=\"color: #0000ff;\"><code>nil<\/code><\/span><\/strong>\u00a0\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 <strong>Swift<\/strong>\u00a0\u043a\u0430\u043a\u00a0<strong>Optional<\/strong> \u0442\u0438\u043f &#8212; <strong><span style=\"color: #0000ff;\">?<\/span><\/strong>;<\/li>\n<li><strong><span style=\"color: #0000ff;\"><code>nonnull<\/code> (<code>__nonnull<\/code><\/span><\/strong>\u00a0 \u0434\u043b\u044f <strong>C<\/strong> \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439), \u043e\u0437\u043d\u0430\u0447\u0430\u044e\u0449\u0438\u0439, \u0447\u0442\u043e\u00a0<strong><span style=\"color: #0000ff;\"><code>nil<\/code><\/span><\/strong>\u00a0\u043d\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d \u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 <strong>Swift<\/strong>\u00a0\u043a\u0430\u043a <strong>\u043d\u0435<\/strong>\u00a0<strong>Optional <\/strong>\u0442\u0438\u043f;<\/li>\n<li><strong><span style=\"color: #0000ff;\"><code>null_unspecified<\/code> (<code>__null_unspecified<\/code><\/span><\/strong>\u00a0\u0434\u043b\u044f<strong> C<\/strong> \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439), \u043d\u0435\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u043e \u0442\u043e\u043c \u043a\u0430\u043a\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f; \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0442\u0430\u043a\u043e\u0439 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f\u00a0\u0432\u00a0<strong>Swift <\/strong>\u043a\u0430\u043a\u00a0\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 &#171;\u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u043e\u0435&#187; <strong>Optional<\/strong> &#8212;<strong><span style=\"color: #0000ff;\"> !<\/span><\/strong>.<\/li>\n<\/ul>\n<p>\u041a\u0432\u0430\u043b\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0432\u044b\u0448\u0435, \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0430\u043d\u043d\u043e\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f <strong>Objective-C<\/strong> \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043a\u0430\u043a \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-7.53.50-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3390 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-7.53.50-PM.png\" alt=\"Screen Shot 2015-10-29 at 7.53.50 PM\" width=\"1076\" height=\"260\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-7.53.50-PM.png 1076w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-7.53.50-PM-300x72.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-7.53.50-PM-1024x247.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-7.53.50-PM-500x121.png 500w\" sizes=\"auto, (max-width: 1076px) 100vw, 1076px\" \/><\/a><br \/>\n\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0446\u0435\u043b\u0430\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u044c, \u043e\u0442\u043c\u0435\u0447\u0435\u043d\u043d\u0430\u044f \u0441\u043a\u043e\u0431\u043a\u0430\u043c\u0438 \u00a0<span style=\"color: #0000ff;\"><strong>NS_ASSUME_NONNULL_BEGIN<\/strong><\/span> \u0438<strong><span style=\"color: #0000ff;\"> NS_ASSUME_NONNULL_END<\/span><\/strong>, \u0432\u044b\u0431\u0440\u0430\u043d\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b <strong><span style=\"color: #0000ff;\">nonnull<\/span><\/strong> \u0438\u043c\u0435\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \u0430\u043d\u043d\u043e\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/p>\n<h2>\u041b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0435 (lightweight) generics<\/h2>\n<p>\u041b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0435 (lightweight) <strong>generics<\/strong> \u0432 <strong>Objective-C<\/strong>, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u0430\u043c\u044b\u043c\u0438 \u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0432 <strong>Objective-C<\/strong> \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0434\u0435\u043a\u0430\u0434\u044b, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 <strong>Apple<\/strong>. \u041e\u043d\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u043c\u0438 \u0442\u0438\u043f\u0430 <strong><span style=\"color: #0000ff;\">NSArray<\/span><\/strong>, <strong><span style=\"color: #0000ff;\">NSDictionary<\/span><\/strong>\u00a0\u0438 \u0442.\u0434.. \u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439 \u0432 <strong>Objective-C<\/strong> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0442\u0435\u0440\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0442\u0438\u043f\u0435 \u043f\u0440\u0438 \u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0438\u0445 \u0432 <strong>Swift<\/strong>, \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 <strong>Swift<\/strong> \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e <strong><span style=\"color: #0000ff;\">AnyObject<\/span><\/strong> \u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c down &#171;\u043a\u0430\u0441\u0442\u0438\u043d\u0433&#187; \u0432 \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u043c \u0447\u0438\u0441\u043b\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432. \u041d\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u00a0\u00a0\u0432 <strong>Xcode 7<\/strong> \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.02.51-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3395 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.02.51-PM.png\" alt=\"Screen Shot 2015-10-29 at 10.02.51 PM\" width=\"1048\" height=\"204\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.02.51-PM.png 1048w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.02.51-PM-300x58.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.02.51-PM-1024x199.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.02.51-PM-500x97.png 500w\" sizes=\"auto, (max-width: 1048px) 100vw, 1048px\" \/><\/a><br \/>\n\u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0443\u0435\u043c \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u0442\u0440\u043e\u043a. \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043d\u0435\u0433\u043e \u0447\u0438\u0441\u043b\u043e, \u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0432\u044b\u0434\u0430\u0441\u0442 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043e \u043d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u00a0\u0442\u0438\u043f\u043e\u0432.<br \/>\n\u041b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0435\u00a0<strong>generics<\/strong>\u00a0\u043e\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u043c\u0438 \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 (interoperability) \u043c\u0435\u0436\u0434\u0443<strong> Objective-C<\/strong> \u0438 <strong>Swift<\/strong> \u0432 \u043f\u043b\u0430\u043d\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432\u00a0<strong><span style=\"color: #0000ff;\">NSArray<\/span><\/strong>,\u00a0<strong><span style=\"color: #0000ff;\">NSDictionary<\/span><\/strong>\u00a0\u0438 \u0442.\u0434., \u0442\u0430\u043a \u043a\u0430\u043a \u0442\u0435\u043f\u0435\u0440\u044c \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e &#171;\u043a\u0430\u0441\u0442\u0438\u043d\u0433\u043e\u0432&#187; \u0432 \u0432\u0430\u0448\u0435\u043c <strong>Swift<\/strong> \u043a\u043e\u0434\u0435 \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438 <strong>Apple<\/strong> \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u044b \u043d\u0430 <strong>Objective-C<\/strong>.<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.11.03-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3396 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.11.03-PM.png\" alt=\"Screen Shot 2015-10-29 at 10.11.03 PM\" width=\"1012\" height=\"152\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.11.03-PM.png 1012w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.11.03-PM-300x45.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.11.03-PM-500x75.png 500w\" sizes=\"auto, (max-width: 1012px) 100vw, 1012px\" \/><\/a><br \/>\n\u0412\u0438\u0434\u0438\u0442\u0435? \u0422\u0435\u043f\u0435\u0440\u044c <strong><span style=\"color: #0000ff;\">subviews<\/span><\/strong> \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c<strong><span style=\"color: #0000ff;\"> [AnyObject]<\/span><\/strong>, \u043e\u043d\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u0432 <strong>Swift<\/strong> \u043a\u0430\u043a <strong><span style=\"color: #0000ff;\">[UIView]<\/span><\/strong>.<br \/>\n\u0422\u0435\u043f\u0435\u0440\u044c \u0432<strong> Objective-C<\/strong>\u00a0\u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u00a0<strong>generic<\/strong> \u043a\u043b\u0430\u0441\u0441:<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-8.58.48-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3394 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-8.58.48-PM.png\" alt=\"Screen Shot 2015-10-29 at 8.58.48 PM\" width=\"1032\" height=\"304\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-8.58.48-PM.png 1032w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-8.58.48-PM-300x88.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-8.58.48-PM-1024x302.png 1024w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-8.58.48-PM-500x147.png 500w\" sizes=\"auto, (max-width: 1032px) 100vw, 1032px\" \/><\/a><br \/>\n\u0418 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e<br \/>\n<a href=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.19.35-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3397 size-full\" src=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.19.35-PM.png\" alt=\"Screen Shot 2015-10-29 at 10.19.35 PM\" width=\"1014\" height=\"202\" srcset=\"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.19.35-PM.png 1014w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.19.35-PM-300x60.png 300w, https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-29-at-10.19.35-PM-500x100.png 500w\" sizes=\"auto, (max-width: 1014px) 100vw, 1014px\" \/><\/a><br \/>\n\u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u0442\u0438\u043f\u043e\u0432 \u0432\u044b\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0438\u0445 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 <strong>generic<\/strong> \u0442\u0438\u043f\u043e\u0432 \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u0434\u0430 <strong>Objective-C<\/strong> \u0438 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f <strong>Swift<\/strong>.<\/p>\n<h2><strong><span style=\"color: #0000ff;\">__kindof<\/span> <\/strong>\u0442\u0438\u043f\u044b<\/h2>\n<p><span style=\"color: #0000ff;\"><strong>__kindof<\/strong>\u00a0<\/span>\u0442\u0438\u043f\u044b \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u043a \u00a0<strong>generics,<\/strong>\u00a0\u0438 \u0438\u0445 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u043e\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0441\u043b\u0443\u0447\u0430\u0435\u043c. \u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043a\u043b\u0430\u0441\u0441 <strong><span style=\"color: #0000ff;\">UIView<\/span><\/strong> \u0438\u043c\u0435\u0435\u0442 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e <strong><span style=\"color: #0000ff;\">subviews<\/span><\/strong>, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 <strong><span style=\"color: #0000ff;\">UIView<\/span><\/strong> \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432:<\/p>\n<p>[js]<br \/>\n@interface UIView<br \/>\n@property(nonatomic,readonly,copy) NSArray&lt;UIView *&gt; *subviews;<br \/>\n@end<br \/>\n[\/js]<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442\u0435 <strong><span style=\"color: #0000ff;\">UIButton<\/span><\/strong> \u043a \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c\u0443 <strong><span style=\"color: #0000ff;\">UIView<\/span><\/strong> \u043a\u0430\u043a \u0441\u0430\u043c\u043e\u0435 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u0437\u0430\u0434\u043d\u0435\u043c \u0444\u043e\u043d\u0435\u00a0<strong><span style=\"color: #0000ff;\">subview<\/span><\/strong><span style=\"color: #0000ff;\"><span style=\"color: #000000;\">,<\/span><\/span> \u0438 \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u043f\u043e\u0441\u043b\u0430\u0442\u044c \u0435\u043c\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u00a0<strong><span style=\"color: #0000ff;\">UIButton<\/span><\/strong>, \u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0432\u044b\u0434\u0430\u0441\u0442 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435. \u042d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e, \u043d\u043e \u043c\u044b \u0442\u043e\u0447\u043d\u043e \u0437\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u0437\u0430\u0434\u043d\u0435\u043c \u043f\u043b\u0430\u043d\u0435 <strong><span style=\"color: #0000ff;\">subview<\/span><\/strong> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <strong><span style=\"color: #0000ff;\">UIButton<\/span><\/strong>:<\/p>\n<p>[js]<br \/>\n[view insertSubview:button atIndex:0];<br \/>\n\/\/&#8212; warning: UIView may not respond to setTitle:forState:<br \/>\n[view.subviews[0] setTitle:@&quot;Cancel&quot;\u009d forState:UIControlStateNormal];<br \/>\n[\/js]<\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u00a0<strong><span style=\"color: #0000ff;\">__kindof<\/span><\/strong> \u0442\u0438\u043f, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u043a\u0443\u044e \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0442\u0438\u043f\u0438\u0437\u0430\u0446\u0438\u0438 \u0432 <strong>Objective-C<\/strong> \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043b \u043d\u0435\u044f\u0432\u043d\u044b\u0439 &#171;\u043a\u0430\u0441\u0442\u0438\u043d\u0433&#187; \u043a\u0430\u043a <strong>superclass<\/strong>, \u0442\u0430\u043a \u0438 \u043b\u044e\u0431\u043e\u0433\u043e <strong>subclass<\/strong> :<\/p>\n<p>[js]<br \/>\n@interface UIView<br \/>\n@property(nonatomic,readonly,copy) NSArray&lt; _kindof UIView *&gt; *subviews;<br \/>\n@end<\/p>\n<p>\/\/&#8212; no warnings here:<br \/>\n[view.subviews[0] setTitle:@&quot;Cancel&quot; forState:UIControlStateNormal];<br \/>\nUIButton *button = view.subviews[0];<br \/>\n[\/js]<\/p>\n<p>\u041b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0435<strong> generics<\/strong> \u0438 <span style=\"color: #0000ff;\">__<strong>kindof<\/strong><\/span>\u00a0\u0442\u0438\u043f\u044b \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \u0443\u0431\u0440\u0430\u0442\u044c<strong><span style=\"color: #0000ff;\"> id\/AnyObject<\/span><\/strong>\u00a0\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0435\u0437\u0434\u0435 \u0438\u0437 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0441\u0432\u043e\u0438\u0445 <strong>API<\/strong>s. <strong><span style=\"color: #0000ff;\">id<\/span><\/strong> \u043c\u043e\u0436\u0435\u0442 \u0432\u0441\u0435 \u0435\u0449\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0442\u0435\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445, \u043a\u043e\u0433\u0434\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0442\u043e\u043c, \u0441 \u043a\u0430\u043a\u0438\u043c \u0442\u0438\u043f\u043e\u043c \u0432\u044b \u0438\u043c\u0435\u0435\u0442\u0435 \u0434\u0435\u043b\u043e:<\/p>\n<p>[js]<br \/>\n@property (nullable, copy) NSDictionary&lt;NSString *, id&gt; *userInfo;<br \/>\n[\/js]<\/p>\n<p>\u0421\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0441\u0442\u0430\u0442\u044c\u0438<\/p>\n<p><a href=\"https:\/\/www.hackingwithswift.com\/new-features-swift-2\">New features in Swift 2<\/a><br \/>\n<a href=\"http:\/\/blog.zuehlke.com\/en\/what-i-like-in-swift-2-the-return-part-1-of-3\/\">What I Like in Swift 2<\/a><br \/>\n<a href=\"http:\/\/www.appcoda.com\/swift2\/\">A Beginner&#8217;s guide to Swift 2<\/a><br \/>\n<a href=\"http:\/\/www.thomashanning.com\/error-handling-in-swift-2-0\/\">Error Handling in Swift 2.0<\/a><br \/>\n<a href=\"http:\/\/natashatherobot.com\/swift-2-0-try\/\">Swift 2.0: Let\u2019s try?<\/a><br \/>\n<a title=\"Video Tutorial: What\u2019s New in Swift 2 Part 4: Pattern Matching\" href=\"http:\/\/www.raywenderlich.com\/109655\/video-tutorial-whats-new-in-swift-2-part-4-pattern-matching\">Video Tutorial: What\u2019s New in Swift 2 Part 4: Pattern Matching<\/a><br \/>\n<a href=\"http:\/\/robnapier.net\/throw-what-dont-throw\">Throw What Don&#8217;t Throw<\/a><br \/>\n<a href=\"https:\/\/www.mikeash.com\/pyblog\/friday-qa-2015-06-19-the-best-of-whats-new-in-swift.html\">The Best of What&#8217;s New in Swift<\/a><br \/>\n<a href=\"https:\/\/www.hackingwithswift.com\/swift2\">What&#8217;s new in Swift 2<\/a><br \/>\n<a href=\"http:\/\/www.thomashanning.com\/api-availability-checking-in-swift-2-0\/\">Swift 2.0: API Availability Checking<\/a><br \/>\n<a href=\"http:\/\/stackoverflow.com\/questions\/24026510\/how-do-i-shuffle-an-array-in-swift\">How do I shuffle an array in Swift?<\/a><br \/>\n<a href=\"https:\/\/gist.github.com\/natecook1000\/ef096622dab1981823c5\">Swift 2.0 shuffle \/ shuffleInPlace<\/a><br \/>\n<a href=\"http:\/\/oleb.net\/blog\/2015\/06\/c-callbacks-in-swift\/\">C<\/a><a href=\"http:\/\/oleb.net\/blog\/2015\/06\/c-callbacks-in-swift\/\"> Callbacks in Swift<\/a>,<br \/>\n<a href=\"http:\/\/airspeedvelocity.net\/2015\/06\/23\/protocol-extensions-and-the-death-of-the-pipe-forward-operator\/\">Protocol extensions and the death of the pipe-forward\u00a0operator<\/a><br \/>\n<a href=\"https:\/\/medium.com\/ios-os-x-development\/swift-protocol-extension-method-dispatch-6a6bf270ba94#.aqeui9pcy\">Swift protocol extension method dispatch<\/a><br \/>\n<a href=\"http:\/\/www.codingexplorer.com\/api-availability-checking-in-swift-2\/\">API Availability Checking in Swift 2<\/a><br \/>\n<a href=\"https:\/\/developer.apple.com\/library\/prerelease\/ios\/documentation\/Swift\/Conceptual\/BuildingCocoaApps\/InteractingWithCAPIs.html\">Interacting with C APIs<\/a><br \/>\n<a href=\"http:\/\/www.infoq.com\/articles\/whats-new-ios9-swift-objc\">What&#8217;s new in iOS 9: Swift and Objective-C<\/a><br \/>\n<a href=\"https:\/\/developer.apple.com\/library\/prerelease\/ios\/releasenotes\/DeveloperTools\/RN-Xcode\/Chapters\/xc7_release_notes.html#\/\/apple_ref\/doc\/uid\/TP40001051-CH5-SW1\">Xcode 7 Release Notes<\/a><br \/>\n<a title=\"Xcode 7.1 Beta Release Notes\" name=\"\/\/apple_ref\/doc\/uid\/TP40001051-CH5-DontLinkElementID_126\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043b\u0438\u0448\u044c \u0447\u0430\u0441\u0442\u044c \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439\u00a0Swift 2: \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u044f\u0437\u044b\u043a\u0430, \u0442\u0430\u043a\u0438\u0435, \u043a\u0430\u043a\u00a0enums,\u00a0scoping\u00a0(\u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f), \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0442.\u0434. \u00a0\u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441 \u043e\u0431\u0440\u0430\u0437\u0446\u043e\u043c (pattern\u00a0matching) \u00a0\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438 (error\u00a0handling) \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f: \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f (extensions) \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 (availability\u00a0checking) \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 &hellip; <a href=\"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/\">\u0427\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043b\u0435\u0435 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28],"tags":[29,31],"class_list":["post-3277","post","type-post","status-publish","format-standard","hentry","category-ios-9","tag-ios-9","tag-swift"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n\t<meta name=\"author\" content=\"tatiana.kornilova@gmail.com\"\/>\n\t<meta name=\"keywords\" content=\"swift 2,error handling,do-try-catch,defer,guard,throws,throw,pattern matching,if case,for case,while case,\u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f,enum,complex if predicate,protocol extension,@available,@noobjc,c function pointer,__kindof,light generic\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"ru_RU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"\u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. | \u0420\u0443\u0441\u0441\u043a\u0438\u0439 \u043d\u0435\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0441\u043f\u0435\u043a\u0442 \u043b\u0435\u043a\u0446\u0438\u0439 \u0421\u0442\u044d\u043d\u0444\u043e\u0440\u0434\u0441\u043a\u043e\u0433\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 &quot; \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&quot; 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 , 2023,  2024,  2025  \u0438 2026 \u0433\u0433., \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u0435\u043c\u044b\u0439 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u0439 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043c\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c\u0438 \u0441 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0435\u0439 \u043a\u0443\u0440\u0441\u043e\u0432 \u043a \u043d\u043e\u0432\u044b\u043c \u0432\u0435\u0440\u0441\u0438\u044f\u043c Swift, Objective-C \u0438 iOS.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"&quot;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&quot; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2015-10-28T13:02:37+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2015-11-01T07:09:51+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"&quot;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&quot; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.\" \/>\n\t\t<meta name=\"twitter:description\" content=\"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#article\",\"name\":\"\\\"\\u0427\\u0442\\u043e \\u043d\\u043e\\u0432\\u043e\\u0433\\u043e \\u0432 Swift 2?\\\" \\u043d\\u0430 \\u043f\\u0440\\u0438\\u043c\\u0435\\u0440\\u0430\\u0445. \\u0427\\u0430\\u0441\\u0442\\u044c 2. | \\u041e\\u0431\\u0443\\u0447\\u0430\\u044e\\u0449\\u0438\\u0439 \\u043a\\u0443\\u0440\\u0441 \\u043f\\u043e \\u0440\\u0430\\u0437\\u0440\\u0430\\u0431\\u043e\\u0442\\u043a\\u0435 iOS+Swift \\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0439.\",\"headline\":\"&#171;\\u0427\\u0442\\u043e \\u043d\\u043e\\u0432\\u043e\\u0433\\u043e \\u0432 Swift 2?&#187; \\u043d\\u0430 \\u043f\\u0440\\u0438\\u043c\\u0435\\u0440\\u0430\\u0445. \\u0427\\u0430\\u0441\\u0442\\u044c 2.\",\"author\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/author\\\/tatiana-lornilovagmail-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/wp-content\\\/uploads\\\/2015\\\/10\\\/Screen-Shot-2015-10-28-at-3.18.06-PM.png\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#articleImage\",\"width\":1754,\"height\":666},\"datePublished\":\"2015-10-28T13:02:37+00:00\",\"dateModified\":\"2015-11-01T07:09:51+00:00\",\"inLanguage\":\"ru-RU\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#webpage\"},\"articleSection\":\"iOS 9, iOS 9, Swift\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/category\\\/ios-9\\\/#listItem\",\"name\":\"iOS 9\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/category\\\/ios-9\\\/#listItem\",\"position\":2,\"name\":\"iOS 9\",\"item\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/category\\\/ios-9\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#listItem\",\"name\":\"&#171;\\u0427\\u0442\\u043e \\u043d\\u043e\\u0432\\u043e\\u0433\\u043e \\u0432 Swift 2?&#187; \\u043d\\u0430 \\u043f\\u0440\\u0438\\u043c\\u0435\\u0440\\u0430\\u0445. \\u0427\\u0430\\u0441\\u0442\\u044c 2.\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#listItem\",\"position\":3,\"name\":\"&#171;\\u0427\\u0442\\u043e \\u043d\\u043e\\u0432\\u043e\\u0433\\u043e \\u0432 Swift 2?&#187; \\u043d\\u0430 \\u043f\\u0440\\u0438\\u043c\\u0435\\u0440\\u0430\\u0445. \\u0427\\u0430\\u0441\\u0442\\u044c 2.\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/category\\\/ios-9\\\/#listItem\",\"name\":\"iOS 9\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/#person\",\"name\":\"tatiana.kornilova@gmail.com\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/33ccc19059014d8a7849c3621afa2b66a5f3e50ac7291c91c30ff35df5747628?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"tatiana.kornilova@gmail.com\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/author\\\/tatiana-lornilovagmail-com\\\/#author\",\"url\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/author\\\/tatiana-lornilovagmail-com\\\/\",\"name\":\"tatiana.kornilova@gmail.com\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/33ccc19059014d8a7849c3621afa2b66a5f3e50ac7291c91c30ff35df5747628?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"tatiana.kornilova@gmail.com\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#webpage\",\"url\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/\",\"name\":\"\\\"\\u0427\\u0442\\u043e \\u043d\\u043e\\u0432\\u043e\\u0433\\u043e \\u0432 Swift 2?\\\" \\u043d\\u0430 \\u043f\\u0440\\u0438\\u043c\\u0435\\u0440\\u0430\\u0445. \\u0427\\u0430\\u0441\\u0442\\u044c 2. | \\u041e\\u0431\\u0443\\u0447\\u0430\\u044e\\u0449\\u0438\\u0439 \\u043a\\u0443\\u0440\\u0441 \\u043f\\u043e \\u0440\\u0430\\u0437\\u0440\\u0430\\u0431\\u043e\\u0442\\u043a\\u0435 iOS+Swift \\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0439.\",\"description\":\"\\u041d\\u043e\\u0432\\u043e\\u0435 \\u0432 Swift 2: \\u0443\\u043b\\u0443\\u0447\\u0448\\u0435\\u043d\\u0438\\u0435 \\u0441\\u0430\\u043c\\u043e\\u0433\\u043e \\u044f\\u0437\\u044b\\u043a\\u0430, \\u0432\\u0437\\u0430\\u0438\\u043c\\u043e\\u0434\\u0435\\u0439\\u0441\\u0442\\u0432\\u0438\\u044f \\u0441 Objective-C \\u0438 \\u043f\\u043e\\u0432\\u044b\\u0448\\u0435\\u043d\\u0438\\u0438 \\u043f\\u0440\\u043e\\u0438\\u0437\\u0432\\u043e\\u0434\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\\u0441\\u0442\\u0438 \\u043a\\u043e\\u043c\\u043f\\u0438\\u043b\\u0438\\u0440\\u0443\\u0435\\u043c\\u044b\\u0445 \\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0439.\",\"inLanguage\":\"ru-RU\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/chto-novogo-v-swift-2-na-primerah-chast-2\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/author\\\/tatiana-lornilovagmail-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/author\\\/tatiana-lornilovagmail-com\\\/#author\"},\"datePublished\":\"2015-10-28T13:02:37+00:00\",\"dateModified\":\"2015-11-01T07:09:51+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/#website\",\"url\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/\",\"name\":\"\\u041e\\u0431\\u0443\\u0447\\u0430\\u044e\\u0449\\u0438\\u0439 \\u043a\\u0443\\u0440\\u0441 \\u043f\\u043e \\u0440\\u0430\\u0437\\u0440\\u0430\\u0431\\u043e\\u0442\\u043a\\u0435 iOS+Swift \\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0439.\",\"description\":\"\\u0420\\u0443\\u0441\\u0441\\u043a\\u0438\\u0439 \\u043d\\u0435\\u0430\\u0432\\u0442\\u043e\\u0440\\u0438\\u0437\\u043e\\u0432\\u0430\\u043d\\u043d\\u044b\\u0439 \\u043a\\u043e\\u043d\\u0441\\u043f\\u0435\\u043a\\u0442 \\u043b\\u0435\\u043a\\u0446\\u0438\\u0439 \\u0421\\u0442\\u044d\\u043d\\u0444\\u043e\\u0440\\u0434\\u0441\\u043a\\u043e\\u0433\\u043e \\u0443\\u043d\\u0438\\u0432\\u0435\\u0440\\u0441\\u0438\\u0442\\u0435\\u0442\\u0430 \\\" \\u0420\\u0430\\u0437\\u0440\\u0430\\u0431\\u043e\\u0442\\u043a\\u0430 iOS \\u043f\\u0440\\u0438\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0439\\\" 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 , 2023,  2024,  2025  \\u0438 2026 \\u0433\\u0433., \\u0441\\u043e\\u043f\\u0440\\u043e\\u0432\\u043e\\u0436\\u0434\\u0430\\u0435\\u043c\\u044b\\u0439 \\u0440\\u0435\\u0448\\u0435\\u043d\\u0438\\u044f\\u043c\\u0438 \\u0437\\u0430\\u0434\\u0430\\u043d\\u0438\\u0439 \\u0438 \\u0434\\u043e\\u043f\\u043e\\u043b\\u043d\\u0435\\u043d\\u0438\\u044f\\u043c\\u0438, \\u0441\\u0432\\u044f\\u0437\\u0430\\u043d\\u043d\\u044b\\u043c\\u0438 \\u0441 \\u0430\\u0434\\u0430\\u043f\\u0442\\u0430\\u0446\\u0438\\u0435\\u0439 \\u043a\\u0443\\u0440\\u0441\\u043e\\u0432 \\u043a \\u043d\\u043e\\u0432\\u044b\\u043c \\u0432\\u0435\\u0440\\u0441\\u0438\\u044f\\u043c Swift, Objective-C \\u0438 iOS.\",\"inLanguage\":\"ru-RU\",\"publisher\":{\"@id\":\"https:\\\/\\\/bestkora.com\\\/IosDeveloper\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\"\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?\" \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","description":"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","canonical_url":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/","robots":"max-snippet:-1, max-image-preview:large, max-video-preview:-1","keywords":"swift 2,error handling,do-try-catch,defer,guard,throws,throw,pattern matching,if case,for case,while case,\u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f,enum,complex if predicate,protocol extension,@available,@noobjc,c function pointer,__kindof,light generic","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#article","name":"\"\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?\" \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","headline":"&#171;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&#187; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2.","author":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/author\/tatiana-lornilovagmail-com\/#author"},"publisher":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/bestkora.com\/IosDeveloper\/wp-content\/uploads\/2015\/10\/Screen-Shot-2015-10-28-at-3.18.06-PM.png","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#articleImage","width":1754,"height":666},"datePublished":"2015-10-28T13:02:37+00:00","dateModified":"2015-11-01T07:09:51+00:00","inLanguage":"ru-RU","mainEntityOfPage":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#webpage"},"isPartOf":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#webpage"},"articleSection":"iOS 9, iOS 9, Swift"},{"@type":"BreadcrumbList","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper#listItem","position":1,"name":"Home","item":"https:\/\/bestkora.com\/IosDeveloper","nextItem":{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper\/category\/ios-9\/#listItem","name":"iOS 9"}},{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper\/category\/ios-9\/#listItem","position":2,"name":"iOS 9","item":"https:\/\/bestkora.com\/IosDeveloper\/category\/ios-9\/","nextItem":{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#listItem","name":"&#171;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&#187; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2."},"previousItem":{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#listItem","position":3,"name":"&#171;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&#187; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2.","previousItem":{"@type":"ListItem","@id":"https:\/\/bestkora.com\/IosDeveloper\/category\/ios-9\/#listItem","name":"iOS 9"}}]},{"@type":"Person","@id":"https:\/\/bestkora.com\/IosDeveloper\/#person","name":"tatiana.kornilova@gmail.com","image":{"@type":"ImageObject","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/33ccc19059014d8a7849c3621afa2b66a5f3e50ac7291c91c30ff35df5747628?s=96&d=mm&r=g","width":96,"height":96,"caption":"tatiana.kornilova@gmail.com"}},{"@type":"Person","@id":"https:\/\/bestkora.com\/IosDeveloper\/author\/tatiana-lornilovagmail-com\/#author","url":"https:\/\/bestkora.com\/IosDeveloper\/author\/tatiana-lornilovagmail-com\/","name":"tatiana.kornilova@gmail.com","image":{"@type":"ImageObject","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/33ccc19059014d8a7849c3621afa2b66a5f3e50ac7291c91c30ff35df5747628?s=96&d=mm&r=g","width":96,"height":96,"caption":"tatiana.kornilova@gmail.com"}},{"@type":"WebPage","@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#webpage","url":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/","name":"\"\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?\" \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","description":"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","inLanguage":"ru-RU","isPartOf":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/#website"},"breadcrumb":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/#breadcrumblist"},"author":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/author\/tatiana-lornilovagmail-com\/#author"},"creator":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/author\/tatiana-lornilovagmail-com\/#author"},"datePublished":"2015-10-28T13:02:37+00:00","dateModified":"2015-11-01T07:09:51+00:00"},{"@type":"WebSite","@id":"https:\/\/bestkora.com\/IosDeveloper\/#website","url":"https:\/\/bestkora.com\/IosDeveloper\/","name":"\u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","description":"\u0420\u0443\u0441\u0441\u043a\u0438\u0439 \u043d\u0435\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0441\u043f\u0435\u043a\u0442 \u043b\u0435\u043a\u0446\u0438\u0439 \u0421\u0442\u044d\u043d\u0444\u043e\u0440\u0434\u0441\u043a\u043e\u0433\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 \" \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439\" 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 , 2023,  2024,  2025  \u0438 2026 \u0433\u0433., \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u0435\u043c\u044b\u0439 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u0439 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043c\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c\u0438 \u0441 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0435\u0439 \u043a\u0443\u0440\u0441\u043e\u0432 \u043a \u043d\u043e\u0432\u044b\u043c \u0432\u0435\u0440\u0441\u0438\u044f\u043c Swift, Objective-C \u0438 iOS.","inLanguage":"ru-RU","publisher":{"@id":"https:\/\/bestkora.com\/IosDeveloper\/#person"}}]},"og:locale":"ru_RU","og:site_name":"\u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. | \u0420\u0443\u0441\u0441\u043a\u0438\u0439 \u043d\u0435\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0441\u043f\u0435\u043a\u0442 \u043b\u0435\u043a\u0446\u0438\u0439 \u0421\u0442\u044d\u043d\u0444\u043e\u0440\u0434\u0441\u043a\u043e\u0433\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0438\u0442\u0435\u0442\u0430 &quot; \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439&quot; 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 , 2023,  2024,  2025  \u0438 2026 \u0433\u0433., \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u0435\u043c\u044b\u0439 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u0439 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043c\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c\u0438 \u0441 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0435\u0439 \u043a\u0443\u0440\u0441\u043e\u0432 \u043a \u043d\u043e\u0432\u044b\u043c \u0432\u0435\u0440\u0441\u0438\u044f\u043c Swift, Objective-C \u0438 iOS.","og:type":"article","og:title":"&quot;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&quot; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","og:description":"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","og:url":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/","article:published_time":"2015-10-28T13:02:37+00:00","article:modified_time":"2015-11-01T07:09:51+00:00","twitter:card":"summary","twitter:title":"&quot;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&quot; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | \u041e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043a\u0443\u0440\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 iOS+Swift \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","twitter:description":"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2: \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439."},"aioseo_meta_data":{"post_id":"3277","title":"&quot;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&quot; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2. | #site_title","description":"\u041d\u043e\u0432\u043e\u0435 \u0432 Swift 2:  \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441  Objective-C \u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.","keywords":[{"label":"Swift 2","value":"Swift 2"},{"label":"error handling","value":"error handling"},{"label":"do-try-catch","value":"do-try-catch"},{"label":"defer","value":"defer"},{"label":"guard","value":"guard"},{"label":"throws","value":"throws"},{"label":"throw","value":"throw"},{"label":"pattern matching","value":"pattern matching"},{"label":"if case","value":"if case"},{"label":"for case","value":"for case"},{"label":"while case","value":"while case"},{"label":"\u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f","value":"\u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f"},{"label":"enum","value":"enum"},{"label":"Complex if predicate","value":"Complex if predicate"},{"label":"protocol extension","value":"protocol extension"},{"label":"@available","value":"@available"},{"label":"@noobjc","value":"@noobjc"},{"label":"C function pointer","value":"C function pointer"},{"label":"__kindof","value":"__kindof"},{"label":"Light generic","value":"Light generic"}],"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2020-12-21 06:32:09","updated":"2026-02-22 19:51:41","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/bestkora.com\/IosDeveloper\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/bestkora.com\/IosDeveloper\/category\/ios-9\/\" title=\"iOS 9\">iOS 9<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t\u00ab\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?\u00bb \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2.\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/bestkora.com\/IosDeveloper"},{"label":"iOS 9","link":"https:\/\/bestkora.com\/IosDeveloper\/category\/ios-9\/"},{"label":"&#171;\u0427\u0442\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u0432 Swift 2?&#187; \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u0427\u0430\u0441\u0442\u044c 2.","link":"https:\/\/bestkora.com\/IosDeveloper\/chto-novogo-v-swift-2-na-primerah-chast-2\/"}],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/posts\/3277","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/comments?post=3277"}],"version-history":[{"count":38,"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/posts\/3277\/revisions"}],"predecessor-version":[{"id":3279,"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/posts\/3277\/revisions\/3279"}],"wp:attachment":[{"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/media?parent=3277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/categories?post=3277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bestkora.com\/IosDeveloper\/wp-json\/wp\/v2\/tags?post=3277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}