Node.js try-catch

Node Js Try Catch



Тъй като грешките са естествена част от всеки опит на разработчици, потребителят трябва ефективно да се справя с грешките, като използва оптимална стратегия за създаване на надеждно и функционално приложение. Тази статия има за цел да обясни концепцията за интелигентно обработване на грешки с помощта на техниката „try-catch“ в Node.js, за да направи софтуера надежден и да подобри потребителското изживяване. Той също така ще предостави съвети за подобряване на вашата програма, подобряване на доверието на потребителите за изграждане на солидни и трудни програми.

Първо, трябва да разберете какво е грешка и нейните видове.

Видове грешки

Докато работите на който и да е език за програмиране, обикновено има два вида грешки, които могат да възникнат:







Оперативна грешка

Оперативна грешка възниква, когато приложението е изправено пред необработено изключение или някакъв проблем в кода. Този тип грешка обикновено е трудна за забелязване, тъй като има много причини за нейния произход, напр. изтичане на памет, безкрайни цикли, неточен дизайн на системата и др.



Ефикасен начин за справяне с оперативни грешки е да се използва оптимална стратегия за обработка на грешки, за да се открие грешката в нейния произход и да се информира разработчикът, така че да може да бъде адресирана навреме.



Функционална грешка

Функционалните грешки са тези, които спират нормалното функциониране на кода на приложението. Тъй като тези грешки се държат по различен начин, те може да изискват повече мозъчна атака, за да открият произхода им, тъй като те могат да се държат по различен начин по време на жизнения цикъл на приложението.





Прост случай може да бъде програма, в която потребителят е внедрил грешна логика, което може или да доведе до безкраен цикъл и в крайна сметка да срине програмата.

Разработчиците трябва да копаят дълбоко в кодовата база, за да идентифицират възможни функционални грешки, като използват техники като отстраняване на грешки и проследяване на стека и т.н.



След като вече знаем за типа грешка, която може да възникне в нашия кодов скрипт, е необходимо да разберем защо е необходимо да се справяме с грешката.

Призив за справяне с грешки в Node.js

Преди да обясните концепцията за това как да обработвате грешки в Node.js с помощта на try-catch; необходимо е да имате разбиране защо е необходимо да се обработват грешки. Обработването на грешки в кода на приложението е от решаващо значение за създаването на надеждно и подобрено приложение за потребителско изживяване за потребителите.

Подобряване на потребителското изживяване

Добра практика е да избягвате използването на общи съобщения и да показвате удобни за потребителя съобщения за грешка за по-добро потребителско изживяване.

Изграждане на основа за по-силен код

Когато грешките се обработват оптимално, основата на кода изглежда по-реалистична. Той ефективно улавя и обработва желаните грешки, като по този начин намалява риска от срив на приложението.

Откриване на грешки

Обработката на грешки улеснява откриването на грешки по време на фазата на разработка и премахването им възможно най-рано. Това позволява на потребителите да оптимизират своите приложения във фазата на разработка по-точно, позволявайки на кода да тече без никакви прекъсвания.

Срив на приложението

Необработването на грешките може да доведе до внезапно прекъсване на кодовия поток и в крайна сметка да срине приложението. Използването на „ опитай да хванеш ” ни позволява да обработваме грешките безпроблемно.

Сега нека започнем, като разгледаме структурата/синтаксиса на блока try-catch, който ще внедрим в нашия код.

Структура на блока try-catch

Структурата на блока try-catch е доста проста и е основният инструмент за ефективно справяне с грешки.

Структурата на блока try-catch е:

опитвам {

} улов ( грешка ) {
конзола. грешка ( ) ;
} накрая {

}

Функционирането на горния код е:

  • опитвам ” съдържа целия функциониращ код и в този блок могат да възникнат грешки. Ако възникне грешка в този блок, той задейства „ улов ” блок.
  • улов ” е мястото, където се обработват всички необходими грешки. Потребителите могат да променят неговите свойства и да извършват желаните действия.
  • накрая ” е незадължителен блок и се изпълнява всеки път, независимо дали възникне грешка или не. Той извършва операцията по почистване.

Разбирането на блока try-catch може да бъде практически разбрано от случай, в който се опитваме да получим достъп до файл, който може или не може да съществува. Ако не съществува, може да даде грешка, за да избегне грешката, потребителят може да я обработи, като използва концепцията try-catch.

Грешки при обработка на файлове с помощта на блока „try-catch“ в Node.js

Първо, нека разгледаме проблем, без да използваме „ опитай да хванеш ” блок. В примера за код по-долу файл се отваря без правилно обработване на грешки:

конст fs = изискват ( 'fs' ) ;

конст инфо = fs. readFileSync ( '/Users/Lenovo/file.txt' ) ;

конзола. дневник ( „Важен фрагмент от код, който трябва да се изпълни в края“ ) ;

Обяснението на горния код е:

  • const fs = изискване ('fs') ” импортира модула Node.js ‘fs’ (файлова система), който позволява на потребителя да работи с файловата система, включително всички файлови операции като четене или писане на файлове.
  • const data = fs.readFileSync('/Users/Lenovo/file.txt') ” чете съдържанието на файла по посочения път. „ readFileSync ” е синхронна операция, което означава, че спира по-нататъшното изпълнение на кода, докато файлът не бъде прочетен по посочения път и информацията се съхрани в „ инфо ” променлива.
  • console.log(„Важен фрагмент от код, който трябва да се изпълни в края“) ” отпечатва съобщение в терминала, но този ред не се изпълнява, докато файлът не бъде прочетен в предишната стъпка.

Изход

Грешката в резултат на горния код ще се появи като:

Може да се види, че изпълнението на този код без никаква подходяща обработка на грешки води до грешки. Сега преработете горния код с помощта на блока „try-catch“:

конст fs = изискват ( 'fs' ) ;
опитвам {
конст инфо = fs. readFileSync ( '/Users/Lenovo/file.txt' ) ;
конзола. дневник ( инфо ) ;
} улов ( грешка ) {
конзола. грешка ( ` Грешка четене на файла : $ { грешка. съобщение } ` ) ;
}

Функционирането на горния код е:

  • Процесът на четене на файл се поставя в „ опитвам ”, тъй като има вероятност грешката да възникне тук.
  • console.log(информация) ” регистрира съдържанието на файла и го отпечатва в конзолата.
  • улов ” блок улавя всяка възможна грешка, която може да възникне в „ опитвам ” блокира по време на изпълнение на кода и регистрира съобщението за грешка в терминала.
  • console.error(`Грешка при четене на файла: ${error.message}`) ” регистрира указаното съобщение за грешка, получено в резултат на уловената грешка.

Изход

Резултатът от ефективно преработения код ще покаже оптимално съобщение за грешка, както е показано по-долу в приложената екранна снимка:

Използването на try-catch ни позволява да се справим с възможната грешка, която може да възникне, но за по-добро разбиране са изброени някои ефективни практики, които могат да бъдат полезни.

Най-добри практики за обработка на грешки

Потребителят може да следва следните практики за справяне с грешки в своите кодове на приложения:

Използване на опит-хващане разумно

Необходимо е да използвате „ опитай да хванеш ” само там, където трябва да се използва, особено във важните части на кода, където има риск от потенциална грешка. Използването на твърде много в кода може да направи кода сложен.

Използване на асинхронен код

Когато кодът трябва да се обработва с асинхронен код, опитайте да използвате „ опитай да хванеш ” с обещания и async/await за оптимално справяне с грешката.

Регистрирайте и докладвайте грешки

Винаги регистрирайте и докладвайте правилно конкретната грешка в блока catch, тъй като ясните съобщения за грешка помагат да се идентифицира основната причина за грешките.

Намаляване на сложността

Справете се със ситуации, в които грешките не са критични. Премахването на тази конкретна част (ако не е необходимо) може да намали сложността на кода.

Избягване на тихи грешки

Напишете кода по начин, който показва съобщението за грешка, където е необходимо, в противен случай, ако съобщението за грешка не е посочено, тогава ще стане проблем да се справите с грешката без подходяща идентификация.

Това е всичко относно функционирането на блока try-catch и как може да се използва ефективно за справяне с грешки в Node.js.

Заключение

Да станеш опитен в обработката на грешки в Node.js е основната стъпка към разработването на силни и последователни приложения. Оптималното използване на „ опитай да хванеш ” блок заедно с различни практики като асинхронни техники и правилно регистриране на грешки може да помогне за установяването на стабилни и удобни за потребителя Node.js приложения. Тази статия обяснява структурата, практическото приложение и практиките за работа, които могат да бъдат използвани според изискванията на потребителя.