Até parece que estou a brincar, mas não estou. A cozinha é onde a criatividade de quem cozinha pode ganhar espaço sobre as mentes deliciadas pelos belos e soculentos sabores das receitas que elabora, mas uma cozinha não é propriamente uma escola de arte e\ou um centro de estudos.
Quero cozinhar um prato com o minimo requerido para ele ter um sabor próprio, mas para saber cozinhar tenho de saber como lidar com as várias ferramentas que a cozinha oferece.
O JavaScript é a cozinha e até o JavaScript tem versões de qualidade e eficiência.
Quanto maior a versão usada, mais eficiência.
Ora como tinha dito anteriormente, não tenciono inventar a roda nem criar algo de novo, simplesmente usar o que já existe de forma a adaptar-me às necessidades.
O JavaScript que tem o nome de ECMAScript está na versão 2019.
( lol esta gente pensa mesmo no futuro )
É interessante ver como a língua está estruturada e como é explicada. Preciso de alguma abstração para poder ler, mas na verdade há algumas instruções que mudaram de nome, como nova funcionalidades que as versão anteriores não têm. Esta nova versão já aceita TypeScript que é considerado uma Super versão do JavaScript, mas que os browsers não conseguem ler e por isso, é necessário compilar os ficheiros .ts e converte-los para .js.
De algum modo é sempre interessante pensar que posso escrever o código em TypeScript e converte-lo para JavaScript, mas a intenção é mesmo aprender somente JavaScript pois o TypeScript usa instruções que fazem parte da ultima versão do JavaScript.
Ora, sendo que cada uma das opções que uma cozinha tem para alguém confeccionar comida, neste caso são todas as funcionalidades do JavaScript, terei de saber o que cada uma das ferramentas faz para saber como usa-las.
O JavaScript é usado para minipular o conteúdo dos vários elementos do HTML chamados nodes (nós) de forma a acrescentar, modificar e\ou remover dados.
Também se pode acrescentar estes nós "HTML tags" ao ficheiro HTML via JavaScript.
Conteúdo parece que até o JavaScript usa normativas de JSON. Ora, NoSQL também é relativamente parecido com JSON. Por outro lado, para a indexação de sites usa-se o XML. Seja qual for a natureza do ficheiro que guarda dados, pode-se usar o JavaScript para manipular esses dados.
Por vezes o problema para fazer um site é o de encontrar conteúdo para preenche-lo, mas no meu caso, conteúdo não falta, mas sim organização do conteúdo. Ora quanto a mim, os ficheiros JSON e\ou os Arrays ou Objectos em JavaScript são mais fáceis de organizar.
{
"siteNome":"Macaco Preguiçoso",
"artigos": [
{
"titulo":"blabla",
"descrição":"blebleble",
"data":"123123123",
}
]
}
De linguagem para linguagem os termos das estrutura de dados vão mudando conforme as especificações da própria linguagem, mas no fundo o que é necessário é entender como é simples ler os dados quando a sintax dos mesmos está mais estruturada ao nível visual.
Algumas das ultimas apresentações que vi sobre a estrutura de dados em JavaScript, os autores das apresentações preferiram usar esquemas com formas e cores em substituição das estruturas em código da linguagem em questão.
Assim antes de desenhar um mapa sobre como poderá funcionar o site e a aplicação, terei de dominar a arte de transpor os elementos de uma tabela de JSON para os elementos da página que estou a usar.
Para enumerar elementos de um objecto em JavaScript terei de usar uma função ciclica, tal como o for ou o while que naturalmente são funções que precisam de condições. As condições precisam de expressões de Verdade como também possibilidades de existência e\ou solução.
Para se entender o que estou a dizer considere-se o seguinte exemplo em JavaScript:
for (var i = 0; i < 10; i++) {} POSSIVEL
for (var i = 0; i < -1 ; i--) {} IMPOSSIVEL
Se formos ler mais sobre a declaração de variaveis em JavaScript, nota-se que há uma constante reciclagem do valor original de cada uma delas para haver forma de as manipular sem perder o valor original de cada uma. Talvez seja por isso que a ultima versão do JavaScript usa let em vez de var, como primeira opção de declaração de variaveis. Existe também o const que parece ser usado na declaração de variaveis que são funções. Os termos certos ainda não estão integrados no meu cérebro, mas com o tempo irei entender melhor cada um deles.
Trabalho de casa: Usar a ultima versão do JavaScript. Instalar o Babel.
O NPM é um gestor de ficheiros e\ou aplicações de JavaScript. Permite "instalar" (download de ficheiros para uma pasta local do projecto), organizar as versões das aplicações instaladas a partir do ficheiro package.json e naturalmente remover aplicações instaladas.
Para já parece que vou-me permitir usar o npm para usar uma versão mais actualizada do JavaScript, mas como poderão entender, até o angular é instalado via npm, o que significa que é inetivável instalar aplicações JavaScript das mais variadas funções, para melhorar tanto a forma como lidar com as páginas web, como também cria dinâmicas mais fáceis para eu não perder tanto tempo a testar o que vou fazendo.
Por norma uso uma função e\ou libraria do Python para criar um servidor web local.
Executo na pasta onde está o ficheiro index.html o seguinte comando no terminal:
$ python -m SimpleHTTPServer
Por cada modificação que faça ora no CSS, ora no JavaScript, ora no HTML, tenho de fazer refresh da página, isto é, clicar no F5. Porque sou preguiçoso, posso usar uma das várias librarias que servem o propósito de fazer auto-refresh da página, sempre que salvo o ficheiro modificado.
Já teremos falado do Webpack num post anterior, mas creio que será um must instalar, pois faz parte das recomendações. (quem não sabe é como quem não vê) Ainda bem que há quem pense nisso!
Por mais que eu gostasse de fugir das frameworks, reparo que as frameworks usam conjuntos de librarias muito semelhantes a muitas outras, o que significa que até as frameworks são reciclagens de aplicações que melhoram e facilitam a vida dos programadores e como tal, mesmo antes de começar a praticar JavaScript tenho de instalar ficheiros extra. Isto quase me lembra distribuições Linux. Não há uma propriamente original no sentido de ter conteúdo diferente das outras, pois qualquer uma pode ter o mesmo conteúdo do que as outras. Sai uma nova versão de uma distribuição que tem a nova versão do kernel mais estável e as ultimas versões dos software mais usados, acrescenta-se uma imagens bonitas e pronto, uma nova distribuição. O mesmo parece acontecer com as Frameworks de JavaScript. São cada vez mais e todas fazem mais ou menos o mesmo de todas as outras, sendo que umas serão mais leves do que outras de acordo como resolvem o "problema". Manipular dos nodes do HTML.
Aprender pede a repetição de algo que indica a forma correcta de execução de uma operação qualquer que queremos e\ou temos de aprender. Seja lá o que queremos aprender, tem regras que indicam instruções que detalham a forma como fazer determinada acção. Antes de preparar os alimentos, tenho de saber quais as ferramentas que preciso de usar para os confeccionar. Talvez o ovo estrelado não saia bem a primeira vez, mesmo que seja só pôr azeite ou óleo na sertã, abrir o ovo, deita-lo na sertã e esperar que fique pronto. Não há qualquer ciência poderá dizer-se, mas estarei esquecer-me do forno?
Comentários
Enviar um comentário