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.phpcss/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.