# Programowanie asynchroniczne (Node.js / NestJS) > Callbacks, Promises, async/await, obsługa błędów, Promise.all, Promise.race - 25 pytań z rozmów - Junior - [Pytania z rozmów: Node.js / NestJS](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne.md) ## 1. Jak w NestJS uczynić metodę controllera asynchroniczną? **Odpowiedź** Dodaj słowo kluczowe async przed metodą, a automatycznie zwróci ona Promise. NestJS automatycznie obsługuje rozwiązanie Promise i wysyła wynik do klienta. W razie potrzeby możesz też bezpośrednio zwrócić Promise bez async. NestJS obsługuje również Observable z RxJS. Użycie async/await sprawia, że kod jest bardziej czytelny dla operacji asynchronicznych (DB, zewnętrzne API itp.). ## 2. Jaki jest główny problem z callbackami w JavaScript? **Odpowiedź** Callback hell (piramida zagłady) występuje, gdy zagnieżdżonych jest wiele operacji asynchronicznych, tworząc kod trudny do czytania i utrzymania. Każdy poziom wcięcia dodaje złożoności. Promise i async/await zostały wprowadzone, aby rozwiązać ten problem, umożliwiając bardziej liniowy zapis kodu asynchronicznego. ## 3. Czym jest Promise w JavaScript? **Odpowiedź** Promise to obiekt reprezentujący ostateczne zakończenie (lub niepowodzenie) operacji asynchronicznej i jej wynikową wartość. Może znajdować się w trzech stanach: pending, fulfilled (pomyślnie rozwiązana) lub rejected (zakończona błędem). Promise umożliwiają łączenie operacji asynchronicznych za pomocą .then() i .catch(). ## Jeszcze 22 dostępnych pytań - Jakie są trzy możliwe stany Promise? - Jak obsługiwać błędy w Promise? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne Node.js / NestJS - [Podstawy Node.js](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/nodejs-fundamentals.md): 20 pytań, Junior - [Podstawowe API Node.js](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/nodejs-core-apis.md): 25 pytań, Junior - [Podstawy Express.js](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/express-basics.md): 20 pytań, Junior - [Podstawy NestJS](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/nestjs-fundamentals.md): 23 pytań, Junior - [Projektowanie API REST](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/rest-api-design.md): 20 pytań, Junior - [Walidacja i DTO](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/validation-dto.md): 20 pytań, Junior - [Dokumentacja API i kontrakty](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/api-documentation.md): 20 pytań, Junior - [Obsługa błędów](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/error-handling.md): 20 pytań, Junior - [Testy jednostkowe](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/testing-unit.md): 20 pytań, Junior - [Harmonogramowanie zadań](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/scheduling-cron.md): 15 pytań, Junior - [Moduły i DI w NestJS](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/nestjs-modules-di.md): 20 pytań, Mid-Level - [Konfiguracja i zarządzanie środowiskami](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/configuration-environment.md): 20 pytań, Mid-Level - [Uwierzytelnianie JWT](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/authentication-jwt.md): 25 pytań, Mid-Level - [Autoryzacja i RBAC](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/authorization-rbac.md): 20 pytań, Mid-Level - [Baza danych z TypeORM](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/database-typeorm.md): 30 pytań, Mid-Level - [Prisma ORM](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/prisma-orm.md): 25 pytań, Mid-Level - [Middleware i Interceptory](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/middleware-interceptors.md): 20 pytań, Mid-Level - [Przesyłanie plików](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/file-upload.md): 15 pytań, Mid-Level - [WebSockets](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/websockets.md): 20 pytań, Mid-Level - [GraphQL z NestJS](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/graphql-basics.md): 25 pytań, Mid-Level - [Testy end-to-end](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/testing-e2e.md): 20 pytań, Mid-Level - [Buforowanie z Redis](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/caching-redis.md): 20 pytań, Mid-Level - [Kolejki z Bull](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/queues-bull.md): 20 pytań, Mid-Level - [DevOps, Logging i CI/CD](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/logging-monitoring.md): 25 pytań, Mid-Level - [Docker i konteneryzacja](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/docker-containerization.md): 25 pytań, Mid-Level - [Microservices](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/microservices.md): 30 pytań, Senior - [Najlepsze praktyki bezpieczeństwa](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/security-best-practices.md): 25 pytań, Senior - [Wydajność i wdrażanie w chmurze](https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/performance-optimization.md): 30 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/node-nestjs/pytania-rekrutacyjne/asynchronous-programming