Hacker News

Zig دىكى يۈك يۈكى خاتا

Zig دىكى يۈك يۈكى خاتا بۇ خاتالىقنى ئەتراپلىق تەھلىل قىلىش ئۇنىڭ يادرولۇق تەركىبلىرى ۋە تېخىمۇ كەڭ تەسىرلىرىنى تەپسىلىي تەكشۈرۈش بىلەن تەمىنلەيدۇ. مۇھىم نۇقتىلار مۇنازىرە مەركەزلىرى: يادرولۇق مېخانىزم ۋە جەريانلار Real -...

1 min read Via srcreigh.ca

Mewayz Team

Editorial Team

Hacker News

Zig دىكى خاتالىق يۈكلەش: Zig بىخەتەر سىستېما كودىدا خاتالىق بىر تەرەپ قىلىش ئۇسۇلى

Zig دىكى خاتالىق يۈكلىگۈچىلەر پروگرامما ئاچقۇچىلارنىڭ خاتالىق ئۇچۇرىغا كونتېكىست سانلىق مەلۇمات باغلىشىغا يول قويىدۇ ، تېلېفون نومۇرى ئارقىلىق خاتالىق تارقاتقاندا دىئاگنوز ئۇچۇرلىرىنى يوقىتىش مەسىلىسى ئۇزۇندىن بۇيان ھەل بولىدۇ. ئەنئەنىۋى خاتالىق كودى ياكى ئېغىر دەرىجىدىكى مۇستەسنا سىستېمىلارغا ئوخشىمايدىغىنى ، Zig نىڭ ئۇسۇلى سىزگە قۇرۇلمىلىق ، تۈزۈلگەن ۋاقىت تەكشۈرۈلگەن خاتالىق مۇھىتىنى ئىقتىدار ۋە ئوقۇشچانلىقىنى قۇربان قىلمايدۇ.

خاتالىق يۈكلىرى نېمە ۋە Zig ئۇلارغا نېمە ئۈچۈن ئېھتىياجلىق؟

Zig نىڭ خاتالىق بىر تەرەپ قىلىش ئەندىزىسى خاتالىق بىرلەشمىسى ئەتراپىدا ياسالغان بولۇپ ، تېلېفون بەرگۈچىلەر خاتالىقنى ئوچۇق-ئاشكارە ئېتىراپ قىلىشقا ۋە بىر تەرەپ قىلىشقا مەجبۇرلايدۇ. خاتالىق بىرلەشمىسى نورمال قايتۇرۇش تىپى بىلەن خاتالىق گۇرۇپپىسى بىرلەشتۈرۈلۈپ ، ErrorSet! ReturnType دەپ يېزىلغان. فۇنكسىيە مەغلۇپ بولغاندا ، توپتىن خاتالىق قىممىتىنى قايتۇرىدۇ. تارىختىكى قىيىن مەسىلە شۇكى ، يالىڭاچ خاتالىق كودىدا ھېچقانداق مەزمۇن يوق: سىز نېمە نىڭ خاتا بولۇپ قالغانلىقىنى بىلىسىز ، ئەمما قەيەردە ، نېمە ئۈچۈن ياكى قايسى كونكرېت كىرگۈزۈش بىلەن.

خاتالىق يۈكلەش بۇ بوشلۇقنى ھەل قىلىدۇ. قوشۇمچە ئۇچۇرلارنى خاتالىق بەلگىسى بىلەن بىرلەشتۈرۈش ئارقىلىق ، پروگراممېرلار يەرشارى ھالىتى ، تېما-يەرلىك ساقلاش ياكى پارامېتىردىن پايدىلانماي ئەھمىيەتلىك دىئاگنوزنى تەشۋىق قىلالايدۇ. بۇ مېخانىزم Zig نىڭ نۆل تەننەرخلىق ئابستراكت پەلسەپىسىنى مۇكەممەل ساقلايدۇ ، چۈنكى يۈك يۈكى مۇۋەپپەقىيەت يولىدا ئەمەس ، بەلكى خاتالىق يۈز بەرگەندە تەقسىملىنىدۇ ۋە نوپۇسقا ئېلىنىدۇ.

خاتالىق يۈكلەش باشقا تىللاردىكى خاتالىق بىر تەرەپ قىلىش بىلەن قانداق سېلىشتۇرۇلىدۇ؟

Zig نىڭ لايىھىلەش تاللىشىنى چۈشىنىش سىستېما پروگرامما ئېكولوگىيە سىستېمىسىدىكى خاتالىق ئەندىزىسىنى سېلىشتۇرۇشتا تېخىمۇ ئېنىق بولىدۇ:

  • C نىڭ خاتالىق ۋە قايتۇرۇش كودى: خاتالىق مەزمۇنى يەرشارى ئۆزگەرگۈچى مىقداردا ساقلىنىدۇ ، ئىنچىكە ئىنتىزامسىز ئۇنى تېما بىخەتەر ئەمەس. تۈزگۈچى ئىجرا قىلىش يوق ، شۇڭا خاتالىقلارغا سەل قارىلىدۇ.
  • C ++ بۇنىڭ سىرتىدا: بۇنىڭ سىرتىدا مول يۈك يۈكى تەبىئىي بولىدۇ ، ئەمما ئۇلار يوشۇرۇن كونترول ئېقىمىنى تونۇشتۇرىدۇ ، بەزى ئەلالاشتۇرۇشلارنىڭ ئالدىنى ئالىدۇ ھەمدە ئۈستىگە ئىككىلىك چوڭلۇقنى قوشىدۇ. نۇرغۇن قىستۇرما ۋە ئويۇن ئېچىش گۇرۇپپىلىرى ئۇلارنى پۈتۈنلەي چەكلەيدۇ.
  • رۇسنىڭ نەتىجىسى : رۇسنىڭ ئۇسۇلى ئەڭ يېقىن تۇغقان. مۇناسىۋەتلىك سانلىق مەلۇماتلار بىلەن ئىختىيارى خاتالىق سانلىرىمۇ مۇشۇنىڭغا ئوخشاش ئۈنۈمگە ئېرىشىدۇ ، ئەمما Zig نىڭ خاتالىق يۈرۈشلۈكى تېخىمۇ يېنىك بولۇپ ، تىلنىڭ سىناپ بېقىش ۋە تۇتۇش ئاچقۇچلۇق سۆزلىرى بىلەن بىرىكمە سەۋىيىدە بىرلەشتۈرۈلگەن.
  • Go نىڭ كۆپ قايتۇرۇش (قىممىتى ، خاتالىقى): Go fmt.Errorf ياكى ئەۋەتكۈچى تىپى بىلەن ئوراش خاتالىقىنى ئىلھاملاندۇرىدۇ ، ئەمما تۈزگۈچى بىر تەرەپ قىلىشنى ئىجرا قىلمايدۇ. خاتالىق دائىملىق كۆرۈنمە يۈز قىممىتى بولۇپ ، تۈزۈش ۋاقتىنىڭ تۈگىمەسلىكىنى تەكشۈرمەيدۇ.
  • زىگنىڭ يۈك يۈكى بىلەن خاتالىق بىرلەشمىسى: Zig ئوتتۇراھال ئورۇننى ئىگىلەپ ، تۈزگۈچى ئىجرا قىلىدىغان بىر تەرەپ قىلىش ، مۇۋەپپەقىيەت يولىدىكى تەننەرخنى نۆل ، شۇنداقلا دۆۋىلەنگەن سانلىق مەلۇماتلار بىلەن ئىشلەتكەندە قۇرۇلما مەزمۇنىنى دۆۋىلەپ تەقسىملەش ئىقتىدارى بىلەن تەمىنلەيدۇ.

بۇ چاستوتا تىل لايىھىلەشنىڭ روشەن يۈزلىنىشىنى كۆرسىتىپ بېرىدۇ: بۇ ساھە خەت بېسىش ، ئىجرا قىلىنىدىغان خاتالىقلارنى بىر تەرەپ قىلىشتا توپلىنىۋاتىدۇ ، زىگ ئىجرا ۋاقتىنىڭ تەننەرخىگە دەخلى-تەرۇز قىلماي ، يۈك يۈكىنى بىرىنچى دەرىجىلىك ئېرگونومىيىلىك كۆڭۈل بۆلۈش ئارقىلىق بۇ چېگرانى تېخىمۇ ئىلگىرى سۈرىدۇ.

ئەمەلىيلەشتۈرۈش ئەمەلىيەتتە قانداق كۆرۈنىدۇ؟

ئەمەلىي Zig كودىدا خاتالىق يۈكلەش ئەندىزىسى ئارقىلىق ئىپادىلىنىدۇ ، بۇ ئىقتىدارلار خاتالىق دەرىجىسىگە ئايرىش ۋە قوشۇمچە سانلىق مەلۇماتلارنى ئوراپ قۇرۇلما ياكى بەلگە قويۇلغان ئىتتىپاقنى قايتۇرىدۇ. «ئىناۋەتسىز فورمات» بولۇپلا قالماستىن ، بەلكى بايت تولۇقلاش ۋە كۈتۈلمىگەن بەلگە يوللانغان دوكلاتنى تەھلىل قىلىشنى ئويلاڭ. بۇ ئىقتىدار stderr غا كىرىش ياكى يان تەرەپتىكى قانالغا چاپلاشتىن كۆرە ، بۇ ئىقتىدار offset ، مۆلچەردىكى بەلگە توپلىمى ۋە تېپىلغان ئەمەلىي بايتلارنى ئۆز ئىچىگە ئالغان يۈك قاچىلاش قۇرۇلمىسىنى قايتۇرىدۇ.

سىناپ بېقىڭ ئاچقۇچلۇق سۆز بۇ موللاشتۇرۇلغان خاتالىقلارنى چاقىرىش زەنجىرىنى ئاپتوماتىك تارقىتىدۇ ، يۇقىرى قاتلاملىق باشقۇرغۇچىدا خاتالىق بەلگىسىگە ماسلاشتۇرۇپ ، خاتىرىلەش ، كۆرسىتىش ياكى ئەسلىگە كەلتۈرۈش لوگىكىسى ئۈچۈن يۈك يۈكىنى چىقارسىڭىز بولىدۇ. بۇ Zig كود يەشكۈچلىرىنى كۆرۈنەرلىك ھەل قىلىشقا بولىدۇ ، چۈنكى ھەر بىر خاتالىق يولى ئۆزىنىڭ ئەدلىيە يولىنى ئۆز ئىچىگە ئالىدۇ.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

ئاچقۇچلۇق چۈشەنچە: خاتالىق يۈكلىرىنىڭ ئەڭ تەسىرلىك پايدىسى ئىجرا ۋاقتى ئەمەس. ئۇ بىلىش. ھەر بىر خاتالىق ئۇنىڭ مەزمۇنىنى ئېلىپ يۈرگەندە ، پروگراممېرلار مەغلۇبىيەتنى كۆپەيتىشكە ۋە ۋاقىتنى ئوڭشاشقا تېخىمۇ كۆپ ۋاقىت سەرپ قىلىدۇ. خاتالىق يۈكلىرى «خاتالىق بار» نى «بۇ ئالاھىدە ئىش بۇ يەردە خاتا بولدى ، بۇ كىرگۈزۈشلەر» گە ئايلاندۇرۇپ ، بىر نەچچە سائەتتىن نەچچە مىنۇتقىچە ھەل قىلىش دەۋرىنى ۋەيران قىلدى.

ئىشلەپچىقىرىش سىستېمىسىنىڭ ھەقىقىي دۇنيانىڭ تەسىرى نېمە؟

ئىشلەپچىقىرىش مۇلازىمىتى ئۇل ئەسلىھەلىرى ئۈچۈن Zig نى قوللانغان گۇرۇپپىلار ، تور مۇلازىمىتىدىن قىستۇرۇلغان يۇمشاق دېتاللارغىچە ، خاتالىق يۈكلىرى سىستېمىلىق ئىشلىتىلگەندە ، ئوتتۇراھال ۋاقىتتىكى ئېنىقلىق دەرىجىسى (MTTR) غا قەدەر ئۆلچەشكە بولىدىغان ياخشىلىنىشلارنى دوكلات قىلىدۇ. ئەندىزە ھۆججەتلەرنى مەغلۇپ قىلالايدىغان ھەر بىر ئىقتىدارنىڭ مۇۋەپپەقىيەت توختامىغا ئوخشاش قاتتىقلىق بىلەن مەغلۇپ بولىدىغان ئىنتىزامغا ئىلھام بېرىدۇ.

مۇرەككەپ سىستېمىلارنى باشقۇرىدىغان تەشكىلاتلارغا نىسبەتەن ، بۇ تېخىمۇ كەڭ مەشغۇلات ھەقىقىتىنى ئەينەك قىلىدۇ: قۇرۇلمىلىق خاتالىق مۇھىتى ئىشەنچلىك قۇرۇلۇشنىڭ كۈچ كۆپەيتكۈچىسى.

بۇ پرىنسىپ پروگرامما تىلىدىن ھالقىپ كەتتى. خاتالىق يۈز بەرگەندە ، كودتىكى خاتالىق يۈكىدىن تارتىپ سودا قوراللىرىدىكى مەشغۇلات تاختىلىرىغىچە بولغان ئارىلىقتا قۇرۇلمىلىق مۇھىتتا تۇتۇش ، تەشۋىق قىلىش ۋە ھەرىكەت قىلىشقا ياردەم بېرىدىغان ھەر قانداق سىستېما مەغلۇبىيەت تەننەرخىنى زور دەرىجىدە تۆۋەنلىتىدۇ.

دائىم سورايدىغان سوئاللار

Zig دۆۋىسىدىكى خاتالىق يۈكلىرى تەقسىم قىلىنغانمۇ؟

چوقۇم ئەمەس. Zig ئاچقۇچىلارغا تەقسىمات ئىستراتېگىيىسىنى كونترول قىلىدۇ. ئەگەر ئۇلارنىڭ ئۆمرى ھازىرقى ئىقتىدارغا ماس كەلسە ياكى چاقىرىش چېگراسىدا چىڭ تۇرۇشقا توغرا كەلگەندە ئېنىق تەقسىم قىلىنسا ، يۈك يۈكى بۇ يەردە تۇرالايدۇ. بۇ جانلىقلىق سىزنىڭ C ++ ياكى Java دىكى مۇستەسنا سىستېمىلارنى يولغا قويغان يوشۇرۇن دۆۋە تەقسىملەشتىن ساقلىنىشىڭىزنى كۆرسىتىدۇ. ئىقتىدار ھالقىلىق يوللاردا ، قاتلىما يۈك يۈكى خاتالىق يولىغا نۆل تەقسىملەشنى قوشۇپ قويىدۇ.

خاتالىق يۈكلەش Zig نىڭ قوشۇمچە ئىقتىدارلىرى بىلەن قانداق ئۆز-ئارا تەسىر كۆرسىتىدۇ؟

Zig نىڭ تۈزۈش-ئىجرا قىلىش ئەندىزىسى خاتالىق توپلىمى ۋە ئۇلارنىڭ مۇناسىۋەتلىك يۈك يۈكى تىپلىرىنى تۈزگەندە دەلىللەشكە يول قويىدۇ. تەرجىمە قىلغۇچى بىر يۈرۈش ھەر بىر خاتالىق بەلگىسىنىڭ مۇناسىپ بىر تەرەپ قىلغۇچنىڭ بارلىقىنى ۋە ھەر بىر تېلېفون تور بېكىتىدە يۈك بېسىش تىپىنىڭ توغرا بۇزۇلغانلىقىنى دەلىللىيەلەيدۇ. بۇ خاتالىق يۈز بەرگەن ، ئەمما ئۇنىڭ يۈكى خاتا چۈشەندۈرۈلگەن ياكى ئېتىبارغا ئېلىنمىغان پۈتكۈل ئىجرا ۋاقتىنى ھەيران قالدۇرىدۇ ، بۇ خاتا يېزىلغان خاتالىق سىستېمىسىدىكى جىمجىت مەغلۇبىيەتنىڭ ئورتاق مەنبەسى.

مەغلۇپ بولىدىغان ھەر بىر ئىقتىدار ئۈچۈن خاتالىق يۈكلىسەم بولامدۇ؟

خاتالىق مەزمۇنى تېلېفون ئۇرغۇچىنىڭ ئەسلىگە كېلىشى ياكى ھەل قىلىنىشىغا ياردەم بەرگەندە يۈك يۈكىنى ئىشلىتىڭ. خاتالىق يۈرۈشلۈكى كىچىك ھەم ئۆزلۈكىدىن چۈشەندۈرۈلگەن ئاددىي مەشغۇلاتلارغا ، مەسىلەن تەقسىمات مەغلۇبىيىتى ، قۇرۇق خاتالىق بەلگىسى يېتەرلىك. مەغلۇبىيەت ھالىتى كىرگۈزۈش ھالىتىگە باغلىق بولغان مەشغۇلاتلارنىڭ زاپاس يۈكى: تەھلىل قىلىش ، دەلىللەش ، I / O كونكرېت نىشان ياكى كېلىشىم بىر تەرەپ قىلىش. ھەددىدىن زىيادە چاتاق ئۇششاق مەشغۇلاتلار خاتالىق دەرىجىسىنى ئۆستۈرمەي شاۋقۇن قوشىدۇ.

توغرا قوراللار بىلەن تېخىمۇ ياخشى سىستېما بەرپا قىلىڭ

سىز قەيسەر Zig مۇلازىمىتىنى يېزىڭ ياكى مۇرەككەپ سودا مەشغۇلاتىنى باشقۇرۇڭ ، مۇۋەپپەقىيەت دەل ۋاقتىدا توغرا ئۇچۇرنى ئاساس قىلىدىغان قۇرۇلمىلىق سىستېمىلارنىڭ بولۇشىغا باغلىق. مېۋايز ئوخشاش باشقۇرۇش پەلسەپىسىنى سودا باشقۇرۇشقا ئېلىپ كېلىدۇ: 207 توپلاشتۇرۇلغان مودۇل لايىھىلەنگەن بولۇپ ، تۈر ئىز قوغلاشتىن تارتىپ خېرىدارلار ئالاقىسىگىچە بولغان بارلىق خىزمەت ئېقىمىڭىزغا گۇرۇپپىڭىزنى قۇرۇلمىلىق مەزمۇن بىلەن تەمىنلەيدۇ. مەشغۇلات پەرەزلىرىنى ئېنىقلىق بىلەن ئالماشتۇرغان 138،000 ئىشلەتكۈچىگە قوشۇلۇڭ. ھەقسىز سىناقنى app.mewayz.com دىن باشلاڭ ۋە ​​قارىغۇلارچە ئۇچۇشنى رەت قىلىدىغان گۇرۇپپىلار ئۈچۈن ياسالغان سودا مەشغۇلات سىستېمىسىنى باشتىن كەچۈرۈڭ.

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime