{"id":229101,"date":"2022-11-10T10:41:00","date_gmt":"2022-11-10T07:41:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229101"},"modified":"2022-11-11T11:20:17","modified_gmt":"2022-11-11T08:20:17","slug":"czy-powinnismy-pozwolic-narzedziom-dyktowac-nasze-projekty","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/czy-powinnismy-pozwolic-narzedziom-dyktowac-nasze-projekty\/","title":{"rendered":"Czy powinni\u015bmy pozwoli\u0107 narz\u0119dziom dyktowa\u0107 nasze projekty?"},"content":{"rendered":"\n<p>Czy ma sens u\u017cywanie innego stosu programistycznego lub zestawu narz\u0119dzi w zale\u017cno\u015bci od typu u\u017cywanego projektu, nawet je\u015bli jest on oparty na WordPressie?<\/p>\n<p>Aby nada\u0107 troch\u0119 wi\u0119cej kontekstu, pisa\u0142em zar\u00f3wno o u\u017cywaniu narz\u0119dzi takich jak <a href=\"https:\/\/codekitapp.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">CodeKit<\/a> (kt\u00f3ra \u0142\u0105czy r\u00f3\u017cne narz\u0119dzia, aby usprawni\u0107 rozw\u00f3j).<\/p>\n<p>M\u00f3wi\u0142em r\u00f3wnie\u017c o u\u017cywaniu takich rzeczy jak <a href=\"https:\/\/circleci.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">CircleCI<\/a>, kt\u00f3re s\u0105 u\u017cywane w \u015brodowiskach klasy korporacyjnej (ale dzia\u0142aj\u0105 dobrze r\u00f3wnie\u017c w przypadku mniejszych projekt\u00f3w).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166116-61e78e2d8d30d.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166116-61e78e2d8d30d.png\" alt=\"Czy powinni\u015bmy pozwoli\u0107 narz\u0119dziom dyktowa\u0107 nasze projekty?\"><\/a><\/p>\n<p>Wi\u0119c je\u015bli chodzi o prac\u0119 w pojedynk\u0119 lub z zespo\u0142em, co jest najlepsz\u0105 rzecz\u0105 do zrobienia?<\/p>\n<p>Ostatecznie jest to g\u0142\u00f3wnie kwestia tego, jak najlepiej radzi\u0107 sobie z projektami, gdy pracujesz jako freelancer lub w zespole.<\/p>\n<p>Og\u00f3lnie rzecz bior\u0105c, mam tendencj\u0119 do bycia fanem \u2013 lub kiedy\u015b by\u0142em fanem \u2013 posiadania sp\u00f3jnego zestawu narz\u0119dzi, kt\u00f3re s\u0105 u\u017cywane i stosowane w ka\u017cdym projekcie.<\/p>\n<p>Na przyk\u0142ad, by\u0107 mo\u017ce projekt b\u0119dzie zawiera\u0142 nast\u0119puj\u0105ce elementy:<\/p>\n<ul>\n<li><a href=\"https:\/\/tommcfarlin.com\/php-codesniffer-with-composer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHPCS<\/a> ze standardami kodowania WordPress lub z <a href=\"https:\/\/wordpress.mediadoma.com\/pl\/korzystanie-z-psr-w-porownaniu-ze-standardami-kodowania-wordpress\/\" title=\"PSR\">PSR<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.mediadoma.com\/pl\/skupiona-na-wordpressie-ciagla-integracja-z-circleci\/\" title=\"PHPMD\">PHPMD<\/a><\/li>\n<li><a href=\"https:\/\/eslint.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">ESLint<\/a><\/li>\n<li>Okr\u0105gCI<\/li>\n<li>I wi\u0119cej.<\/li>\n<\/ul>\n<p>Z drugiej strony inny zestaw narz\u0119dzi mo\u017ce wygl\u0105da\u0107 tak:<\/p>\n<ul>\n<li>PHPCS ze standardami kodowania WordPress lub z PSR<\/li>\n<li>CodeKit (ze wszystkim, co zawiera)<\/li>\n<li>Alternatywne narz\u0119dzie do wdra\u017cania (poprzez S\/FTP lub inne podobne narz\u0119dzia)<\/li>\n<li>I wi\u0119cej.<\/li>\n<\/ul>\n<p>Oczywi\u015bcie b\u0119dziemy u\u017cywa\u0107 czego\u015b takiego jak kontrola \u017ar\u00f3d\u0142a, niezale\u017cnie od pozosta\u0142ych dost\u0119pnych narz\u0119dzi. Warto jednak rozwa\u017cy\u0107, w jaki spos\u00f3b u\u017cywamy kontroli \u017ar\u00f3d\u0142a podczas wdra\u017cania kodu.<\/p>\n<p>Na przyk\u0142ad, by\u0107 mo\u017ce jest troch\u0119 ka\u017cdego z powy\u017cszych, kt\u00f3re warto u\u017cy\u0107:<\/p>\n<ul>\n<li>PHPCS ze standardami kodowania WordPress lub z PSR<\/li>\n<li>PHPMD<\/li>\n<li>CodeKit<\/li>\n<li>Okr\u0105gCI<\/li>\n<li>I wi\u0119cej.<\/li>\n<\/ul>\n<p>Chodzi o to, \u017ce nie ma jednego \u201ez\u0142otego zestawu narz\u0119dzi&quot;, kt\u00f3rego mo\u017cna u\u017cy\u0107, ale jest zestaw narz\u0119dzi, kt\u00f3re pomagaj\u0105 usprawni\u0107 rozw\u00f3j, co pozwala nam skupi\u0107 si\u0119 \u015bci\u015ble na tym, co to jest, na rozwi\u0105zywaniu problem\u00f3w naszych klient\u00f3w przez ca\u0142y czas robienia rzeczy \u0142atwiej dla nas.<\/p>\n<h3>Jaki jest sens?<\/h3>\n<p>Wiem: to wszystko brzmi tak, jakbym ta\u0144czy\u0142 wok\u00f3\u0142 pomys\u0142u, kt\u00f3ry jest mniej rozwini\u0119ty ni\u017c praca nad pewnym.<\/p>\n<p>Ale nie jestem.<\/p>\n<p>Zamiast tego, oto sk\u0105d pochodz\u0119: W tej chwili <a href=\"https:\/\/pressware.co\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">m\u00f3j zesp\u00f3\u0142<\/a> i ja mamy kilka realizowanych projekt\u00f3w, a jeden z nich u\u017cywa jednego zestawu narz\u0119dzi, podczas gdy drugi u\u017cywa zupe\u0142nie innych zestaw\u00f3w narz\u0119dzi.<\/p>\n<p>Podczas pracy odkrywam, \u017ce s\u0105 pewne aspekty ka\u017cdego, kt\u00f3re lubi\u0119. I chocia\u017c nie jestem przekonany do posiadania szerokiej gamy narz\u0119dzi, z kt\u00f3rych powinni\u015bmy korzysta\u0107 bez powodu, nie jestem r\u00f3wnie\u017c pewien, czy posiadanie standardowego zestawu narz\u0119dzi ma sens niezale\u017cnie od projektu.<\/p>\n<p>Czy zatem powinni\u015bmy pozwoli\u0107 narz\u0119dziom dyktowa\u0107 nasze projekty? By\u0107 mo\u017ce pozwolimy projektowi dyktowa\u0107 narz\u0119dzia, kt\u00f3rych u\u017cywamy, zamiast wyposa\u017ca\u0107 projekt w predefiniowany zestaw narz\u0119dzi.<\/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>Czy zatem powinni\u015bmy pozwoli\u0107 narz\u0119dziom dyktowa\u0107 nasze projekty? By\u0107 mo\u017ce pozwolimy projektowi dyktowa\u0107 narz\u0119dzia, kt\u00f3rych u\u017cywamy, zamiast wyposa\u017ca\u0107 projekt w predefiniowany zestaw narz\u0119dzi.<\/p>\n","protected":false},"author":1,"featured_media":166117,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[721],"tags":[1169],"class_list":["post-229101","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-deweloper","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/229101","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=229101"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/229101\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/166117"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=229101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=229101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=229101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}