Dobre praktyki programowania

 0    25 flashcards    nowakowskilukasz12
download mp3 print play test yourself
 
Question język polski Answer język polski
Co to jest SOLID?
start learning
SOLID to skrót opisujący pięć zasad projektowania mające ułatwić zrozumienie projektu oprogramowania oraz uczynić projekt elastycznym i łatwym w utrzymaniu.
Co oznacza S w SOLID?
start learning
Single Responsibility Principle - Zasada pojedynczej odpowiedzialności. Klasa hermetyzowana i odpowiedzialna tylko za jedną część funkcjonalności oferowanej przez oprogramowanie
Co oznacza O w SOLID?
start learning
Open/Closed Principle - Zasada otwarte/zamknięte. Klasy powinny być otwarte na rozszerzenie ale zamknięte dla modyfikacji. Zapobieganie popsucia istniejącego kodu gdy implementuje się nową funkcjonalność.
Co oznacza L w SOLID?
start learning
Liskov Substitution Principle - Zasada podstawienia Liskov. Rozszerzając klasę, trzeba pamiętać, aby było możliwe przekazywanie obiektów nowej podklasy w miejsce obiektów klasy bazowej bez psucia kodu klienta.
Co oznacza I w SOLID?
start learning
Interface Segregation Principle - Zasada segregacji interfejsów. Klientom nie powinno się narzucać zależności od nieużywanych metod. Interfejsy na tyle wąsko wyspecjalizowane, żeby klienci nie musieli implementować zachowań których nie potrzebują.
Co oznacza D w SOLID?
start learning
Dependency Inversion Principle - Zasada odwrócenia zależności. Wysokopoziomowe klasy nie powinny być zależne od niskopoziomowych. Obie grupy zależne od abstrakcji. Abstrakcje niezależne od szczegółów. Szczegóły zależne od abstrakcji.
Wyjaśnij regułę KISS
start learning
Keep It Simple, Stupid. Reguła mówi o tym aby wytwarzać kod w możliwie najprostszy sposób. Zamiast stosować skomplikowanych struktur, powinniśmy zastosować o ile jest to możliwe prostsze zastosowanie.
Wyjaśnij regułę YAGNI
start learning
You aren’t gonna need it. Polega na tym żeby nie tworzyć kodu na zapas “bo może się przyda”.
Wyjaśnij regułę TDA
start learning
Tell don't ask. Mówi o konkretnym podziale obowiązków pomiędzy klasami i obiektami a ich zadaniami. Powinniśmy mówić naszym obiektom jakie są ich obowiązki a nie pytać w jakim są stanie.
Wyjaśnij regułę SCA
start learning
Separation of concerns.Np. MVC. Żadna klasa nie powinna dzielić odpowiedzialności z innymi klasami. Chodzi o to, aby klasa nie musiała martwić się o zadania klas pobocznych.
Wyjaśnij regułę DRY
start learning
Don’t Repeat Yourself. Unikanie powtarzania kodu, co przekłada się na łatwiejsze zarządzanie kodem, zmniejszenie ryzyka popełnienia błędów oraz ułatwienie wprowadzania zmian w przyszłości.
Dlaczego warto pisać testy jednostkowe?
start learning
Testy jednostkowe zapewniają poprawność kodu i ułatwiają szybkie wykrywanie oraz poprawianie błędów.
Co to jest Git?
start learning
Git to system kontroli wersji, który umożliwia śledzenie historii zmian w kodzie oraz efektywną współpracę programistów.
Dlaczego ważne jest planowanie przed rozpoczęciem kodowania?
start learning
Planowanie pozwala zrozumieć wymagania projektu i uniknąć niepotrzebnych zmian w późniejszych fazach rozwoju.
Co to znaczy, że kod jest czysty?
start learning
Czysty kod jest czytelny, zrozumiały i składający się z dobrze zorganizowanych struktur, co ułatwia jego utrzymanie i rozwój.
Jak zarządzać czasem podczas programowania?
start learning
Planowanie zadań, priorytetyzacja oraz regularne przerwy pomagają w efektywnym zarządzaniu czasem podczas tworzenia oprogramowania.
Jakie jest różnica między testami jednostkowymi a testami integracyjnymi?
start learning
Testy jednostkowe sprawdzają pojedyncze komponenty kodu, podczas gdy testy integracyjne sprawdzają interakcje między różnymi częściami systemu.
Co oznacza pisanie skalowalnego kodu?
start learning
Pisanie skalowalnego kodu oznacza projektowanie i implementację aplikacji tak, aby mogła ona łatwo rosnąć i obsługiwać większe obciążenie bez znaczących zmian w architekturze.
Co to jest ciągłe dostarczanie w kontekście programowania? (Continuous Delivery)
start learning
Ciągłe dostarczanie to praktyka polegająca na częstym i regularnym wdrażaniu zmian do produkcji przy minimalnym ryzyku, co wymaga dobrze zaplanowanej i zautomatyzowanej infrastruktury.
Jakie są dobre praktyki zarządzania zależnościami w projekcie?
start learning
Dobre praktyki obejmują regularne aktualizacje bibliotek, używanie narzędzi do zarządzania zależnościami (np. npm, composer), oraz śledzenie potencjalnych luk bezpieczeństwa w zależnościach.
Dlaczego ważne jest monitorowanie i analiza wydajności aplikacji?
start learning
Monitorowanie wydajności pozwala na wczesne wykrywanie problemów, optymalizację aplikacji oraz zapewnienie płynności działania nawet przy dużym obciążeniu.
Co oznacza modularność kodu i dlaczego jest ważna?
start learning
Modularność kodu oznacza podział aplikacji na mniejsze, niezależne części (moduły), co ułatwia zarządzanie, testowanie i ponowne wykorzystanie kodu.
Jakie są metody skalowania aplikacji?
start learning
Metody obejmują skalowanie pionowe (zwiększanie mocy obliczeniowej pojedynczej maszyny) i skalowanie poziome (dodawanie więcej maszyn lub instancji aplikacji).
Co to jest metodyka Agile i jakie ma zalety?
start learning
Metodologia Agile to podejście do zarządzania projektami, które polega na dzieleniu projektu na etapy i kładzie nacisk na ciągłą współpracę i doskonalenie. Zespoły działają zgodnie z cyklem planowania, realizacji i oceny.
Dlaczego utrzymywanie dokumentacji technicznej jest ważne?
start learning
Dokumentacja techniczna ułatwia zrozumienie architektury, funkcji i działania aplikacji, wspomagając procesy utrzymania, rozwijania i debugowania kodu.

You must sign in to write a comment