Corrige code-smells da classe `StyledNewEssayMenu` (#25)
Descrição
O método StyledNewEssayMenu
possuía o code-smell long method
, que foi removido utilizando-se a técnica extract method
.
O método originalmente estava no seguinte estado:
public function render_menu(): void
{
if (array_key_exists('redacao-submit', $_POST))
{
// Regras de negócio
}
// Código `HTML`
}
O código HTML
foi extraído para dois arquivos diferentes:
views/styled-new-essay-view.php
css/styled-new-essay.css
Um novo método foi criado para permitir o processamento do arquivo css/styled-new-essay.css
, e o código HTML
dentro do método render_menu
foi substituído pela importação do arquivo views/styled-new-essay-view.php
, resolvendo assim a task #26 (closed). O código como encontra-se atualmente está exposto abaixo:
public function enqueue_scripts(): void
{
wp_enqueue_style('new-essay-style', plugin_dir_url(__FILE__) . 'css/styled-new-essay.css', array());
}
public function render_menu(): void
{
if (array_key_exists('redacao-submit', $_POST))
{
// Regras de negócio
}
include_once(plugin_dir_url(__FILE__) . 'views/styled-new-essay-view.php');
}
É notável que o método render_menu
ainda encontra-se muito extenso. De fato, as regras de negócio também serão extraídas no futuro, conforme descrito na task #27 (closed). Com isso, a issue #25 (closed) estará completamente resolvida. O código da classe StyledNewEssayMenu
terá a seguinte forma:
public function enqueue_scripts(): void
{
wp_enqueue_style('new-essay-style', plugin_dir_url(__FILE__) . 'css/styled-new-essay.css', array());
}
public function render_menu(): void
{
include_once(plugin_dir_url(__FILE__) . 'views/styled-new-essay-view.php');
}
Referências
OBS
O merge request encontra-se como draft até que a task #27 (closed) seja concluída.