{"id":229571,"date":"2022-10-30T16:06:00","date_gmt":"2022-10-30T13:06:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229571"},"modified":"2022-11-09T08:31:39","modified_gmt":"2022-11-09T05:31:39","slug":"ereditare-progetti-wordpress-suggerimenti-per-lo-sviluppo","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/it\/ereditare-progetti-wordpress-suggerimenti-per-lo-sviluppo\/","title":{"rendered":"Ereditare progetti WordPress: suggerimenti per lo sviluppo"},"content":{"rendered":"\n<p>Se gestisci un&#8217;azienda che si concentra sia sullo sviluppo di soluzioni da zero sia sull&#8217;implementazione di una soluzione personalizzata nel contesto di progetti preesistenti (o forse entrambi), allora \u00e8 probabile che, a un certo punto, stato nella situazione di ereditare progetti WordPress.<\/p>\n<p>Affrontare i progetti da entrambe le maniglie comporta una serie di sfide \u2013 la maggior parte delle quali benvenute \u2013 ma sembra essere molto pi\u00f9 comune per le persone lamentarsi di lavorare con una base di codice preesistente.<\/p>\n<p>Non \u00e8 che non provo quella sensazione, ma penso che ci sia un livello di immaturit\u00e0 nel farlo. Da un lato, s\u00ec, alcune basi di codice sono assolutamente terribili. Ma poi alcune basi di codice non sono cos\u00ec male. In effetti, direi che sono solo un po&#8217; diversi da come lo sviluppereste.<\/p>\n<p>Questo \u00e8 un caso in cui entrano in gioco gli standard, ma per ora divago su questo.<\/p>\n<p>Diciamo quindi che stai ereditando progetti WordPress e non sei particolarmente entusiasta della base di codice con cui stai lavorando. Com&#8217;\u00e8 che puoi ancora goderti il \u200b\u200blavoro che stai facendo senza sentire il bisogno di criticare ogni aspetto di qualunque cosa tu abbia a che fare?<\/p>\n<h2>Ereditare progetti WordPress<\/h2>\n<p>In primo luogo, questa nozione di lamentarsi del lavoro altrui \u00e8 l&#8217;acqua proverbiale in cui non mi piace calpestare.<\/p>\n<ul>\n<li>Non conosco lo sfondo che porta la base di codice a essere nel suo stato,<\/li>\n<li>Non so perch\u00e9 certe cose sono state sviluppate come erano (limiti di tempo, mancanza di familiarit\u00e0 con un progetto, ecc.),<\/li>\n<li>Ho il compito di fare qualcosa nel contesto del progetto, quindi perch\u00e9 dedicare del tempo a concentrarmi su cose che non fanno parte della mia responsabilit\u00e0?<\/li>\n<\/ul>\n<p>Ho capito: ci sono momenti in cui il codice che scriviamo deve comunicare con un codice che gi\u00e0 esiste. E questo pu\u00f2 essere difficile. Ci sono modelli di progettazione che non sono specifici per questa situazione.<\/p>\n<p>Ma piuttosto che coprirlo, ho pensato di condividere tre cose che penso mostrino maturit\u00e0 quando si tratta di sviluppo quando si ereditano progetti WordPress che potrebbero irritarci.<\/p>\n<h3>1 Non rifattorizzare tutto<\/h3>\n<p>Come ha affermato <a href=\"https:\/\/martinfowler.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Martin Fowler :<\/a><\/p>\n<blockquote>\n<p>Questo refactoring opportunistico viene definito da zio Bob come se seguisse la regola del boy-scout: lascia sempre il codice in uno stato migliore di quello che hai trovato.<\/p>\n<\/blockquote>\n<p>In generale, mi piace questa regola, ma a seconda dei requisiti del progetto questo pu\u00f2 essere al di l\u00e0 delle nostre responsabilit\u00e0.<\/p>\n<p>Quindi, ogni volta che ci imbattiamo in qualcosa che sappiamo necessita di refactoring, <strong>ma<\/strong> il progetto procede senza intoppi. Se apporti una modifica a qualcosa perch\u00e9 ritieni che debba essere fatto, non sai come questo si verificher\u00e0 a cascata nel corso del progetto.<\/p>\n<p>Se hai tempo per fare un controllo completo del codice, questa \u00e8 una cosa, ma in caso contrario, il tuo compito \u00e8 introdurre ci\u00f2 che hai accettato di fare.<\/p>\n<h3>2 Concentrati su ci\u00f2 che hai accettato di fare<\/h3>\n<p>E questo porta a questo punto: quando si ereditano progetti WordPress, ti viene assegnata una certa quantit\u00e0 di lavoro e nient&#8217;altro (ecco perch\u00e9 abbiamo una dichiarazione di lavoro, giusto?).<\/p>\n<p>Quindi, nonostante tu voglia cambiare l&#8217;ambiente in cui ti trovi, non farlo. Concentrati su ci\u00f2 che puoi fare, su ci\u00f2 che solo tu puoi fare e su ci\u00f2 che hai accettato di fare.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-167152-61e7a08bc4f0e.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-167152-61e7a08bc4f0e.png\" alt=\"Ereditare progetti WordPress: suggerimenti per lo sviluppo\" ><\/a><\/p>\n<p>Penso che sia giusto prendere appunti sui problemi, e penso che questo possa anche essere utile (e ne parler\u00f2 momentaneamente), ma non perdere la concentrazione su ci\u00f2 che hai accettato di fare. Fare qualsiasi cosa ma non \u00e8 professionale.<\/p>\n<h3>3 Non giudicare lo sviluppatore precedente<\/h3>\n<p>Un&#8217;altra cosa comune, specialmente nell&#8217;open source, \u00e8 giudicare lo sviluppatore che ha scritto il set iniziale di codice con cui stai lavorando.<\/p>\n<blockquote>\n<p>Cos&#8217;\u00e8 questo? Non lo scriverei mai in quel modo.<\/p>\n<\/blockquote>\n<p>Voglio dire, quante volte l&#8217;abbiamo pensato a noi stessi? Ma non conosciamo il tempo, i vincoli, l&#8217;esperienza o il contesto in cui lo sviluppatore stava lavorando.<\/p>\n<p>Il codice che pubblichiamo non \u00e8 necessariamente rappresentativo del nostro livello di abilit\u00e0. \u00c8 spesso dettato da variabili di terze parti che influiscono sul modo in cui implementiamo una soluzione.<\/p>\n<p>E sappiamo com&#8217;\u00e8, giusto? Quante volte abbiamo voluto fare qualcosa in un modo, ma i vincoli e il programma in base ai quali stiamo lavorando determinano ci\u00f2 che stiamo facendo?<\/p>\n<p>Allora perch\u00e9 dovremmo aspettarci che quegli sviluppatori siano diversi?<\/p>\n<h3>Facoltativo: offrire supporto futuro<\/h3>\n<p>Come accennato in precedenza, se ti imbatti in aree problematiche nella base di codice, ci\u00f2 non significa che sia una causa persa.<\/p>\n<p>Invece, quando incontri questo tipo di problemi, penso che sia una buona idea:<\/p>\n<ul>\n<li>prendere appunti sulle cose che hai visto,<\/li>\n<li>annota cosa faresti per risolverlo e perch\u00e9,<\/li>\n<li>parla con il cliente di ci\u00f2 che hai visto e dei vantaggi dell&#8217;aggiornamento.<\/li>\n<\/ul>\n<p>Questo ovviamente porta a un lavoro futuro ma, forse soprattutto, ti consente di offrire soluzioni per creare software migliori e pi\u00f9 ben architettati e ti consente di assicurarti di rendere Internet un posto migliore per un CMS cos\u00ec popolare.<\/p>\n<p>No, questo lavoro non \u00e8 mai garantito, ma \u00e8 utile.<\/p>\n<h2>Sono sicuro che c&#8217;\u00e8 di pi\u00f9<\/h2>\n<p>Questi sono solo tre suggerimenti che offro in base all&#8217;esperienza che ho durante l&#8217;ereditariet\u00e0 di progetti WordPress. Non \u00e8 pensato per essere onnicomprensivo.<\/p>\n<p>Invece, ha lo scopo di fornire alcuni suggerimenti che ti consentono di essere pi\u00f9 rispettoso del lavoro degli altri in relazione al tuo lavoro, di pensare pi\u00f9 chiaramente a ci\u00f2 che potresti fare di fronte a situazioni simili e di raccogliere pi\u00f9 lavoro migliorando l&#8217;esistente soluzione potenzialmente.<\/p>\n<p>Ma so che le cose che ho citato sono solo alcune delle mie osservazioni. Hai il tuo? Menzionateli nei commenti.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Supponiamo che stai ereditando progetti WordPress e non sei entusiasta della base di codice. Come puoi ancora goderti il \u200b\u200blavoro che stai facendo?<\/p>\n","protected":false},"author":1,"featured_media":220946,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[918,720,865],"tags":[1168],"class_list":["post-229571","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-altro","category-sviluppatore","category-wordpress-6","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/229571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/comments?post=229571"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/229571\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media\/220946"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media?parent=229571"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/categories?post=229571"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/tags?post=229571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}