Ganhei uma vida muito boa como programador autodidata, mas quando descubro que discuto alguns tópicos fundamentais de baixo nível com meus colegas que têm um diploma em ciências da computação, brechas aparecem no meu conhecimento. Eu sou um cara grande da arquitetura (arquitetura), então por um longo tempo isso não me incomodou, mas ultimamente me pergunto se existe uma abordagem que eu possa adotar que me ajude a aprender esses fundamentos sem voltar à escola? Existem livros, sites ou vídeos que você pode recomendar que me dariam uma perspectiva básica, em vez de aprender como você precisa?
30
Respostas:
Isso deve mantê-lo ocupado por algumas semanas:
Engenharia Elétrica e Ciência da Computação | MIT OpenCourseWare | Materiais do Curso Online Grátis
fonte
Desde que aprendi muito com livros, costumo pensar em termos de livros.
Há vários bons livros para aprender sobre o básico do ofício da programação. No topo da lista, eu colocaria:
É amplamente independente da linguagem, e explica o porquê e o porquê de maneira bastante acessível, e cobre muito terreno em suas páginas.
Gosto de alguns outros livros gerais - minha formação me dá um forte viés do Unix:
Embora "A arte da programação de computadores", de Knuth, seja de muitas maneiras excelente, também é um conjunto assustador de livros para ler.
Você pode examinar alguns livros sobre algoritmos de maneira útil - existem muitos.
Depois disso, depende de onde estão suas principais áreas de interesse e deveres profissionais. O que é apropriado depende de onde você precisa se especializar. Você pode consultar "Uma Introdução aos Sistemas de Banco de Dados", da CJ Date, como um plano geral de bancos de dados relacionais.
Outros possíveis candidatos:
De uma maneira um pouco diferente, "Fundamentos de software: os artigos coletados por David L Parnas" é uma leitura interessante - mas provavelmente não está no topo da sua lista de prioridades.
fonte
Se você tivesse acabado de ler o livro Estrutura e Interpretação de Programas de Computador e fizesse os exercícios , teria uma base bastante sólida.
fonte
Aqui está uma lista dos mais famosos portais de aprendizado de nível acadêmico on-line (consulte a categoria ciência da computação):
observe que os cursos são pensados pelas melhores universidades do mundo, como MIT, Stanford, ... e você pode obter um certificado para aprovação nos cursos depois de entrar nos exames finais intermediários e finais e, com certeza, enviar trabalhos de casa;)
pode mantê-lo ocupado por alguns anos :)
Para o MIT, o OpenCourseWare edx pode ser o sucessor, pois o MIT tem muitas classes lá!
Em geral, existe agora uma tendência das universidades em oferecer cursos acadêmicos de alta qualidade on-line gratuitamente ou com custo muito baixo. verifique esta entrada da Wikipedia .
fonte
Existem vários livros e tópicos que considero muito bons. Existem muitos outros, mas isso o levará a um longo caminho em direção a uma sólida educação em CS. Eu já vi outros livros sobre esses tópicos, e estes - IMO - fornecem a profundidade necessária para uma consideração cuidadosa do assunto, em nível profissional.
Algoritmos de Corman
AI de Russel & Norvig : uma abordagem moderna
Money & Design Digital da Harris .
Introdução à Teoria dos Autômatos de Hopcroft e Ullman
Aho, Ullman, Compiladores de Sethi , também conhecido como "O Livro do Dragão"
Nenhum desses livros é um livro agradável, de digestão rápida, amigável sobre Apress ou O'Reilly. Esse não é o propósito deles. Eles realmente não vêm com muito código (a exceção é o Design Digital, que é para alunos do segundo ano, não para idosos), mas geralmente vem com uma quantidade razoável de matemática. A dificuldade de compreensão aumenta exponencialmente quando se muda para as coisas mais profundas.
fonte