Spis treści
Porady:
- Poznaj zasady SOLID i staraj się jak najbardziej przestrzegać.
- Myśl o klasie jak o fizycznym obiekcie: co on może zrobić, kto może coś robić z jego danymi, czego robić on nie powinien.
- Zastanawiaj się, jak obiekty mogą się ze sobą komunikować.
- Opieraj zależności między obiektami na abstrakcji.
- Pamiętaj, że klasy powinny być hermetyczne.
- Klasy i metody nie powinny robić zbyt wiele — duże klasy i metody trudno jest zrozumieć i testować.
- Klasa sama powinna manipulować swoimi danymi. Nie powinniśmy zwracać danych innej klasie, aby ona je podmieniła.
- Wyciągaj wspólne części kodu do klas wyspecjalizowanych. Zmniejsza to możliwość wystąpienia błędu w przyszłości oraz pozwala ponownie wykorzystać kod.
- Pisz ładny, czytelny i czysty kod. Im mniej zagnieżdżeń w kodzie, tym lepiej.
- Nie nadużywaj dziedziczenia. Zazwyczaj lepszym rozwiązaniem jest kompozycja.
Sposób na poprawienie wiedzy, jak lepiej programować obiektowo:
Książka do przeczytania: Myślenie obiektowe w programowaniu — Matt Weiffeld.
Sposób na ćwiczenie:
Zamiana programu napisanego w paradygmacie strukturalnym na obiektowy.
Wszystkie posty związane z mini projektem: Poznaj zasady SOLID i OOP:
- Początek mini projektu: Poznaj zasady SOLID i OOP
- SOLID
- S jak Single responsibility principle, czyli zasada jednej odpowiedzialności
- O jak Open-closed principle, czyli zasada otwarte/zamknięte
- L jak Liskov Substitution Principle, czyli zasada podstawień Barbary Liskov
- I jak Interface segregation principle, czyli Zasada segregacji interfejsów
- D jak Dependency Inversion Principle, czyli Zasada odwrócenia zależności
- CS jak Ćwiczenia Single responsibility principle, czyli zasada jednej odpowiedzialności
- CO jak Ćwiczenia Open/closed principle, czyli Zasada otwarte-zamknięte
- CL jak Ćwiczenia Liskov Substitution Principle, czyli zasada podstawień Barbary Liskov
- CI jak Ćwiczenia Interface segregation principle, czyli Zasady segregacji interfejsów
- CI jak Ćwiczenia Dependency Inversion Principle, czyli Zasada odwrócenia zależności
- Ćwiczenia z SOLID
- Podsumowanie połowy projektu: Poznaj zasady SOLID i OOP
- Ćwiczenia z SOLID — Kata
- OOP — Object Oriented Programming, czyli programowanie obiektowe
- OOP — Myślenie obiektowe
- OOP — Object Oriented Programming, czyli programowanie obiektowe — Modelowanie dziedziny
- KISS — Keep it simple, stupid, czyli Bez udziwnień zapisu, idioto (BUZI)
- Lod — Law of Demeter, czyli Prawo Demeter
- DRY — Don’t repeat yourself, czyli Nie powtarzaj się
- SLAP — Single Level of Abstraction Principle, czyli Pojedynczy poziom abstrakcji
- Composition Over Inheritance, czyli Kompozycja ponad dziedziczeniem
- Encapsulate what changes, czyli Ukrywaj zmieniające się rzeczy
- Podsumowanie projektu: Poznaj zasady SOLID i OOP
- Podsumowanie zasad SOLID i OOP
- Mini kurs: Poznaj zasady SOLID i OOP – Zapisz się!
- Praca cząstkowa w Metodzie Kanban
Źródła
Obraz główny
Materiały
- https://www.marekczuma.pl/2016/07/12/programowanie-obiektowe-czyli-jak-programowac-aby-skutecznie-tworzyc-realny-swiat/
- https://mansfeld.pl/programowanie/zalety-i-wady-oop/
- https://blog.artmetic.pl/recenzja-ksiazki-myslenie-obiektowe-w-programowaniu/
- https://it-consulting.pl/autoinstalator/wordpress/2014/05/29/myslenie-obiektowe-w-programowaniu/
- https://bulldogjob.pl/news/846-czym-sa-zapachy-kodu-w-php-czysty-kod-z-podejsciem-oop
- https://www.marekczuma.pl/2016/07/12/programowanie-obiektowe-czyli-jak-programowac-aby-skutecznie-tworzyc-realny-swiat/
1
/
53
020/100| Przetłumacz Na Angielski - Translate to English| Bubble.io TUTORIAL
019/100| Wykryj Sentyment Zmień Głos na Tekst- Voice-to-Text Sentiment Analyzer| Bubble.io TUTORIAL
018/100| Rozpoznawanie Logo - Logo Recognizer| Bubble.io TUTORIAL
2025_01_17 Jak Ugotować Jajka? | Walka I Postępy
017/100| AI Generowanie Obrazów - AI Image Generation| Bubble.io TUTORIAL
2025_01_16 Rozmawiaj!!! Walka I Postępy
016/100| AI Chat Produktywności - Productivity Chatbot AI| Bubble.io TUTORIAL
2025_01_15 Świąteczne Prezenty Walka I Postępy
015/100| AI Trener Personalny - Motivational Coach AI| Bubble.io TUTORIAL
2025_01_14 Metoda Na Cele | Walka I Postępy
014/100| Połączenie przez API - API Connector| Bubble.io TUTORIAL
2025_01_13 Przerwa Świąteczna | Walka I Postępy
013/100| Rejestracja i Logowanie - Sign-Up & Login Page| Bubble.io TUTORIAL
012/100| Proces Tworzenia Oprogramowania - Transforming App Development|Bubble.io TUTORIAL
011/100| Debugowanie - Debugging| Bubble.io TUTORIAL
010/100| Reużywalny Element - Reusable Elements| Bubble.io TUTORIAL
009/100| Listy Tekstów - Lists of Text| Bubble.io TUTORIAL
008/100| Logika: Warunki - Conditional Basics| Bubble.io TUTORIAL
007/100| Edycja w Bazie Danych - Edit Database| Bubble.io TUTORIAL
006/100| Baza Danych - Database| Bubble.io TUTORIAL
Powiadom Osobę w Komentarzu - Notify Person via Comments| Bubble.io TUTORIAL
005/100| Działanie: Akcje i Wydarzenia - Workflows: Events and Actions| Bubble.io TUTORIAL
004/100| Animowany Przycisk - Custom Animated Buttons| Bubble.io TUTORIAL
003/100| Grupy - Group Elements| Bubble.io TUTORIAL
002/100| Teksty - Text Elements| Bubble.io TUTORIAL
001/100| Edytor Aplikacji i Układ Strony - Editor & Layouts| Bubble.io TUTORIAL
Zbuduj TODO Aplikację - To-Do App in 10 Minutes | Bubble.io Budowa Aplikacji
Wysuwający się Panel - Slide-in Panel| Quick Tip
Wykresy Wykorzystania Bubble.io - App Usage Charts | Bubble.io TUTORIAL
Własny Tymczasowy Stan - Learn Custom States in 5 min| Bubble.io Quick Tip
1
/
53