Swift : Swift vs .objective-c نىڭ ئون ئالاھىدىلىكى
Posted 智学同伴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift : Swift vs .objective-c نىڭ ئون ئالاھىدىلىكى相关的知识,希望对你有一定的参考价值。
تەرجىمە قىلغۇچى : بىلىم 8 تورخاتىرسىنىڭ تەكلىپلىك خادىمى ئەكرەم
مەنبە:oschina
تەھىر : بىلىم 8
يەنە قايتىدىن ئومۇميۈزلۈك ھالدا swift تىلىنى ios بىلەن mac os xئۈچۈن قوللانما قىلىپ ئىچىش ۋاقتى يېتىپ كەلدى، گەرچە پىروگرامما تىلى ئۇنداق ئاسان يوقاپ كەتمىسىمۇ بىراق خارابىلىشىش دائېرسىدىكى ئىچىش كىچىك گۇرۇپپىسى مۇشۇنداق قىلىۋاتىدۇ، ئەگەر سىز كۆچمە ئۈسكۈنلەر ئۈچۈن رەسمىي ھالدا قوللانما پىروگرامما ئاچسىڭىز، ھەمدە سىز تېخى swift نى تەتقىق قىلمىغان بولسىڭىز ئۇنداقتا شۇنىڭغا دىققەت قىلىشىڭىز كېرەككى: swift،mac, iphone, ipad, applewatch ۋە كەلگۈسىدكى كۆچمە ئۈسكۈنىسىنىڭ قوللانمىسىنى ئاچقان ۋاقىتتا ئۇ objectivecنى قىستاپ چىقىرۋېتىپلا قالماستىن يەنە appleسۇپىسىدا گىرەلەشتۈرۈلگەن شەكىلدىكى cتىلىنىڭ ئورنىنى ئالىدۇ، نەچچە مۇھىم ئالاھدلىك سەۋەبتىن ، كەلگۈسى نەچچە يىلدا ، swift نىڭ يېڭىلىق يىرتىپ ئۇنىڭ مۇھىتىدىن ھالقىش يوشۇرۇن كۈچى بار، ئىنكاس تېزلىكى ئابۇنىتنىڭ قوللانما پىروگىراممىسىنىڭ ئەمەلى پىروگرامما تۈزۈش تىلىغا يۈزلىندۇ، ئالما شىركىتىنىڭ swftئۈستىدە يەنە تېخىمۇ نۇرغۇنلىغان چوڭ نىشانلىرى باردەك قىلىدۇ، ئۇنىڭ تەھرىرلىگۈچسىنىڭ ئالاھىدىلىكى ۋە تىل ئىچىش قاتارىقلارنىڭ ھەممىسىنى ئەلالاشتۇردۇ، ئالما شىركىتى swift نىڭ ھۆججەتلىرى يوشۇرۇن ئىشارەت ئاستىدا swift بولسا شىياۋشويوڭ، hello word,داشىيوڭ قاتارلىق پۈتكۈل مەشغۇلات سىستېمىسى قىلىپ لاھىللەنگەن، ئالما تېخى بۇ تۈرلۈك تىلنىڭ نىشانىننى تولۇق ئىيىتمىغان، xcode6, playgrounds ۋە swift نىڭ تونۇشتۇرشى بىلەن بىرلىكتە ئالمىنىڭ مەقسىتىنى ئاشكارىلىغان، يەنى؛تېخىمۇ ئاددىي ھالدا قوللانما ئىچىش، تېخىمۇ ئوڭاي قۇرال زەنجىرنى ئىچش،.
بۇ ھازىردىن باشلاپ swift خىزمىتىنى ئىشلتىۋاتقان ھەمدە مۇسابىقىنىڭ ئالدىنقى قاتارىدىكى 10 سەۋەب؛
swift نىڭ راۋان ئوقۇلىشى:
ئەگەر سەن ئالدىن مۆلچەرلىگەن بىر تۈر cقۇرۇلمىسىنىڭ تىلى ، objective-cبولسا @بەلگىسىنى ئىشلىتىپ يېڭى ھالقىلىق سۆزلەرنى باشلاپ كىرىدۇ، چۈنكى ؛ swift بولساcنىڭ ئاساسىدا قۇرۇلغان ئەمەس، ئۇ بارلىق ھالقىلىق سۆزلەرگە قۇشۇلدۇ، ھەمدە objective -c تۈرى بىلەن ئوبىيكىتىنىڭ ھالقىلىق سۆزلەر ئالدىدىكى كۆپ مىقدارلىق @بەلگىسىنى يۆتكەپ چىقىرۋېتىدۇ،
swift قىپ قالغان بەلگىلمىلەرنى چۆرۈپ تاشلايدۇ، شۇ ئارقىلىق سىز قۇر ئاخىرىدىكى بۆلۈش بەلگىسىگە ئېھتىياجلىق بولمايسىز، شۇنداقلا if/eleseجۈملىسىدە شەرتلىك ئىپادىلەش شەكلى ياينى ئىشلىتىشىڭىزنىڭ ھاجىتى يوق، ئۇنىڭدىن باشقا يەنە بىر چوڭ ئۆزگىرىش ئۇسسۇلى بولسا گىرەلەشمەيدىغان يۈرۈشلۈك تىرناقلارنىڭ چوڭقۇرلۇقىنى تەڭشەپ ئىشىلتىشنىڭ ھاجىتى يوق، —««»(())[[[]]]خەير خوش، swift دىكى ئۇسسۇل ۋە فۇنكىسىيەنىڭ تەڭشەپ ئىشىلتىلىش ساھەسىدىكى ئۆلچەملىك ھالدا ؛ بىر دىيالوگ يايى قوللىنىلىدىغان پەش ئايرىش سىزىقىنىڭ پارامېتىر رامىكىسىنى تەڭشەپ قوللىنىدۇ، بۇنداق نەتىجە بولسا بىر خىل ئاددىيلاشتۇرۇلغان جۈملە شەكلى ۋە گىرامماتكىسىنىڭ تېخىمۇ پاكىز رەتلىك ئىپادىلەيدىغان تىلى،.
باشقا نۆۋەتتىكى مودا بولۋاتقان پىروگرامما لايىھەلەش تىلىدىن باشقا يەنە swift تەبىئىي ئىنگىلىس تىلىغا تېخىمۇ ئوخشاپ قالىدۇ، بۇنداق ئوقۇلۇشچانلىق ئۇنى ناھايىتى ئاسانلا باشقا javascript, java, python, c# شۇنداقلا c++لارنىڭ ئاچقۇچىللىرى ئۇنى ئۇلارنىڭ قۇرال زەنجىرگە كىرگۈزگەن، ئۇ objective-cبۇ خىلدىكى دۆت سېرىق ئۆدەككە ئازراقمۇ ئوخشىمايدۇ،
swift نىڭ تېخىمۇ قۇلاي ئاسراشچانلىقى،
تارىختىن قىپ قالغان مەسىلە objective-c بارغانسېرى –cنى نومۇر ئوۇرنلىيالمايدىغان قىلىپ قويدى، يەنى بۇ تىلمۇ شۇنىڭغا ئەگىشىپ تەرەققىي قىلىشقا ئامالسىز قالدى،Cبولسا پىروگىراممىرلارنىڭ ئىككى يۈرۈش كود ھۆججىتىنى ئاسراش ، شۇنداقلا قۇرۇلما ۋاقتىنى ئەلالاشتۇرۇش ۋە ئىجرا قىلغىلى بولىدىغان APPئۈنۈمىنى قۇرۇشىغا ئھتىياجلىق، بۇ خىلدىكى ئھتىياج OBJECTIVE-C غىچە داۋاملاشقان، SWIFئىككىيلەننىڭ ھۆججەت تەلبىنى يىتتۈرۈپ قويدى، . swift 1.2دا XCODE ۋە LLVMتەھرىرلىگۈچ كۆپەيتىلگەن قۇرۇلما مىقدارىنى ئاپتوماتىك ھالدا ھېسابلاپ چىقىدۇ ۋە يۈرگۈزدۇ، مۇشۇنىڭغا ئوخشاش؛ مەزمۇن تەپسىلىي تالونى ئوخشاش مەزمۇننى ئاساس گەۋدە قىلىپ ئۆز ئارا ئايرىلدۇ، swift بولسا OBJECTIVE-Cباش ھۆججىتىنى ۋە ئىشقا ئاشۇرۇش ھۆججىتىنى بىرىكتۈرۈپ بىر كوەلۇق ھۆججەت،swift بولۇپ چىقىدۇ، OBJECTIVE-C نىڭ ئىككى پارچە ھۆججەت سىستېمىسى پىروگىراممىرلارنىڭ سىرتقى خىزمىتىگە زورلاپ قوشۇپ بىرلدۇ، ھەمدە بۇ خىزمەتلەر پىروگراممىلارنى كۆڭلىنى بۆلىۋىتىپ ھەممىگە دائېرىگە كۆڭۈل بۈلەلمەسلىكتىن ساقلايدۇ، objective-c دا بولسا سىز ئۆزىڭىز قول سىلكىپ ئوخشاش قەدەمدىكى ھۆججەت ئوتتۇرسىدىكى ئۇسسۇلنىڭ ئىسمى ۋە ئىزاھاتىنى ئىلىپ بارمىسىڭىز بولمايدۇ، بەزى ۋاقىتتا بىر كىلىشپ بولغان ئۆلچەمگە ئۈمىد باغلايمىز، بىراق كوللېكتىپنىڭ قائىدىسى ۋە كود تەكشۈرۈش تۈزۈلمىسىنىڭ تولۇق ئىجرا قىلنىشىدىن سىرت شۇنداق قىلىمىز، ئۇنداق بولمىغاندا؛ بۇ سىز ئۈچۈن ھېچقانداق كاپالەت بىلەن تەمىنلەپ بېرەلمەيدۇ،
Xcode بىلەن llvmتەھرىرلىگۈچسى پەردە ئارقىسىدا بەزى خىزمەتلەرنى قىلىش ئارقىلىق پىروگىراممىرلارنىڭ خىزمەت يۈكىنى يېنىكلىتىدۇ، swift نى ئىشلىتىدىغان پىروگراممېر مىڭدە ئەستە ساقلايدىغان خىزمەتلەرنى ئازراق قىلسا بولدى، شۇ ئارقىلىق appنىڭ لوگىكىسىنى قۇرۇش خىزمىتىگە تېخىمۇ كۆپ بولغان ۋاقىتلارنى ئۇتقىلى بولدى، swift بىزنىڭ پىروگىراممىللىرمىز ئۈچۈن ئۇ خىل نۇسىخىدىكى خىزمەتلەرنى قىسقارتىۋەتتى، شۇنىڭ بىلەن بىرگە كودغا ، ئىزاھاتقا، شۇنداقلا لازىملىق بولغان ئالاھىدە سۈپەتنىڭ يۇقىرى كۆتۈرۈلشىگە نىسبەتەن ئۇلارنىڭ ھەممىسىنى قوللايدۇ،
swiftتېخىمۇ بىخەتەر.
Objective -cنىڭ قىزىقارلىق بولغان بىر تەرىپى شۇكى ئۇنىڭ ئىسترېلكىسى ؛ بولۇپمۇ nilسىتىرىلكىسى، — ئۇلار بولسا بىر تەرەپ قىلىنىش ئۇسسۇلىدا يۈرگۈزۈلدۇ، objective – c دا بولسا ؛ ئەگەر سىز يۆتكەپ ئىشلەتكەن ئۇسسۇلدىكى بىر قىممەت nilنىڭ ئىسترېلكا ئۆزگەرگۈچ مىقدارى، ھېچقانداق ئىش يۈز بەرمەيدۇ . ئىپادىلەش ئۇسسۇلى ۋە بىر قۇردىكى مەشغۇلات تۈر بوشلۇقى مەشغۇلاتى (no- operation)(no -op)، بەلكى مۇشۇلار قارماققا نۇقسانسىز بولغان ياخشى تەرەپلەرگە ئىگە قىلىدۇ، بىراق ئەمەلىيەتتە ئۇ ئاللى بۇرۇنلا بىر زور بولغان bugنىڭ كېلىش مەنبەسىگە ئايلانغان، no-opبولسا ئالدىن مۆلچەرلىگۈسىز ھەرىكەتلەرنى كەلتۈرۈپ چىقىرىدۇ، بۇ بولسا پىروگىراممىرلارنىڭ مەلۇم بىر خىلدىكى ۋەيران قىلۋىتىشنى ئوڭشايدۇ ياكى تېپىپ چىقىدۇ، ياكى يۈزلىندىغان دۈشمەنلىرنىڭ نۇمالسىز ھەرىكىتىنى توختىتىدۇ، swift كودىدا تۈرنى تاللاشقا بولىدىغان بولۇپ بىر nilتاللاش مۇمكىنچانلىقىنى ئىنتايىن ئېنىق قىلىپ ئۆزگەرتىدۇ، بۇ شۇنىڭدىن دېرەك بىردۇكى سىز كىيىنكى بۆلەك ناچار بولغان كودنى يازغان ۋاقىتتا بىر تەھرىرلىگۈچنىڭ خاتالىقىنى ھاسىل قىلىدۇ، بۇ بىر خىل قسىقا جەريانلىق ئىنكاسنىڭ ئايلىنىشىنى قۇرىدۇ، پىروگىراممىرلارنى نىشانلىق كود يازىدىغان قىلىدۇ، مەسىلە شۇ يەردىكى كود يىزىلۋاتقان ۋاقىتتا ئەسلىگە كەلتۈرۈلسە بولىدۇ، بۇ بۆلەك سىزنىڭ objective-cئىستىرىلكىسنىڭ لوگىكىسى bugنى ئەسلىگە كەلتۈرۈشكە سەرپ قىلغان ۋاقىتىڭىز ۋە پۇللىرىڭىزنى تېجەپ بىردۇ،
Objective -cنىڭ ئەنئەنسىدە ؛ ئەگەر مەلۇم بىر قىممەت ئۆزى بىر ئۇسسۇلنى قايتۇرسا شۇنى چۈشەندۈردۇكى ئىسترېلكا ئۆزگەرگۈچ مىقدار قايتۇرۇلغان ھەرىكەت بولسا پىروگىراممىرىلارنىڭ مەسئۇلىيىتى، swift دا تاللاشقا بولىدىغان تۈر ۋە قىممەت تۈرى ئۇسسۇل ئىنىقلىمسىدا مەۋجۇتمۇ ياكى مەۋجۇت ئەمەسمۇ ياكى ئۇنىڭ تاللاشقا بولىدىغان مۇمكىنچىلقى بار بولغان ، بۇ مەسىلىلەرنىڭ ھەممىسى ناھايىتى ئېنىق . ھەرىكەتنىڭ ئالدىن تەكشۈرۈشىگە تەمىنلەش ئۈچۈن ، swft، nilتاللاشقا بولىدىغان قىممەت ئىشىلتىلۋاتقان ۋاقىتتا بىر قېتىملىق يۈرگۈزۈلۋاتقان ۋاقىتتىكى ۋەيران بولۇش يۈز بىردۇ،
ۋەيران بولۇش تەمىنلەيدىغىنى بولسا بىر خىل بىردەك بولغان ھەرىكەت ، ئۇ bugنىڭ ئەسلىگە كەلتۈرۈشكە بېسىمىنى كىمەيتىدۇ، چۈنكى ئۇ بىۋاسىتە مەجبۇرى چەكلەپ پىروگىراممىرلارنىڭ بۇ مەسىلىنى ئەسلىگە كەلتۈرۈشگە شارائىت ھازىرلاپ بىردۇ، swift يۈرگۈزۈلۋاتقان ۋاقىتتا ۋەيران بولغان ۋاقىتتا nilتاللاشقا بولىدىغان قىممەت شۇ قۇردىكى كودنىڭ ئورنىغا ئىشىلتىلدۇ، بۇ شۇنىڭىدىن دېرەك بىردۇكى bugتېخىمۇ بۇرۇن ئەسلىگە قايتۇرۇلدۇ، ھەمدە swift كودىدا پۈتۈنلەي چەكلىۋتىلدۇ،
swift نىڭ ئىچكى ساقلاشنى باشقۇرشى بىردەكلەشتۈرۈلگەن.
swift بىر خىل objective-cنى بولۇپ باقمىغان بىر ئۇسسۇل بىلەن بىردەك يۈرگۈزدۇ، ئاپتوماتىك باشلاش سان ھساپلاشنىڭ قوللىشى بولسا پۈتۈنلەي جەريانلاشقان ۋە ئوبىيكىتغا يۈزلەنگەن كود يولى ئۈستىدە تاماملىندۇ، objective-c دا arc داcocoapi ۋە ئوبىيكىت كودىدا ئېرىشكەن قوللاشقا يۈزلىندۇ، ئەممما جەريانلاشتۇرۇلغان cتىلى كودى ۋە coregraphics apiشۇنداقلا باشقا iosنىڭ ئۈستىدىكى تۆۋەن قەۋەت apiۋاقتىدا ، ئىچكى ساقلىغۇچنى كونترول قىلىشنى بىر تەرەپ قىلىشنڭ ھەممىسى پىروگىراممىرلارنىڭ مەسئۇلىيىتى، پىروگىراممىرلار objective -cدا يولۇققان زور مىقداردىكى ئىچكى ساقلاشنىڭ تېشىپ چىقىش مەسىلىسى swift ئۈستىدە مۇمكىنمۇ ياكى ئەمەسمۇ؟ پىروگىراممىرلار ئۇنىڭ ئۈچۈن ياكى ئۇنىڭ قۇرغان رەقەم ئوبىيكىت ئارقىلىق ئىچكى ساقلاش مەسىلىسىنى ئويلانماسلىق كېرەك، چۈنكى؛ arcتەھرىرلىنىۋاتقان ۋاقىتتا بارلىق ئىچكى ساقلاىشنى باشقۇرۇش ئىشلىرىنى بىر تەرەپ قىلىپ بولىدۇ،
ئىچكى ساقلاشقا كەتكەن بارلىق ئەقلى كۈچ ھازىر يادرولۇق قوللانما لوگىكىسى شۇنداقلا يېڭى ئىقتىدارلارنىڭ ئالاھىدلىكىلىرگە قارتىلدۇ، چۈنكى swift دىكى arcجەريان شەكىلدىكى ۋە ئوبىيكتغا يۈزلەنگەن كوددا ھەممىسىدە رول ئوينايدۇ، ئۇمۇ پىروگىراممىرلارنىڭ كۆڭلىدە ئاستىن ئۈستۈن قىلىپ ئالماشتۇرۇش ئىلىپ بىرشىغا موھتاج ئەمەس، يەنى ئۇلار تۇنجى ئاساس ياكى تۆۋەن قاتلامدىكى apiنىڭ كودىنى يازغان ۋاقىتتا بۇنىڭغا موھتاج ئەمەس، نۆۋەتتىى نۇسىخىدىكى objective-c دا بۇ بىر ناھايىتى ئەمەلى مەسىلە .
ئاپتوماتىك ۋە يۇقىرى ئىقتىدار بىلەن ئىچكى ساقلاشنى باشقۇرۇش بولسا بىر ئاللى بۇرۇن ھەل قىلىنىپ بولغان مەسىلە. يەنى ئالما شىركىتى بۇ مەسلىنىڭ ھەل قىلىپ يۇقىرى ئىشىلەپ چىقىرىشقا بولىدىغانلىقىنى ئسىپاتلىغان. يەنە بىر قوشۇمچە رۇمى بولسا objective-c ۋە swift بولسا javaغا ئوخشىمايدۇ، goياكى c++غا ئوخشاش ئۇنداق ئەخلەت يىغقۇچىلارغا ئۇچۇرغاندا ئىشلىتىلمىگەن ئىچكى ساقلىغۇچنى يۈرگۈزۈپ تاپشۇرۇقنىڭ تازلىنىش ئەھۋالىنى تەكشۈردۇ، ئۇ مۇناسىپ بولغان گىرافىك ۋ ە ئابۇنىتلارنىڭ كىرگۈزگەن پىروگرامما تۈزۈش تىلىغا نىسبەتەن ئېيتقاندا بىر ئىنتايىن مۇھىم بولغان بىر ئامىل، بولۇپمۇ iphone, apple watch شۇنداقلا ipadمۇشۇنىڭغا ئوخشاش چېكىپ باشقۇرىدىغان ئۈسكۈنلەرگە نىسبەتەن.
swift نىڭ كودى تېخىمۇ ئاز.
swift بولسا قايىتلانغان جۈمىللەر ۋە ھەرپ بەلگىلەر تىزمىسىدىكى كېرەكلىك بولغان كودلارنى ئازايتىدۇ، objectiveدا بولسا ئۇنداق ئەمەس، ئۇنىڭدا خەت ھەرپ بەلگىسى تىزىمىسنى ئىككى پارچە ئۇچۇر بىلەن بىرىكتۈرۈش مەشغۇلاتى ناھايىتى مۇرەككەپ بولدى، swift بولسا نۆۋەتتكى دەۋردىكى پىروگرامما تۈزۈش تىلىنىڭ ئالاھىدىلىكىنى قوللانغان، مەسىلەن ؛ ئىشلىتىش+ مەشغۇلات بەلگىسى بۇ ئىككى بەلگە تىزىمىسنى بىرگە قوشساق بولىدۇ، بۇ objective-cدا يوق، مۇشۇنىڭغا ئوخشاش ھەرپ بەلگە ۋە خەت تىزىمىسىنىڭ بىرىكمىسى ھەر قانداق بىر ئېكراندىكى ئابۇنىتغا خەتنىڭ پىروگرامما تۈزۈش تىلنىڭ ئاساسى ئەسلىھەلىرنى كۆرسىتىپ بىردۇ،
swift دىكى تۈر سىستېمىسى كود جۈمىللىرنىڭ مۇرەككەپلىكىنى كىمەيتىدۇ، — تەھىرىرلىگۈچنىڭ چۈشىنىشكە بولىدىغان تۈر بولۇپ—- مەسىلەن؛ objective-cپىروگىراممىرلارنى ئالاھىدە ھەرپ بەلگىلەرنى ئەستە تۇتۇشنى تەلەپ قىلىدۇ،
ھەمدە بىر دانە پەش ئايرىغان ئۆزگەرگۈچىى مىقدار ئارقىلىق بۇ خىلدىكى بەلگىنىڭ ئورنىنى ئالىدۇ،
swift ھەرپ بەلگە تىزىمىسنى قوللايدۇ، بۇ ئەستە تۇتۇش زۆرۈر بولغان بەلگە ۋە پىروگىراممىرلارنىڭ بىۋاسىتە ئۆزگەرگۈچى مىقدارلارنى قىستۇرۇشقا رۇخسەت قىلىپ ئابۇنىتنىڭ ھەرپ بەلگە تىزىمىسىغا يۈزلىندۇ، مەسىلەن ئىتىكىتكا ياكى كۇنۇپكا تېمىسى قاتارلىقلار، بۇ تۈر تونۇشتۇرۇش سىستېمىسى ۋە ھەرپ بەلگە تىزىمىسى قىستۇرشى خاتالىق كېلىش مەنبەسىنى ئازايتىش objective-cدا ھەممىسى ناھايىتى كۆپ ئۇچرايدۇ،
Objective-cدا تەرتىپىنى قالايمىقان قىلىش ياكى خاتالىق بەلگە تىزىمىسى بەلگىلىرى apiنىڭ ۋەيران بولۇشىنى كەلتۈرۈپ چىقىرىدۇ، بۇ يەردە swift يەنە بىر قېتىم سىزنى قۇلۇپلانغان خىزمەتتىن قۇتۇلدۇرۇپ تېخىمۇ ئاز بولغان كودنى تۈزۈپ تەرجىمە قىلىدۇ، چۈنكى ئۇنىڭ خەت ھەرپ بەلگىسى تىزىمىسى ۋە سانلىق مەلۇمات ئىچكى گىرەلىششىنىڭ قوللىشىنى بىر تەرەپ قىلىدۇ.
swift تېخىمۇ تىز.
يۇييۇۋىتىشتىن قىپ قالغان cتىلى ۋەدىسى زور دەرىجىدە موتور قاپقىقى ئاستىدىكى swift نىڭ ئىقتىدارنى يۇقىرى كۆتۈردى، swift كودى ئىقتىدارىنىڭ ئاساسى سىنىقى تېخىچە ئالما شىركىتى كۈچ چىقارغان swift يۈرگۈزگەن appلوگىكىلىق يۇقىرى سۈرەتتە يۇقىرى كۆتۈرۈلشىگە كۆز تىكىپ كەلگەن.
زېرەك چوڭ ھايۋانلار تەجىربىخانسى نۆۋەتتە مودا بولغان geekbenchئىقتىدار قۇرالىنىڭ كەشىپ قىلغۇچسىنىڭ تەكشۈرشىگە ئاساسلانغاندا 2014-يىلى 12-ئايدا مەندېلبىروت ھېسابلاش ئۇسسۇلىنى ئىشلىتىپ ئۇنى زىچ بولغان تىپتىكى ۋەزىپىنى ھېسابلاش ئىقتىدرىغا ئىشلەتكەن، swift ئاللى بۇرۇن c++نىڭ ئىپادىسىگە يىقىنلاپ كەلدى،
2015-يىلى 2-ئايدا زېرەك چوڭ ھايۋانلار تەجىربەخانسى xcode6.3 سىناق نۇسخىسىنىڭ swift نىڭ gemmدىكى ھېسابلاش ئىقتىدارىنى يۇقىرى كۆتۈرگەنلىكىنى بايقىغان. بۇ بولسا بىر خىل ئىچكى ساقلاشنى چەكلەپ ھېسابلاش ئۇسسۇلى، چوڭ تىپتىكى سانلىق مەلۇمات گۇرۇپپىسىغا تەرتىپ بويىچە زىيارەت قىلىش ئىلىپ باردۇ، –1.4ھەسسىچلىك بار، ئەڭ دەسلەپتىكى ftp ئىشقا ئاشۇرغان، بۇ بولسا بىر خىل چوڭ تىپتىكى سانلىق مەلۇمات گۇرۇپپىسىغا خالىغان ھالدا زىيارەت قىلغان چەكلىمگە ئۇچۇرغان ئىچكى ساقلاش ھېسابلاش ئۇسسۇلى، — 2.6ھەسسىلىك يۇقىرى كۆتۈرۈلۈشگە ئىگە.
قوللانمىنىڭ ئەڭ ياخشى ئەمەلىيىتى ئارقىلىق ، تېخىمۇ يېقىن يەنە بىر قەدەملىك ئىقتىدارنىڭ يۇقىرى كۆتۈرۈلشىنى كۈزەتكىلى بولدى، نەتىجىدە بولسا fftھېسابلاش ئۇسسۇلىدا 8.5ھەسسىلىك ئىقتىدار كېلىپ چىقىدۇ، بۇلار ئۆزگەرتىلىپ swift نىڭ لودېربىروت ھېسابلاش ئۇسسۇلىدا ئەمەلىيەتتە c++1.03ھەسسىدىن ئېشىپ كەتكەن.
swift ، ftpبىلەن مەدېربىروت ھېسابلاش ئۇسسۇلىدا ئاساسى جەھەتتىن c++بىلەن تەڭ كەپ قالىدۇ، primate labsنىڭ تەتقىقاتىغا ئاساسلانغاندا ، gemm ھېسابلاش ئۇسسۇلىنىڭ ئىقتىدار ئىپادىسى چۈشەندۈرشىدىكى swift تەھرىرلىگۈچ تېخى c++تەھرىرلىگۈچىسى قوللىغان گىرافىك كودىنى ئىشقا ئاشۇرالمايدۇ، شۇڭلاشقا swift نىڭ كىيىنكى نۇسخىسى بەلكىم نىسبەتەن ئوڭايلا بىر قېتىملىق ئىقتىدار يۇقىرى كۆتۈرۈلۈشگە ئېرىشەلەيدۇ.
ئىچىش تۈرلىرىدە تېخىمۇ ئاز بولغان ئىسىم زىت بولۇپ قىلىش ئالاھىدلىك بولدى.
Objective-cكودىدا ئۇدا ئادەمنى قىينايدىغان مەسىلىلەر بولماقتا ، يەنى ۋەزىپە ئىسمى بوشلۇقىنىڭ رەسمىي قوللىشىنىڭ كەملىكى، ئۇ c++ھۆججەت ئىسمىنى بىر تەرەپ قىلىش لايىھەسىنى ھەل قىلىدۇ، ،objective-cدا ئىسىم زىت بولۇپ قىلىش ھادىسىسى يۈز بەرگەندە ، بىر ئۇلغۇچنىڭ خاتالىقى كېلىپ چىقىدۇ، شۇنىڭ بىلەن appنى يۈرگۈزۈشكە ئامالسىز قىلىشنى كەلتۈرۈپ چىقىرىدۇ، بىراق ئۇنىڭمۇ ھەل قىلىش چارىسى بار، بىراق ئۇلارنىڭ ھەممىسىدە يوشۇرۇن كېسەللىك يوشۇرۇنغان،. ئادەتتىكى ۋەدە بولسا ئىككىدىن ئۈچكىچە بولغان ھەرپنىڭ ئالدى قۇشۇلغۇچسى ئارقىلىق ئايىرىلىپ يېزىلغان objective-c كودىنى يازدۇ، مەسىلەن ؛ facebookئارقىلىق سىز ئۆزىڭىزنىڭ كودىنى نامايان قىلالايسىز.
swift بولسا يوشۇرۇن ئىسىملىك بوشلۇق بىلەن تەمىنلەيدۇ، ئوخشاش بولغان كود ھۆججىتىدە كۆپلىگەن تۈرلەر مەۋجۇت بولۇشىغا رۇخسەت قىلىدۇ، بەلكى قۇرۇلمىنىڭ مەغلۇبىتىنى كەلتۈرۈپ چىقىرىدۇ، ياكى nsstring steve jobbsنىڭ appleتەرىپىدىن ئىشتىن ھەيدەلگەندىن كېيىنكى قۇرغان شىركىتى ياكى cgpoint قاتارلىق مۇشۇنىڭغا ئوخشاش ئىسملارغا ئھتىياجلىق، ئەڭ ئاخىردا ، swift دا بۇ ئالاھىدلىك ئاچقۇچىلارنى تېخىمۇ زور ئىشلەپچىقىرىش كۈچىگە ئىگە قىلىدۇ، ھەمدە بۇ شۇنىڭدىن دېرەك بىردۇكى ئۇلارنىڭ يەنە objective -cئېھتىياجلىق بولغان ئۇنتۇلغان شەكلدىكى ئەستە ساقلاش خىزمىتىنى قىلىش ھاجەتسىز، ئاددىي array , nsdictionary دا شۇنداقلا string غا ئوخشاش بۇنداق ئىسمدا سىز swift نىڭ تەسىر قىلىش كۈچىنى كۆرەلەيسىز، بەلكى كەم بولغان ئىسىم بوشلۇقىدىكى objective-c دىكى nsarray, nsdictionarry شۇنداقلا nssringلار قىلىپتىن چىقمايدۇ،
swift نىڭ ئىسىم بوشلۇقى بولسا بىر كود ھۆججىتى تەۋە بولغان نىشان ئورنى ئاساسىدا بولدى،
بۇ شۇنىڭدىن دېرەك بىردۇكى ئىسىم بوشلۇقى بەلگىسى ئارقىلىق ئوخشىمايدىغان تۈر ۋە قىممەتنى ئايرىشقا بولدى، swift بۇ ئۆزگىرىش ناھايىتى چوڭ بولدى، ئۇ زور دەرىجىدە ئاچقۇچىلار تۈرلىرىنى قۇلايلىقلاشتۇردۇ، رامكا شۇنداقلا ئامبارلار سىزنىڭ كوددىكى مەشغۇلاتىڭىزنى بىرىكتۈردۇ. ئىسىم بوشلۇقى بىرىكتۈرۈلگەن مەنبە ئىچىش تۈردىكى ۋاقىتتا ؛ سىزنىڭ ئوخشىمايدىغان يۇمشاق دېتال شىركەتلەرنىڭ ئوخشاش ئىسىم كودى ھۆججىتىدىن كەلگەن زىتلىشىپ قىلىشتىن ئەنسىرشىڭىزنىڭ ھاجىتى يوق. ھازىر face bookۋە ئالما شىركىتى بىرلار ۋاقىتتا بىر flying car,swift دەپ ئاتىلدىغان ئوبىيكىت كود ھۆججىتىنى ئىشلەتسىڭىز بولدى، ھېچقانداق خاتالىق ياكى مەغلۇپ بولۇش كېلىپ چىقمايدۇ.
swift ھالەت ئامبىرنى قوللايدۇ.
swiftدا يېتەرلىك ئىىتبارغا ئېرشەلمىگەن بىر ئەڭ چوڭ مەسىلە شۇكى تىنچ ھالەت ئامبىرىنى ھالەت ئامبىرغا ئالماشتۇرۇش. ئۇ ئاساسلىق ئېلان قىلىنغان نۇسخىدىكى (iso8,iso7قاتارلىق)لار يېڭلىنىش ئىلىپ باردۇ. ھالەت ئامبىرى بولسا appنىڭ ئىجرا قىلىنىش كود بۆلكىگە ئۇلانغان بولدى. بۇ ئالاھىدلىك ھازىر بار بولغان swift قوللانمىسى ۋاقىتقا ئەگىشىپ سۈرۈلۈشتىنن كېلىپ چىققان يېڭلىنىش نۇسخىسدىكى swift تىلىغا ئۇلايدۇ.
ئاچقۇچلار appنى ئوخشاش ئامباردىكى ھۆججەت بىلەن بىرگە قوشۇلۇپ تاپشۇرۇلدۇ، ئۇلارنىڭ ھەممىسى ئاچقۇچى گۇۋاھنامىسىغا رەقەملىك ئىمزا قويۇشنى قوللىندۇ. مۇكەممەللىككە كاپالەتلىك قىلىش ئۈچۈن . بۇ شۇنىڭدىن دېرەك بىردۇكى swift بولسا isoغا قارىغاندا تېخىمۇ تىز تەرەققىي قىلىدۇ، بىر خىل زامانىۋې پىروگرامما تۈزۈش تىلىغا نىسبەتەن ئېيتقاندا بۇ بىر زۆرۈرىيەت. ئامبار ھۆججىتىگە بولغان ئۆزگەرتىشكە قارتا پۈتۈنلەي appstoreدىكى مەلۇم بىر appنىڭ ئەڭ يېڭى يېڭلىنىش ئۈستىگە ئىلىپ كىرىلدۇ. بىرلىكتە يۈرگۈزۈش شۇنچە ئاسان، ھالەت ئامبىرى isoدا قوللاشقا ئېرشىشى ناتايىن. swift بىلەن ios8 ئېلان قىلىنىپ بولغىچە، قانداقلار بولمىسۇن ئاللى بۇرۇن macدا قوللاشقا ئېرشىپ بولغىنىغا خىلى ئۇزۇن بولدى. ھالەت ئامبىرى قوللانما يۈرگۈزۈشكە بولىدىغان ھۆججەتنىڭ سىرتىدا تۇرىدۇ. بىراق ئۇ apple storeدا چۈشۈرۈلگەن قوللانما بوغچىللىردىكىنىمۇ ئۆز ئىچىگە ئالىدۇ. ئۇ appئىچكى ساقلىغۇچقا چۈشۈرۈلگەندىكى دەسلەپكى چوڭ -كىچىكلىك پەرقىنى ئازايتىدۇ. چۈنكى سىرتقى قىسمدىكى كود پەقەت ئىشلتىلگەن ۋاقىتتا ئاندىن ئۇلىندۇ.
كۆچمە قوللانما پىروگرامما ياكى apple watchدىكى گىرەلەشتۈرۈلگەن شەكىلدىكى قوللانمىلار ئىگە بولغان كېچىكتۈرۈپ چۈشۈرۈش ئىقتىدارى قوللانمىنىڭ ئابۇنىتلارغا بولغان سىزمى ۋە ئىقتىدارىنى يۇقىرى كۆتۈردۇ. بۇ iosئىكلوگىيە سىستىمسىنى تېخىمۇ سەزگۈر ئەزالارنى ئىنكاسچانلىققا ئىگە قىلىدىغان پەرىقلەرنىڭ بىرى. ئالما شىركىتى ئەسلىدە پەقەت يۈرگۈزۈلۋاتقان ۋاقىتتا ماتېرىيال چۈشۈرۈش ۋە مەنبە چۈشۈرۈشكە دىققىتىنى بەرگەن. ھازىر كودنىڭ تۈزۈلشى ۋە ئۇلىنىشىمۇ يۈرگۈزۈلۋاتقان ۋاقىتتا ئىلىپ بېرىلىدۇ، يۈرگۈزۈلۋاتقان ۋاقىتتا كېمەيتىلگەن ساقلاش ۋاقىت ئارىلىقىنى چۈشۈردۇ، تاكى ماتېرىيال مەنبەسى ئېكراندا نامايان بولغىچە قوللىنىلدۇ، ئاندىن تەييارلىنىپ كىرگۈزۈلدۇ.
swift دىكى ھالەت ئامبىرى پىروگرامما تىلىنىڭ ئۆزگەرتىلشى ئىلگىرىكىگە قارىغاندا تېخىمۇ تىز تارقىلىشچانلىققا ئىگە بولۇش مۇمكىنچانلىققا ئىگە. ئابۇنىتلار يەنە بۇرۇنقىدەك كۆرسىتىلگەن isoنۇسخىسىنىڭ ئېلان قىلنىشنى ساقلاشنىڭ ھاجىتى يوق، بۇنداق بولغاندا ئاندىن apple نى swift دىكى ئىقتىدارى ۋە ئىشەنچلىك بولۇشىغا تەرەققىيات ئېلىپ كېلىدۇ.
swift playgrounds ئىلھام ئۆز -ئارا گىرەلەشكەن شەكىلدىكى كود تۈزۈش.
خەت چەكلىمىسى سەۋەبلىك بىر بۆلەك يىزىقچە مەزمۇن قىسقارتىلدى ، رەسىملىك ھالىتى تولۇق ..رەسىمدىن كۆرۇڭ
ئاچقۇچىلار ئۇلارنىڭ swift نى ئاز يازدىغانلىقىنى بايقىيالايدۇ، ھەمدە ھازىرقى زامان پىروگرامما تۈزۈش تىلى ئالاھىدلىكى ئۇلارنىڭ قۇرمۇ-قۇر بولغان كودلار ھەممىسى تېخىمۇ كۆپ بولغان ئوقۇلۇشچانلىقنى ساقلايدۇ، ئۇنىڭ توختىماي تەرەققىي قىلىشىغا ئەگىشىپ ، swift پۈتۈن ئالما شىركىتىنىڭ ئىكلوگىيە سىستېمىسىنىڭ پىروگرامما تۈزۈشتىكى ئىلغارلىقىنى ساقلاپ كەلگەن.
بۇلارنىڭ ھەممىسىدە ios ۋە swiftدىكى ھالەتكە بولغان قوللاشقا رەھمەت ئېيتىمىز،
ئىچىش تۈرلىرى ، ئۈچىنچى تەرەپ sdkشۇنداقلا رامكا تېخىمۇ ئوڭايلا ئائىلە جابدۇقلىرى ئاپتوماتلاشتۇرۇلغان ئۈسكۈنىلىرى شۇنداقلا جەميەت ئالاقە مۇلازىمىتىگە بىرلەشتۈرگەن. تەھرىرلەش ۋاقىتىنىڭ يۇقىرى كۆتۈرۈلشى يۈز بەرمەيدۇ، swift بەزى ھېسابلاش ئۇسسۇلىنىڭ سۈرىئىتىدە ئاساسى جەھەتتىن c++بىلەن ئوخشاش تېزلىكتە بولىدۇ، بەلكى ئەڭ يېڭى نۇسخىدىكى xcode6.3ۋە swift 1.2بۇ بىرلىكتە يۈگرەيدىغان يولدا نىشان كۆرسەتكۈچسىنى تېخىمۇ كۆپ بولغان ئىقتىدار ئەلالاشتۇرۇشقا قارتىدۇ.
ئۇنىڭ ئۈستىگە playgrounds ۋە swift بىر يېڭى ئۇسسۇلنى ئىشلىتىش ئارقىلىق نەزەر دائىرە ئىنكاسى ھەمكارلىشىپ ئىچكى ئالاقە سانلىق مەلۇماتىدىكى كۆرگىلى بولىدىغان ھېسابلاش ئۇسسۇلى پىروگراممىسىنى يۈرگۈزۈشكە رۇخسەت قىلىدۇ، بىر قىسقىغنە ئىنكاس قايتىش يولى ۋە گىرافىك تەسۋېرى كود يوقاتقاتقان جەريان تېخىمۇ ئوڭاي باشلىنىدۇ.
ئەڭ ئاخىردا ، swift بولسا بىر ئاسانلا ئادەمگە يىقىنلىشىدىغان پۈتۈن ئىقتىدارلىق پىروگرامما لاھىللەش تىلى، كەلگۈسىدە ئاچقۇچىلارنى appقۇرۇش ئىقتىدارىغا ئىگە قىلىپلا قالماستىن يەنە گىرەلەشكەن شەكىلدىكى سىستېمىنى قوللايدۇ، مەسىلەن ؛ يېڭى تۆۋەن سەرپىياتلىق apple watch.
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
>>>>>>>>>>>智学同伴<<<<<<<<<<<<<
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
سالونىمىزنى bilimtop دەپ ئىزدىتىپ قوشۇۋېلىڭ.بىز سىزلەر ئۈچۈن تېخىمۇ ياخشى مەزمۇنلارنى يوللاشقا تىرىشىمىز.بىزنى قوللاپ رىغبەتلەندۈرۈپ ، سالونىمىزنى تونۇش دوست بۇرادەرلىرىڭىزگە تەۋسىيە قىلىپ قويۇڭ.
。。。。。。。。bilimtop。。。。。。。。。
ياقتۇرغان مەزمۇنلارنى چەمبىرەككەچىقىرىپ قويۇڭ، ئاستىدىكى قولاشنى بىسىپ قويۇڭ . ياخشى ئېنكاسلانى يىزىپ قويۇڭ .
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
سالونىمىزغا يېڭى مەزمۇندىكى تېخنىكا بىلىملىرى،يېڭىلىقلار، قوللىنىشچان بىلىملەر، ئوقۇشلۇقلار، ئاۋازلىق ئەسەرلەر قاتارلىقلار يوللىنىدۇ .
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
خېرىدار باشقۇرۇش تالون كېسىش سىستېمىسى لازىم بولسا بىزنى ئىزدەڭ.سىز ئۈچۈن ئەلامۇلازىمەت قىلىمىز.مەخسۇس لايىھىلەپ بېرىمىز.تەڭشەپ بېرىمىز.
^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^
以上是关于Swift : Swift vs .objective-c نىڭ ئون ئالاھىدىلىكى的主要内容,如果未能解决你的问题,请参考以下文章
《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言