Wzorce projektowe - napisanie kodu na podstawie schematów wzorca

0

Witam

Mam problem i mam nadzieje że pomożecie mi go rozwiązać, bo prawdę powiedziawszy nie mam pomysłu jak się za to zabrać.
Otuż na studiach podczas zaliczenia wykładowca dał mi następujące zadanie:

  1. Proszę napisać kod do poniższych wzorców (przedstawionych na obrazkach)
  2. Proszę w komentarzach wyjaśnić swój kod
  3. Proszę w języku naturalnym wyjaśnić semantykę poniższych obrazków

Pod rysunkami była jeszcze informacja że kod może być napisany w dowolnym języku programowania, ale ponieważ ja do tej pory pisałem wszystko tylko w delphi więc tutaj proszę was o pomoc.

user image

user image

0

W linkach poniżej masz przykładowy kod dla wzorców których szukasz. Nie jest on idealny, ale powinien wystarczyć do zrozumienia idei.
http://stackoverflow.com/questions/6873469/delphi-7-trying-to-understand-the-mvc-pattern
http://www.castle-cadenza.demon.co.uk/wrapper.htm

0

Dzięki za linki do kodu.

Jeśli można, to jeszcze prosiłbym aby ktoś ten kod przekopiował tutaj, jednocześnie uzupełniając go o komentarz (wyjaśniający co robią poszczególne instrukcje w tym konkretnym przypadku)

3

Zaczyna śmierdzieć wyłudzeniem gotowca.

2

@viper_2000: nie umiesz skorzystać z podpowedzi innych. A gotowców raczej nie dajemy poza prostymi kodami. Także napisz w dziale http://4programmers.net/Forum/Ogłoszenia_drobne i zaproponuj tam kwotę za zrobienie tego co chcesz osiągnąć za Ciebie, opisując problem. Ewentualnie napisz czego konkretnie nie rozumiesz. Bo jeśłi nie ogarniasz wszystkiego to chyba trzeba się podszkolić z podstaw języka :/

0
olesio napisał(a):

napisz w dziale http://4programmers.net/Forum/Ogłoszenia_drobne i zaproponuj tam kwotę za zrobienie tego co chcesz osiągnąć za Ciebie

  • Naprawdę sądzisz że ktoś będzie w stanie pójść za mnie na uczelnie i zaliczyć ten przedmiot za mnie ??
olesio napisał(a):

napisz czego konkretnie nie rozumiesz. Bo jeśłi nie ogarniasz wszystkiego to chyba trzeba się podszkolić z podstaw języka

  • Moje dotychczasowe programowanie w delphi ograniczało się do poukładania elementów graficznych na templatce i wpisaniem (pod te elementy graficzne) kodu który miał się wykonać. Programując w delphi nigdy nie musiałem tworzyć własnych klas czy obiektów I ZA TO NAJBARDZIEJ LUBIE TEN JĘZYK PROGRAMOWANIA. A w tym kodzie widzę że są tworzone jakieś dodatkowe klasy, nie wiem tylko po co i co tak naprawdę mają one robić. A jak by tego było mało, opis który jest zamieszczony (przy kodzie) w podanych linkach NIE jest napisany w języku polskim :/

A ja nie mam niestety na tyle czasu aby samemu dochodzić do tego o co w tym kodzie tak naprawdę chodzi, dlatego bardzo proszę o pomoc.

1

NIE jest napisany w języku polskim :/

To moze przepisz sie na polonistyke? Tam bedzie po polsku duzo, a szkoda chyba zycia marnowac.

0
n0name_l napisał(a):

To moze przepisz sie na polonistyke? Tam bedzie po polsku duzo, a szkoda chyba zycia marnowac.

Po pierwsze - na zmianę decyzji jest już trochę za późno, potrzebuje zaliczyć jeszcze ten ostatni przedmiot i przede mną obrona pracy magisterskiej
Po drugie - polonistyka mnie nie interesuje
A po trzecie - po co informatykowi (zajmującemu się tworzeniem i pozycjonowaniem stron i sklepów internetowych) studia polonistyczne ?

1
viper_2000 napisał(a):

po co informatykowi (zajmującemu się tworzeniem i pozycjonowaniem stron i sklepów internetowych) studia polonistyczne ?

No i w ogóle po co informatykowi programowanie?

3

Programując w delphi nigdy nie musiałem tworzyć własnych klas czy obiektów I ZA TO NAJBARDZIEJ LUBIE TEN JĘZYK PROGRAMOWANIA.

To albo pisałes same hello-worldy, albo kod był bardzo kiepski, wręcz typowo strukturalny o globalnym zasięgu; Zaś obiekty tworzyć musiałeś żeby w ogóle skorzystać z tych gotowych klas; Chyba że korzystałeś jedynie z metod statycznych;

A w tym kodzie widzę że są tworzone jakieś dodatkowe klasy, nie wiem tylko po co i co tak naprawdę mają one robić.

Bo nie znasz kompletnie programowania obiektowego, choć z niego jak piszesz korzystałeś; Najgorsze jest to, że chcesz tworzyć strony internetowe, ale do obiektowości jakoś Ci się nie spieszy; I do tego bronisz się przed angielskim, jakby to jakieś zło wcielone było;

A jak by tego było mało, opis który jest zamieszczony (przy kodzie) w podanych linkach NIE jest napisany w języku polskim

Jak czegoś nie rozumiesz, to są od tego translatory, np. od Google czy Bing, więc nie musisz ślęczeć nad słownikiem i szukać słowo po słowie;


Jeżeli chcesz cokolwiek umieć to zacznij się uczyć - zapoznaj się z programowaniem obiektowym, bo Delphi nie ma monopolu na klasy, a także szlifuj angielski, bo programista/webmaster bez znajomości angielskiego będzie miał baaardzo ciężko.

0
furious programming napisał(a):

To albo pisałes same hello-worldy,

  • dobry żart
furious programming napisał(a):

albo kod był bardzo kiepski

  • nie wiem czy kiepski, na pewno działający :)
furious programming napisał(a):

Najgorsze jest to, że chcesz tworzyć strony internetowe, ale do obiektowości jakoś Ci się nie spieszy

  • do tej pory jakoś nie musiałem nic programować przy robieniu stron internetowych. Do wszystkich stron jakie do tej pory robiłem wystarczyła mi znajomość:
  • Gotowych systemów CMS
  • HTMLa
  • i CSSa
furious programming napisał(a):

I do tego bronisz się przed angielskim, jakby to jakieś zło wcielone było

  • nie bronie się tylko znam go stosunkowo słabo (mój zasób słów nie jest powalający). Oczywiście zdaję sobie sprawę że w najbliższym czasie będę musiał intensywnie nad tym popracować, już nawet zapisałem się na wakacyjny kurs z j.Angielskiego
furious programming napisał(a):

Jak czegoś nie rozumiesz, to są od tego translatory, np. od Google czy Bing, więc nie musisz ślęczeć nad słownikiem i szukać słowo po słowie

  • a korzystałeś kiedyś z tych translatorów ?? Wiesz jak one tłumaczą ?? Czy ty byłbyś w stanie polegać na tłumaczeniach jakie oferuje Ci np. Google Translator ??
furious programming napisał(a):

Jeżeli chcesz cokolwiek umieć to zacznij się uczyć - zapoznaj się z programowaniem obiektowym, bo Delphi nie ma monopolu na klasy

  • Jeśli kiedykolwiek będę myślał o programowaniu na poważnie (czyt. zarobkowo) to z całą pewnością będę się w tej materii szkolił i uzupełniał swoje braki, na dzień dzisiejszy chcę jedynie zaliczyć ten ostatni przedmiot i zakończyć studia. Zaliczenie mam w najbliższą sobotę i do tego czasu raczej nie zdążę nauczyć się programowania obiektowego.
    Dlatego mam nadzieję że w końcu przestaniecie się ze mnie nabijać i pomożecie mi to zrozumieć żebym mógł to zaliczyć
furious programming napisał(a):

szlifuj angielski, bo programista/webmaster bez znajomości angielskiego będzie miał baaardzo ciężko.

  • wiem, odczułem już to niejednokrotnie :( mam nadzieje że to się poprawi przez wakacje
0
  • nie wiem czy kiepski, na pewno działający

Nie miałem na myśli poprawności wykonania kodu, tylko jego ilości, widoczności itd., gdzie obie te cechy można znacznie zredukować umiejętnie korzystając z programowania obiektowego;

  • do tej pory jakoś nie musiałem nic programować przy robieniu stron internetowych. Do wszystkich stron jakie do tej pory robiłem wystarczyła mi znajomość: [...]

No to robiłeś strony rodem z lat 90 - HTML; Jak przyjdzie czas na oskryptowanie strony, to przypomnisz sobie ten wątek :]

  • a korzystałeś kiedyś z tych translatorów ?? Wiesz jak one tłumaczą ?? Czy ty byłbyś w stanie polegać na tłumaczeniach jakie oferuje Ci np. Google Translator ??

Oczywiście - korzystam praktycznie codziennie (głównie z Google, dlatego że ma możliwość wyboru synonimów i poprawiania wyniku translacji), dlatego że angielski znam średnio i czasem nie do końca rozumiem jakieś zdanie np. w specyfikacji, dokumentacji czy choćby w postach na zagramanicznych forach; Tłumaczenia wcale nie są takie złe, jednak każdy Polak znający swój język nie powinien mieć problemów ze zrozumieniem "Kali pić, Kali jeść";

Dlatego mam nadzieję że w końcu przestaniecie się ze mnie nabijać i pomożecie mi to zrozumieć żebym mógł to zaliczyć

Nawet w postach z docinkami można znaleźć cenne informacje, które pomogą Ci zrozumieć pewne rzeczy.

0

o tempora o mores

3

Jakim urwał cudem gość robi magisterkę nie znając programowania obiektowego???

1

Pachnie mi to trollingiem - konto 39 postów, założone w 2005 roku (prawie 10 lat), a średnia postów około 3-4/rok.
Powiedzcie, że to troll? Magisterka bez znajomości podstaw OOP?

4

Żeby nie było, że nie pomogłem to:

  1. to się opiera na wzorcu MVC, jest maaasę rzeczy po polsku o tym.
  2. musisz wiedzieć na czym polega diagram UML (do zrozumienia zapisu) + http://pl.wikipedia.org/wiki/Adapter_(wzorzec_projektowy)
    Martin Fowler zaś pisze dużo o wzorcach projektowych (po angielsku, ale pewnie jakieś tłumaczenia możesz znaleźć).

Dlatego mam nadzieję że w końcu przestaniecie się ze mnie nabijać i pomożecie mi to zrozumieć żebym mógł to zaliczyć

Jeśli teraz robisz magisterkę to musiałeś zrobić wcześniej licencjata/inżyniera? A w jakiej szkole zdawałeś? Publicznej czy prywatnej? Jakie miasto? Bo wiesz, że to strasznie źle świadczy o poziomie uczelni wyższych w naszym kraju, że osoba bez podstawowej wiedzy (i która w sumie nawet nie interesuje się informatyka, tylko pragnie zaliczyć, najlepiej z gotowca), ma już wykształcenie wyższe z informatyki.

Dyplom to bzdura ;)

A po trzecie - po co informatykowi (zajmującemu się tworzeniem i pozycjonowaniem stron i sklepów internetowych) studia polonistyczne ?

Masz rację. Do tego wystarczy spokojnie gimnazjum, nawet matury nie trzeba mieć ;)

a korzystałeś kiedyś z tych translatorów ?? Wiesz jak one tłumaczą ?? Czy ty byłbyś w stanie polegać na tłumaczeniach jakie oferuje Ci np. Google Translator ??

w dupie się poprzewracało od dobrobytu... kiedyś nie było Google Translate i się brało papierowy(!!) słownik i sprawdzało co drugie słowo angielskie. No i nie było stałych łączy, internet się właczało np. raz dziennie, albo w ogóle go nie było w domu. Ale też nie było też na tyle rozwiniętej polskiej społeczności, żeby kogoś spytać na forum po polsku (więc z musu pisało się pytanie na anglojęzycznej grupie, albo szukało na anglojęzycznej stronie). Często też głównym źródłem informacji był anglojęzyczny Help, który się właczało w Delphi pod klawiszem F1.

Ale jakoś ludzie żyli i programowali. A teraz jest wielki problem, bo jest Internet, stałe łącza, Google, Wikipedia, tutoriale na Youtube, pełno treści w necie, automatyczne tłumaczenia, a dzisiejsze pokolenie dobrobytu ma wielki problem, bo jest im za łatwo zdobyć informację.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.