Executando verificação de segurança...
1

O ponto de vista bem mais aceito até o momento. Vamos para um questionamento mais específico: A forma que que as regra da arte da programação em sua grande maioria é mais para especialização ou as regras são fundamentais para todos os programadores.

Carregando publicação patrocinada...
1

as regras são fundamentais para todos os programadores.

Sim.

Detalhando melhor...

De forma bem porcamente resumida, Ciência da Computação (que vou chamar de CC no restante do texto) é a teoria, programação é a prática. A relação entre elas seria como a da Física com a Engenharia: a primeira explica como uma ponte deve ser para não cair, a segunda constrói a ponte (usando os conhecimentos da primeira para garantir que não caia).

Ou ainda, CC é o estudo das coisas que um computador pode fazer, programação é botar o computador pra fazer essas coisas.

CC tem uma relação profunda com a matemática (tanto que poderia muito bem se chamar Matemática Computacional ou algo do tipo). Dentre os tópicos que ela estuda, podemos citar teoria dos grafos, complexidade de algoritmos, os próprios algoritmos em si (e como provar matematicamente que eles funcionam), estruturas de dados, etc. Geralmente são definições bem abstratas, sem se preocupar com a implementação (o foco é "o que" e não "como").

Enfim, eu acho que saber essas regras é fundamental sim. Saber toda essa "teoria chata" te torna um programador melhor, mesmo que vc não a use diretamente. Saber que um repositório do Git é um grafo me ajudou a entender melhor o que cada comando faz (já que todos eles lêem/percorrem ou manipulam o grafo). Saber complexidade (Big-O) e estruturas de dados me ajuda a saber melhor quando usar lista/array ou map/dicionário (e também quando não faz diferença). Saber como as linguagens são criadas e projetadas me ajuda a entender porque elas são feitas de determinadas formas, e como estas escolhas resultam em certas características e limitações (aí vc entende que nenhuma é perfeita e para de ser fanboy/hater de linguagem).


Por fim, tem a famosa frase de Edsger Dijkstra: "A ciência da computação está para o computador assim como a astronomia está para o telescópio".