{"id":229404,"date":"2022-11-18T15:17:00","date_gmt":"2022-11-18T12:17:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229404"},"modified":"2022-11-09T06:53:07","modified_gmt":"2022-11-09T03:53:07","slug":"programowanie-obiektowe-w-wordpress-zrozumienie-oczekiwan-klientow","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/programowanie-obiektowe-w-wordpress-zrozumienie-oczekiwan-klientow\/","title":{"rendered":"Programowanie obiektowe w WordPress: zrozumienie oczekiwa\u0144 klient\u00f3w"},"content":{"rendered":"\n<p>Poniewa\u017c kontynuujemy dyskusj\u0119 na temat <a href=\"https:\/\/tommcfarlin.com\/tag\/object-oriented-programming-in-wordpress\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">programowania obiektowego w WordPressie<\/a>, wa\u017cne jest, aby\u015bmy nie wyprzedzali samych siebie, je\u015bli chodzi o tworzenie produktu dla kogo\u015b innego.<\/p>\n<p>Tak cz\u0119sto \u0142atwo jest:<\/p>\n<ol>\n<li>us\u0142ysze\u0107, co m\u00f3wi klient,<\/li>\n<li>zbudowa\u0107 co\u015b na podstawie tego, co us\u0142yszeli\u015bmy,<\/li>\n<li>przeka\u017c go wspomnianemu klientowi.<\/li>\n<\/ol>\n<p>Ale jest w tym o wiele wi\u0119cej. Troch\u0119 ta\u0144czy\u0142em wok\u00f3\u0142 tego w poprzednich postach z tej serii; jednak chcia\u0142bym zacz\u0105\u0107 dr\u0105\u017cy\u0107 do tego, co to znaczy s\u0142ysze\u0107:<\/p>\n<ol>\n<li>Co m\u00f3wi klient,<\/li>\n<li>Opracuj zestaw wymaga\u0144,<\/li>\n<li>A nast\u0119pnie stw\u00f3rz wok\u00f3\u0142 tego p\u0119tle sprz\u0119\u017cenia zwrotnego.<\/li>\n<\/ol>\n<p>Ostatecznie chcemy mie\u0107 pewno\u015b\u0107, \u017ce ludzie, dla kt\u00f3rych pracujemy i rozwi\u0105zania, kt\u00f3re tworzymy, naprawd\u0119 s\u0105 rozwi\u0105zaniami, a nie przeszkodami lub przeszkodami, przez kt\u00f3re musz\u0105 przeskoczy\u0107.<\/p>\n<p>Co wi\u0119cej, my\u015bl\u0119, \u017ce nie wystarczy, aby klient po prostu cieszy\u0142 si\u0119 do\u015bwiadczeniem swojego produktu ko\u0144cowego, ale r\u00f3wnie\u017c z pracy z jednym (lub tymi) buduj\u0105cymi rozwi\u0105zanie.<\/p>\n<p>Powiedziawszy to, przyjrzyjmy si\u0119, co to znaczy s\u0142ucha\u0107 tego, co m\u00f3wi\u0105 i stamt\u0105d wyj\u015b\u0107.<\/p>\n<h2>Zrozumienie oczekiwa\u0144 klient\u00f3w<\/h2>\n<p>Za ka\u017cdym razem, gdy czytasz ksi\u0105\u017cki lub inne materia\u0142y dotycz\u0105ce tego rodzaju rzeczy, cz\u0119sto sprawia to, \u017ce jedna z dw\u00f3ch stron staje si\u0119 \u201ez\u0142ym facetem&quot;. Nie zawsze, ale czasami sprawia, \u017ce:<\/p>\n<ul>\n<li>klient wydaje si\u0119 ignorantem, o czym m\u00f3wi,<\/li>\n<li>lub sprawia, \u017ce \u200b\u200bprogramista wydaje si\u0119 by\u0107 palantem, poniewa\u017c zachowuje si\u0119 jak kto\u015b, kto wie wi\u0119cej na dany temat.<\/li>\n<\/ul>\n<p>A co z trzeci\u0105 opcj\u0105, w kt\u00f3rej klient ma jasny obraz tego, czego chce, a programi\u015bci s\u0105 gotowi s\u0142ucha\u0107 i wsp\u00f3\u0142pracowa\u0107 z klientem, aby co\u015b zbudowa\u0107?<\/p>\n<p>Jasne, po drodze nast\u0105pi\u0105 wyja\u015bnienia i b\u0119d\u0105 musia\u0142y zosta\u0107 zdefiniowane terminy, a pewna \u201erekalibracja&#8221; kalendarza rozwoju mo\u017ce nawet by\u0107 tego cz\u0119\u015bci\u0105.<\/p>\n<p>Ale najwa\u017cniejsze jest to: \u017cadna partia nie powinna dzia\u0142a\u0107 przeciwko drugiej. Zamiast tego chodzi o wsp\u00f3ln\u0105 prac\u0119 nad rozwi\u0105zaniem. Jasne, wymaga komunikacji (w czym programi\u015bci nie zawsze s\u0105 \u015bwietni, z mojego do\u015bwiadczenia, ale nie ma powodu, dla kt\u00f3rego nie mo\u017ce by\u0107 lepiej).<\/p>\n<h3>Co m\u00f3wi klient? (Co m\u00f3wi programista?)<\/h3>\n<p>Ilekro\u0107 si\u0119 spotykacie, prawdopodobnie my\u015blicie o tym samym, poniewa\u017c ka\u017cdy z was m\u00f3wi innym j\u0119zykiem i ka\u017cdy z was my\u015bli, \u017ce to drugie powiedzenie jest <a href=\"https:\/\/www.google.com\/search?client=safari&#038;rls=en&#038;q=define+jargon&#038;ie=UTF-8&#038;oe=UTF-8\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">\u017cargonem<\/a>.<\/p>\n<p>I to nie jest z\u0142e.<\/p>\n<p>Klienci maj\u0105 spos\u00f3b na m\u00f3wienie o tym, czego chc\u0105, a programi\u015bci maj\u0105 spos\u00f3b na m\u00f3wienie o tym, jak b\u0119d\u0105 dostarcza\u0107.<\/p>\n<h3>Warunki, kt\u00f3rych u\u017cywamy<\/h3>\n<p>Ale mo\u017ce by\u0107 wsp\u00f3lny cel.<\/p>\n<blockquote>\n<p>Postaraj si\u0119 o opis problemu, kt\u00f3ry pr\u00f3bujesz rozwi\u0105za\u0107. Postaraj si\u0119 to zrobi\u0107 w kategoriach laik\u00f3w, aby projekt by\u0142 zgodny z celem i funkcjonalno\u015bci\u0105 rozwi\u0105zania.<\/p>\n<\/blockquote>\n<p>Nie s\u0105dz\u0119, czy to zadzia\u0142a dla wszystkich, ale jest to pierwsza rzecz, kt\u00f3r\u0105 polecam zrobi\u0107, gdy siedzisz z klientem.<\/p>\n<p>Jak zobaczysz w dalszej cz\u0119\u015bci tych post\u00f3w, warto opracowa\u0107 kilka zda\u0144, kt\u00f3rych mo\u017cesz u\u017cy\u0107 na pocz\u0105tku swojej pracy, do kt\u00f3rych mo\u017cesz si\u0119 odwo\u0142a\u0107 za ka\u017cdym razem, gdy podejmujesz decyzj\u0119.<\/p>\n<p>Innymi s\u0142owy, Ty (i oni) mo\u017cecie zapyta\u0107:<\/p>\n<blockquote>\n<p>Czy to, nad czym pracuj\u0119, przyczynia si\u0119 do wsp\u00f3lnego celu?<\/p>\n<\/blockquote>\n<p>I tutaj mo\u017cesz okre\u015bli\u0107 podstawowy zestaw wymaga\u0144.<\/p>\n<h3>\u201eTo musi\u2026&#8221;<\/h3>\n<p>Je\u015bli chodzi o kupowanie czego\u015b, budowanie czego\u015b, proszenie o co\u015b, pragnienie czego\u015b lub cokolwiek innego, do\u015b\u0107 \u0142atwo jest zacz\u0105\u0107 od zdania \u201eChc\u0119, aby\u2026&#8221;<\/p>\n<p>Ale jest du\u017ca r\u00f3\u017cnica mi\u0119dzy \u201echc\u0119 to zrobi\u0107 [zrobi\u0107 co\u015b]&#8221; a \u201epotrzebuj\u0119 tego [aby co\u015b zrobi\u0107]&#8221;, a kiedy pracujesz w oprogramowaniu, og\u00f3lnie mo\u017cna \u015bmia\u0142o powiedzie\u0107, \u017ce rzeczy, kt\u00f3re s\u0105 potrzebne, s\u0105 kluczowe. do aplikacji. A rzeczy, kt\u00f3re s\u0105 po\u017c\u0105dane, to to, co przychodzi po zbudowaniu fundament\u00f3w aplikacji.<\/p>\n<p>To znaczy, jest to rozmowa o \u201etrzeba mie\u0107&#8221; i \u201echc\u0119 mie\u0107&#8221;. I wa\u017cne jest, aby prowadzi\u0107 rozmowy, aby mo\u017cna by\u0142o doj\u015b\u0107 do ostatecznego stwierdzenia wsp\u00f3lnego celu aplikacji.<\/p>\n<p>Gdy to nast\u0105pi, mo\u017cesz rozpocz\u0105\u0107 planowanie oprogramowania wok\u00f3\u0142 problemu klienta. I tu w gr\u0119 wchodzi zbieranie wymaga\u0144.<\/p>\n<h2>Opracowywanie wymaga\u0144<\/h2>\n<p>To, co Ty i klient dobrze rozumiecie, co nale\u017cy zbudowa\u0107, to czas na zestawienie wymaga\u0144.<\/p>\n<p>Ta cz\u0119\u015b\u0107 mo\u017ce by\u0107 fajniejsza ni\u017c si\u0119 wydaje. Wiem, wiem: brzmi jak praca domowa lub jakie\u015b zadanie, prawda? Ale nie jest. Zamiast tego bierze to, czego chc\u0105, co rozumiesz, t\u0142umaczy na wsp\u00f3lny j\u0119zyk, a nast\u0119pnie pisze dokument wyja\u015bniaj\u0105cy, co zrobi oprogramowanie.<\/p>\n<p>Jednak w zale\u017cno\u015bci od twojego do\u015bwiadczenia mo\u017ce to by\u0107 nudne. A przez nud\u0119 mam na my\u015bli jedn\u0105 z najgorszych cz\u0119\u015bci twojej pracy. Poza tym wymagania zawsze si\u0119 zmieniaj\u0105, prawda?<\/p>\n<p>Nie zawsze.<\/p>\n<p>Je\u015bli po\u015bwi\u0119cisz troch\u0119 czasu, aby zrozumie\u0107, czego chc\u0105 od samego pocz\u0105tku, wymagania nie musz\u0105 by\u0107 50-stronicowym dokumentem opisuj\u0105cym, jak ka\u017cdy pojedynczy modu\u0142 ma dzia\u0142a\u0107.<\/p>\n<p>Wiele ksi\u0105\u017cek dokumentuje to jako m\u00f3wi\u0105ce, \u017ce tak w\u0142a\u015bnie musi by\u0107. Ale w ci\u0105gu prawie dekady robienia tego, nigdy nie mia\u0142em czego\u015b tak d\u0142ugiego, a klienci generalnie byli niesamowicie wdzi\u0119czni, gdy zobaczyli kr\u00f3tk\u0105 list\u0119, kt\u00f3r\u0105 mo\u017cna poprawi\u0107 za po\u015brednictwem poczty e-mail lub Dokument\u00f3w Google, podpisa\u0107, a nast\u0119pnie nazwa\u0107 przenoszeniem projektu Naprz\u00f3d.<\/p>\n<p>Porozmawiam o tym wi\u0119cej w przysz\u0142o\u015bci, ale niezale\u017cnie od tego, jakie masz z\u0142e do\u015bwiadczenia, boisz si\u0119 lub niepokoisz, nie musisz siedzie\u0107. B\u0119dziemy o tym rozmawia\u0107 w tej serii.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Zrozumienie oczekiwa\u0144 klient\u00f3w jest tak samo wa\u017cne, jak zrozumienie przez klient\u00f3w, do czego jeste\u015b w stanie zrobi\u0107. I o tym jest w tym po\u015bcie.<\/p>\n","protected":false},"author":1,"featured_media":165308,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[721,897,845],"tags":[1169],"class_list":["post-229404","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-deweloper","category-kod","category-samouczki","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/229404","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/comments?post=229404"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/229404\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/165308"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=229404"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=229404"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=229404"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}