Szkolenie DDD - Bottega

Bambo
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Postów:779
0

https://bottega.com.pl/nabor-otwarty-ddd-online
Ktoś był? Wrażenia?

2k netto - 3 dni, 19% odliczę sobie to zapłacę 1,6k z hakiem. Szkolenie prowadzi Sławek S.

Ale chętnie posłucham opinii, bo na razie czytałem same dobre na innych stronach, ale to forum jest najbardziej krytyczne na świecie, więc tutaj będzie ostatni etap walidacji.

pozdr.

edytowany 2x, ostatnio: Bambo
Shalom
A dają po tym jakąś rangę? Apostoł, Kapłan? ;)
p_agon
Nie mam dwoch tysiecy zlotych :|. Slawomir S. ma jakis pseudonim?
Bambo
Xd wiedziałem, że jak się użyje tego magicznego 3litwrowego skrótu na D to się zlecą :D
Shalom
@Bambo: no ja widziałem ten drugi wątek, gdzie miałeś jakiś prosty model sklepu bez zadnej specjalnej logiki domenowej, a wyznawcy DDD zrobili z tego jakis cięzki hardkor który jeszcze twoje wnuki będą kończyć implementować ;)
UglyMan
Możesz zapytać autora @Sławomir Sobótka
UglyMan
@Shalom: to się chyba nazwy ewangelista:)
Bambo
Nie chcę być ewangelistą ;p bardziej chodzi mi o tą pragmatyczną część DDD, która mówi o tych wszystkich dobrych praktykach, które poznajemy w pierwszych latach nauki programowania. Widzicie .. niby na poczatku wujki boby i inne mówią, że klasy powinne mieć silną kohezję, wydaje się zrozumiałe, a potem jest spring i jest pytanie co to kohezja .. i wtedy wjeżdża DDD, który mówi o agregatach, czyli wg mnie prawie o tym samym
Bambo
Wydaje mi się tak na chłopski rozum, że ta "normalna" część DDD to po prostu pokazanie rozsądnych praktyk z początku nauki w kontekście złożonych procesów biznesowych zamiast kotków, piesków czy wyciskarek do soku
Shalom
Jak najbardziej się z tym zgadzam, tylko że ta "techniczna część" to jest po prostu nic innego jak OOP ;) A z DDD to jest trochę jak z programowaniem funkcyjnym, ma swoje plusy i wiele rzeczy ułatwia, ale potem wjeżdżają fanatycy i nagle masz kod którego bez doktoratu z teorii kategorii nie da sie sparsować bo ma 17 poziomów pośredniości i w sumie to jest kod który generuje kod który generuje kod twojej aplikacji ;) A co do samej "złożonej domeny" to na kilkudniowym kursie nie da się takie zaprezentować i koło sie zamyka :D
Bambo
W pierwszym momencie zastanawiałem się czy mówisz o takim fanatyku FP w szacie z tego forum ;p
Shalom
gdzie tam, jarek to jest pragmatyk ;)
WeiXiao
@Shalom: w ilu systemach/projektach wykorzystujących DDD siedziałeś?
Shalom
Ale takie "prawdziwe", religijne? To w żadnym, a nawet nigdy o takim nie słyszałem. Nawet na meetupach o DDD w Krakowie nikt się nigdy nie chciał pochwalić że osiągnął prawdziwy komunizm DDD. Ale chętnie zobaczyłbym kiedyś taki projekt. Polecasz jakąś firmę?
WeiXiao
a "nieprawdziwym", takim quasi-DDD? Polecasz jakąś firmę? może @Aventus cię poleci na rozmowę, ewentualnie zobacz gdzie ludzie z bottegi pracują, oni się chwalą że robią state of art :)
Shalom
A nieprawdziwy to nawet teraz mam w 2 projektach ;) Z podobnych rzeczy to prawdziwego Scruma też nigdy nie miałem :( co robić, jak żyć.
Aventus
@WeiXiao: zwróć uwagę że on wspomina inny wątek, w którym wyraźnie i nawet kilkukrotnie pisaliśmy że kolega niepotrzebnie sobie komplikuje trywialny problem, ale jak sam Bambo przyznał jemu bardziej chodziło o naukę mechanizmów, a więc siłą rzeczy chciał ten trywialny problem uczynić nietrywialnym. Dla tego a wyznawcy DDD zrobili z tego jakis cięzki hardkor to absurd, ale który mnie nie dziwi i nie raz już widziałem w wykonaniu tego jegomościa. Widać jak ktoś całe życie spędza w algorytmach to traci umiejętność czytania ze zrozumieniem i ma ograniczone perspektywy ;)
WeiXiao
@Shalom: a czasowo to ile będzie lat pracy z zastosowaniem DDD?
Shalom
@Aventus: może nie zrozumiałem intencji, ale zaczęło mi to wyglądać jak https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition ;) Nie chciałem nikogo urazić @WeiXiao na studiach chodziłem na różne meetupy na ten temat, a potem widziałem lepsze lub gorsze próby w CERNie i w ESO, bo to jedyne miejsca gdzie mam tyle złożoną domenę żeby poważnie się zastanowić jak to ogarnąć. Nawet przydałby mi sie teraz jakiś ewangelista DDD bo mam projekt w którym ~rok robiliśmy feasibility study, protypowanie, rozkminianie wymagań i ogarnianie czy w ogóle da się to napisać...
Aventus
@Shalom: tylko że prawie zawsze tam gdzie pojawia się temat DDD pojawiasz się i Ty nazywający ludzi udzielających się w dyskusji fanatykami albo ewangelistami. Akurat odnośnie moich wypowiedzi wystarczy poczytać ze zrozumieniem żeby zobaczyć że niejednokrotnie odradzałem niepotrzebnie komplikowanie problemu, czy też proponowałem łamanie pewnych "zasad" DDD tam gdzie ma to sens. Także daleko mi do fanatyka czy ewangelisty, tym bardziej że zawodowo zdecydowanie kieruje się znalezieniem odpowiedniego balansu i nie postrzegam wszystkiego jak przysłowiowe gwoździe...
Aventus
... Natomiast jeśli ktoś pyta np. o definicję agregatów lub prosi o pomoc w zrozumieniu tej koncepcji, to naturalnym jest że taką definicję mu podaję i tłumaczę z czym to się je. Zwyczajnie odpowiadam na pytanie dzieląc się wiedzą, a nie coś komuś narzucam.
UR
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 3 lata
  • Postów:360
3

A będzie sensowna domena do rozbicia?

Czy po raz tysięczny Orders i 3 agregaty na krzyż?

Bambo
Nie wiem ;p a byłeś, że wiesz?
UR
Jakbym był, to bym nie pytał. Dlatego się pytam, czy ktoś wie, czy mają coś więcej do zaoferowania, niż Order, Sales, Inventory i Shipping?
Bambo
Daje 90%, że jednak Order :(
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)