Zasady projektowania aplikacji w języku C dla systemów wbudowanych - Plan Szkolenia
To szkolenie prowadzone przez instruktora na żywo (online lub na miejscu) jest skierowane do programistów C, którzy chcą poznać zasady projektowania w języku Embedded C.
Po zakończeniu szkolenia uczestnicy będą mogli:
- Zrozumieć aspekty projektowe, które sprawiają, że programy w języku Embedded C są niezawodne
- Zdefiniować funkcjonalność systemu wbudowanego
- Zdefiniować logikę i strukturę programu, aby uzyskać pożądany wynik
- Zaprojektować niezawodną, wolną od błędów aplikację wbudowaną
- Uzyskać optymalną wydajność z docelowego sprzętu
Format kursu:
- Interaktywny wykład i dyskusja
- Ćwiczenia i praktyka
- Praktyczna implementacja w środowisku live-lab
Opcje dostosowania kursu:
- Aby zamówić dostosowane szkolenie, skontaktuj się z nami w celu uzgodnienia szczegółów.
Plan Szkolenia
Wprowadzenie
- Czym jest projektowanie?
- C vs Embedded C
Cykl życia aplikacji wbudowanej
- Proces rozwoju
- Proces utrzymania
- Rozszerzony cykl życia
Narzędzia projektowe
- Open source vs własnościowe
- Kompilatory, asemblery i linkery
- Biblioteki
- Debugery
- Symulatory
- Środowiska IDE
Wyzwania w projektowaniu systemów wbudowanych
- Ograniczenia projektowe w obliczeniach wbudowanych
- Koszty
- Wydajność i efektywność
- Zużycie energii
- Zarządzanie termiczne
Definiowanie celów projektowych
- Utrzymanie prostoty
- Definiowanie funkcjonalności
- Definiowanie logiki i struktury programu
Niezawodność systemu
- Inspekcja i konserwacja
- Wymagania dotyczące czasu pracy
- Punkty awarii
Możliwość ponownego wykorzystania kodu
- Projektowanie bez redundancji
Abstrakcja kodu
- Ukrywanie informacji
- Moduły niezależne od kontekstu
Modularyzacja kodu
- Dekompozycja
- Luźne powiązania
- Silna spójność
- Zależności acykliczne
Możliwość utrzymania kodu
- Czytelność
- Możliwość testowania
- Konfigurowalność
- Aktualizacje wydajności
Kwestie sprzętowe
- Skalowalna moc termiczna (TDP)
- Zintegrowana grafika
- Inne
Podsumowanie i zakończenie
Wymagania
- Podstawowa wiedza o systemach wbudowanych
- Doświadczenie w programowaniu w języku Embedded C
- Zrozumienie podstaw elektroniki
Odbiorcy:
- Programiści
Szkolenia otwarte są realizowane w przypadku uzbierania się grupy szkoleniowej liczącej co najmniej 5 osób na dany termin.
Zasady projektowania aplikacji w języku C dla systemów wbudowanych - Plan Szkolenia - Rezerwacja
Zasady projektowania aplikacji w języku C dla systemów wbudowanych - Plan Szkolenia - Zapytanie
Zasady projektowania aplikacji w języku C dla systemów wbudowanych - Zapytanie o Konsultacje
Opinie uczestników (2)
Dużo materiałów i źródeł.
Michal Tyndel
Szkolenie - Embedded C Application Design Principles
Bardzo dobre przygotowanie merytoryczne.
Magdalena Szumny
Szkolenie - Embedded C Application Design Principles
Propozycje terminów
Szkolenia Powiązane
Kreatywne Rozwiązywanie Problemów z Wykorzystaniem Technik Grywalizacji (Design Thinking)
14 godzinTen prowadzony przez instruktora, żywy trening w Polsce (online lub na miejscu) jest skierowany do uczestników na poziomie początkującym i średnio zaawansowanym, którzy chcą rozwiązywać codzienne wyzwania w miejscu pracy za pomocą technik grywalizacji.
Po zakończeniu szkolenia uczestnicy będą mogli:
- Zrozumieć zasady Design Thinking i ich zastosowanie w rozwiązywaniu problemów.
- Wykorzystać techniki grywalizacji, aby zwiększyć zaangażowanie i innowacyjność.
- Opracować kreatywne i praktyczne rozwiązania dla typowych problemów w miejscu pracy.
- Skutecznie współpracować w zespołach, aby wdrażać strategie rozwiązywania problemów.
- Stosować iteracyjne podejście do doskonalenia rozwiązań poprzez feedback i eksperymentowanie.
Domain Driven Design: Koncepcje i Praktyki
21 godzinTo szkolenie prowadzone przez instruktora na żywo w Polsce (online lub na miejscu) jest skierowane do programistów, architektów i analityków na poziomie średnio zaawansowanym, którzy chcą poznać i zastosować koncepcje oraz praktyki DDD w swoich projektach programistycznych.
Po zakończeniu szkolenia uczestnicy będą w stanie:
- Zrozumieć kluczowe koncepcje DDD (konteksty ograniczone, encje itp.) oraz ich zastosowanie w projektach programistycznych.
- Zastosować strategiczne DDD do definiowania i projektowania modelu domenowego, identyfikowania poddomen oraz ustalania granic.
- Zaimplementować taktyczne DDD przy użyciu wzorców takich jak CQRS, fabryki i event sourcing.
- Efektywnie refaktoryzować i modernizować systemy legacy za pomocą technik DDD.
- Projektować i implementować architektury zorientowane na produkt, domenę i zespół.
- Wykorzystywać data mesh do tworzenia platformy danych zorientowanej na domenę, wspierającej odkrywanie i zarządzanie danymi.
Wprowadzenie do Domain Driven Design
14 godzinDomain Driven Design (DDD) to podejście do zarządzania złożonymi zachowaniami podczas tworzenia oprogramowania.
Domain-Driven Design: Koncepcje i Praktyki dla Starszych Deweloperów
21 godzinDomain-Driven Design (DDD) to podejście do tworzenia oprogramowania, które kładzie nacisk na projektowanie systemów wokół domeny biznesowej, wykorzystując wspólny, uniwersalny język oraz taktyczne i strategiczne techniki modelowania.
To szkolenie prowadzone przez instruktora (online lub na miejscu) jest skierowane do zaawansowanych starszych deweloperów, którzy chcą zastosować zasady DDD do projektowania solidnych, łatwych w utrzymaniu i skalowalnych systemów.
Po zakończeniu szkolenia uczestnicy będą mogli:
- Identyfikować i modelować kluczowe koncepcje domenowe przy użyciu uniwersalnego języka i ograniczonych kontekstów.
- Stosować taktyczne wzorce DDD, takie jak encje, obiekty wartościowe, agregaty, repozytoria i usługi domenowe.
- Projektować mapy kontekstowe i strategiczne granice, aby zarządzać złożonością w mikroserwisach i zespołach.
- Integrować praktyki DDD w zespołach Agile i przepływach CI/CD, aby poprawić współpracę i dostarczanie.
Format kursu
- Interaktywny wykład i dyskusja.
- Wiele ćwiczeń i praktyki.
- Praktyczna implementacja w środowisku live-lab.
Opcje dostosowania kursu
- Aby zamówić dostosowane szkolenie, skontaktuj się z nami, aby uzgodnić szczegóły.
Wzorce projektowe
14 godzinIstnieje wiele sprawdzonych wzorców, które są powszechnie dostępne dla każdego. Czasami wystarczy zmienić nazwy i wdrożyć wzorzec w konkretnej technologii. Może to zaoszczędzić setki godzin, które w przeciwnym razie zostałyby poświęcone na projektowanie i testowanie. Cele szkolenia Kurs ten ma dwa cele: po pierwsze, umożliwia ponowne wykorzystanie powszechnie znanych wzorców, po drugie, pozwala na tworzenie i ponowne wykorzystanie wzorców specyficznych dla Twojej organizacji. Pomaga oszacować, jak wzorce mogą obniżyć koszty, usystematyzować proces projektowania i wygenerować framework kodu oparty na Twoich wzorcach. Odbiorcy Projektanci oprogramowania, analitycy biznesowi, kierownicy projektów, programiści i deweloperzy, a także menedżerowie operacyjni i kierownicy działów oprogramowania. Styl kursu Kurs koncentruje się na przypadkach użycia i ich relacji z konkretnym wzorcem. Większość przykładów jest wyjaśniona w UML i w prostych przykładach w języku Java (język może się zmienić, jeśli kurs jest zamawiany jako zamknięty). Prowadzi przez źródła wzorców, a także pokazuje, jak katalogować i opisywać wzorce, które mogą być ponownie wykorzystane w całej organizacji.
Design Thinking: Empatia w relacjach z klientami wewnętrznymi
7 godzinDesign Thinking to skoncentrowana na człowieku metodologia rozwiązywania problemów poprzez empatię, definiowanie, generowanie pomysłów, prototypowanie i testowanie. Ta wersja kursu kładzie szczególny nacisk na etap Empatii, koncentrując się na połączeniu wcześniej zidentyfikowanych punktów bólowych z rzeczywistymi potrzebami klientów wewnętrznych oraz zastosowaniu dynamicznych, współpracujących działań, aby przekształcić wnioski w działania, które można wdrożyć.
To szkolenie prowadzone przez instruktora, na żywo (online lub na miejscu), jest skierowane do zespołów i liderów na poziomie początkującym i średnio zaawansowanym, którzy chcą pogłębić swoje umiejętności empatii, wzmocnić relacje z klientami wewnętrznymi oraz przekształcić punkty bólowe w znaczące możliwości poprawy.
Pod koniec szkolenia uczestnicy będą mogli:
- Stosować techniki oparte na empatii, aby odkrywać i weryfikować potrzeby klientów.
- Przekształcać zmapowane punkty bólowe w jasne, możliwe do zrealizowania potrzeby.
- Uczestniczyć w dynamicznych odgrywaniach ról i symulacjach, aby ćwiczyć rozmowy skoncentrowane na kliencie.
- Wspólnie redefiniować sformułowania problemów z perspektywy klienta.
Format kursu
- Interaktywny wykład i prowadzone dyskusje.
- Dynamiczne, praktyczne odgrywanie ról i ćwiczenia empatii.
- Warsztaty grupowe dla wspólnego przeprojektowywania problemów.
Opcje dostosowania kursu
- Aby zamówić dostosowaną wersję dostosowaną do konkretnego wewnętrznego procesu (np. zamówień lub dostarczania sprzętu), prosimy o kontakt w celu uzgodnienia.
Design Thinking: Empatia i Definiowanie dla Klientów Wewnętrznych
7 godzinDesign Thinking to metodologia skoncentrowana na człowieku, która rozwiązuje problemy poprzez empatię, definiowanie, generowanie pomysłów, prototypowanie i testowanie. Skupienie się na pierwszych dwóch etapach — Empatii i Definiowaniu — pomaga zespołom lepiej zrozumieć klientów wewnętrznych i zdefiniować właściwe problemy do rozwiązania.
To szkolenie prowadzone przez instruktora, na żywo (online lub na miejscu), skierowane jest do zespołów i liderów na poziomie początkującym i średnio zaawansowanym, którzy chcą wzmocnić swoje relacje z klientami wewnętrznymi, zmniejszyć opór przed zmianami i poprawić efektywność operacyjną poprzez praktyczne, współpracujące metody.
Po zakończeniu szkolenia uczestnicy będą mogli:
- Wykorzystywać techniki aktywnego słuchania i przeprowadzania wywiadów, aby zbierać wartościowe spostrzeżenia na temat klientów wewnętrznych.
- Tworzyć mapy empatii i rejestrować potrzeby oraz bolączki użytkowników.
- Różnicować rzeczywiste problemy od postrzeganych, korzystając z narzędzi takich jak 5 Why i drzewa problemów.
- Tworzyć jasne, możliwe do realizacji sformułowania problemów (POV), które kierują pracą nad rozwiązaniami.
Format kursu
- Interaktywny wykład i dyskusja.
- Praktyczne ćwiczenia i odgrywanie ról.
- Warsztaty grupowe i sesje feedbacku plenarnego.
Opcje dostosowania kursu
- Aby zamówić wersję dostosowaną do konkretnego procesu wewnętrznego (np. zamówień lub dostarczania sprzętu), prosimy o kontakt w celu ustalenia szczegółów.
Warsztat Design Thinking dla programistów
14 godzinW tym prowadzonym przez instruktora, żywym warsztacie szkoleniowym w Polsce (online lub na miejscu), uczestnicy nauczą się, jak zastosować pięć etapów Design Thinking, aby lepiej zrozumieć problemy doświadczane przez użytkowników końcowych produktu lub usługi, a następnie opracować najlepsze podejście do ich rozwiązania.
Pod koniec szkolenia uczestnicy będą mogli:
- Stosować kreatywne strategie, aby dopasować potrzeby klientów do technologicznie wykonalnych rozwiązań.
- Opracować strategię zwiększenia wartości dla klienta i ulepszenia oferty produktów i usług.
Design Thinking: Metodologie Innowacji
24 godzinTo szkolenie prowadzone przez instruktora, na żywo w Polsce (online lub na miejscu), skierowane jest do profesjonalistów na poziomie początkującym i średnio zaawansowanym, którzy chcą zrozumieć i stosować metodologie Design Thinking w celu napędzania innowacji i ulepszania rozwiązań biznesowych.
Pod koniec szkolenia uczestnicy będą w stanie:
- Zrozumieć podstawowe zasady Design Thinking i jego rolę w innowacjach.
- Stosować pięć faz Design Thinking w rozwiązywaniu problemów.
- Wykorzystywać techniki i narzędzia generowania pomysłów, aby pobudzać kreatywność.
- Wdrażać strategie Design Thinking w celu ulepszania procesów i zwiększania efektywności.
Innowacyjne Przywództwo poprzez Design Thinking
14 godzinTo szkolenie prowadzone przez instruktora, na żywo w Polsce (online lub na miejscu), jest skierowane do liderów i specjalistów HR na poziomie podstawowym, którzy chcą nauczyć się i zastosować metodologie Design Thinking, aby wspierać innowacje, poprawić umiejętności rozwiązywania problemów i skutecznie angażować zespoły.
Pod koniec szkolenia uczestnicy będą mogli:
- Wyposażyć uczestników w narzędzia i metodologie wspierające innowacje i zaangażowanie zespołu.
- Rozwinąć umiejętności w zakresie mapowania empatii, generowania pomysłów i prototypowania w celu rozwiązywania złożonych wyzwań.
- Zastosować zasady Design Thinking w scenariuszach przywódczych i HR.
- Promować kulturę innowacji w zespołach technologicznych.
Design Thinking
4 godzinPrzegląd:
Proces Design Thinking (DT) składa się z pięciu etapów (empatia, definiowanie problemu, generowanie pomysłów, prototypowanie, testowanie).
W coraz bardziej złożonym świecie mierzymy się z problemami, które mogą wymagać specjalnych podejść. Design Thinking pomaga radzić sobie ze złożonymi problemami. Opanowanie design thinking pomaga skutecznie radzić sobie ze złożonymi problemami, lepiej komunikować się, efektywnie przekonywać, poprawiać wyniki biznesowe oraz doskonalić zachowania i wyniki organizacyjne i osobiste.
- Jak działa DT: uczenie się od ludzi i problemu, znajdowanie wzorców, projektowanie modelu (dryf modelu), testowanie modelu, ocena modelu i przeprojektowanie.
- Związek między DT, innowacjami a przedsiębiorczością.
- Metody i narzędzia DT: persona, mapa interesariuszy, mapa podróży klienta, schemat usługi, innowacja modelu biznesowego.
- Zastosowanie DT: nastawienie projektowe, innowacje disruptywne, podejście iteracyjne, technika szacowania zwinnego, myślenie krytyczne, rozwiązywanie problemów, praca zespołowa, gotowość do przywództwa, umiejętności komunikacyjne, biegłość technologiczna, myślenie przyszłościowe, kompetencje międzykulturowe i etyczne, inteligencja emocjonalna, samoświadomość, umiejętności negocjacyjne, rozwiązywanie konfliktów.
Cele:
- Zrozumienie podstaw i niuansów DT
- Eksploracja kluczowych koncepcji, czynników, teorii, typów i modeli w DT
- Eksperymentowanie, doświadczanie i praktykowanie DT
Przebieg:
To jednodniowy (4-godzinny) kurs szkoleniowy, który składa się z:
- wykładów (40% - prezentacja teorii, koncepcji, modeli i interakcji),
- ćwiczeń grupowych (30% - dynamika grup, gry, dyskusje grupowe i ćwiczenia symulujące rozwiązywanie konfliktów),
- zadań indywidualnych (15% - pisanie, projektowanie i dyskusje w parach)
- oraz innych aktywności (15% - filmy, czytanie).
Uwaga: ze względu na charakter kursu minimalna liczba uczestników to 3 osoby
Podstawy Design Thinking
14 godzinW coraz bardziej złożonym świecie mierzymy się z problemami, które mogą wymagać specjalnych podejść. Design Thinking pomaga radzić sobie ze złożonymi problemami. Opanowanie design thinking pozwala skutecznie rozwiązywać skomplikowane problemy, lepiej komunikować się, efektywniej przekonywać, poprawiać wyniki biznesowe oraz wzmacniać zachowania i wyniki organizacyjne i osobiste.
Cele programu:
- Wprowadzenie do Design Thinking i jego zastosowania w różnych branżach
- Identyfikacja korzyści płynących z Design Thinking i jego znaczenia w rozwiązywaniu problemów
- Zrozumienie znaczenia klienta w Design Thinking
- Poznanie narzędzi wykorzystywanych w Design Thinking i sposobów ich zastosowania
Design Thinking - kreatywne łamanie schematów
14 godzinDesign Thinking jest uznaną na świecie metodą tworzenia innowacyjnych usług, procesów i produktów.
W centrum Design Thinking jest człowiek. Istotą metody jest właściwie zdefiniowany problem oraz skoncentrowanie na realnych potrzebach końcowego użytkownika, Świadomość tej istotnej różnicy ogranicza ryzyko porażki.
Celem głównym szkolenia jest poznanie praktycznego wymiaru metody w codziennej pracy.
Wzorce projektowe w C#
14 godzinGrupa docelowa:
Lider zespołu technicznego, Programista
Cel szkolenia:
Celem szkolenia jest zdobycie umiejętności projektowania zaawansowanych struktur rozwojowych/projektowych w C#.
Podczas kursu uczestnicy zapoznają się z zasobami MSDN oraz narzędziami wspierającymi proces rozwoju, takimi jak Microsoft Visual Studio, ReSharper.
Wzorce projektowe (GoF) dla Javy
21 godzinTen prowadzony przez instruktora, żywy trening w Polsce (online lub na miejscu) jest skierowany do programistów Javy na poziomie średniozaawansowanym, którzy chcą zastosować wzorce projektowe w celu poprawy struktury, utrzymywalności i skalowalności oprogramowania.
Po zakończeniu tego szkolenia uczestnicy będą w stanie:
- Zrozumieć cel i korzyści wzorców projektowych.
- Skutecznie stosować wzorce kreacyjne, strukturalne i behawioralne w Javie.
- Poprawić możliwość ponownego użycia kodu, skalowalność i utrzymywalność.
- Refaktoryzować istniejące bazy kodu przy użyciu wzorców projektowych.