Acho que quando alguém pergunta qual é a melhor maneira de aprender a programar, as pessoas geralmente fornecem referências a vários textos escritos por vários autores.
No entanto, não acredito que muitas pessoas aprendam a programar com livros. Acho que eles geralmente enfrentam um desafio e depois usam a programação como uma ferramenta para superá-lo.
Por exemplo, entrei em programação porque queria iniciar um servidor para um jogo que jogava, então pesquisei e li o suporte para esse servidor em particular e agora sou engenheiro de software empregado, usando apenas as habilidades que desenvolvi ( e depois desenvolvido) codificando scripts C # para um pacote de servidor não muito popular.
Então, minha pergunta é: as pessoas geralmente acham mais fácil aprender com esses livros? Eu sei que olhei para alguns deles e os achei muito "secos" para me encorajar a terminá-lo.
fonte
Respostas:
Aqui está como eu aprendo, de um modo geral:
Nota: o terceiro ponto às vezes vem primeiro.
Edit : Para responder à pergunta "Por quê?"
O Google é ótimo para descobrir como fazer algo, mas não é ótimo para descobrir o que você não sabe. Por que você pesquisaria no Google "delegados de C #" se não sabia primeiro que o C # tem um conceito chamado delegados e que pode ser útil resolver um problema no qual está trabalhando?
Além disso, a relação sinal / ruído pode ser um pouco alta às vezes. Se você tem uma idéia aproximada de como algo é feito, pode facilmente confirmar se o artigo que está lendo está correto. Mas se você não tem idéia ... você pode acabar em uma confusão maior.
fonte
Algumas razões pelas quais os livros ainda são relevantes:
Mas um livro nunca irá levá-lo até o fim, apenas empurrará você na direção certa.
fonte
Quando aprendi a programar nos livros dos anos 80, era mais ou menos a única fonte de informação disponível para aprender completamente uma linguagem de programação como um todo. Além disso, você pode comprar revistas de computador, mas o conteúdo delas é de artigos aleatórios que podem ter sido interessantes e úteis ou não.
Atualmente, você encontra todas as informações necessárias na Internet. Embora eu considerasse um tutorial completo semelhante o suficiente a um livro.
Como você aprende pode depender de suas preferências pessoais ou de necessidades reais.
A vantagem de um "texto completo", se livro ou tutorial on-line, será que ele abrange material que, embora não seja realmente necessário, o ajudará mais tarde. É só saber que algo é possível e saber onde encontrá-lo. Especialmente se você aprender sobre um ambiente complexo ou uma linguagem muito complexa como C ++. Você pode ler vários blogs pequenos sobre Ruby on Rails sem nunca ter ouvido falar sobre o Ajax ou questões de segurança. Contanto que você apenas brinque, isso pode não ser problema. Mas se, como aconteceu comigo, você quiser entrar no desenvolvimento profissional do Ruby on Rails dentro de algumas semanas, trabalhar com um texto que cubra todos os pontos importantes ajudará bastante.
Outros livros cobrem detalhes sobre estilo de programação, práticas recomendadas, padrões de design ou determinados grupos de algoritmos. Você pode trabalhar com eles e, talvez, em todos os padrões de design, você aplicará apenas um subconjunto muito pequeno. Ainda assim, é útil conhecê-los e saber onde encontrá-los. E é simplesmente uma maneira de treinar seus processos de pensamento em uma direção em que você está mais interessado em "construir uma solução" do que em "fazê-lo funcionar de alguma forma".
Pessoalmente, gosto de ler, então não tenho a sensação de que os livros estão secos. Embora seja importante, é claro, que o livro esteja no seu nível real de conhecimento ou além. Se você já domina todas as noções básicas de C #, não faz muito sentido ler um livro para iniciantes.
fonte
Um livro (ou documentação da Web estruturada como um livro) ainda é minha maneira preferida de aprender a maioria dos idiomas.
Se você apenas mergulhar em um idioma e descobrir coisas por si mesmo, provavelmente perderá aspectos importantes, que um bom livro teria entregue a você no momento certo.
Por exemplo, alguns colegas meus aprenderam Java mergulhando sem um livro. Eles estavam programando em Java há alguns anos, quando eu descobri que eles estavam manipulando rotineiramente matrizes de bytes [] convertendo a matriz em uma String, usando .substring (), depois convertendo a String novamente em uma matriz. System.ArrayCopy () é apresentado na página 155 de Java In A Nutshell
Espero que você reconheça que aprender é mais fácil com um professor do que sozinho. Um bom livro é um substituto barato para um bom professor. Ele apresentará conceitos em uma ordem cuidadosamente planejada, para que você possa construir um entendimento completo - não apenas o suficiente para sobreviver.
fonte
Eu acho que você pode estar interessado em alguma coisa. Para mim, pelo menos, a maioria das minhas habilidades veio de querer / precisar de um programa que faça "X".
Talvez as pessoas que aprendem dessa maneira não estejam pedindo ajuda; eles estão muito ocupados fazendo isso (mal, mas aprendendo ao longo do caminho). As pessoas que querem ser programadores (ao contrário do primeiro grupo) fazem muitas perguntas sobre como ser um programador ou como programar, mesmo que não tenham necessariamente um problema para resolver, e essas não são perguntas com respostas diretas.
E assim, lançamos livros. "Ah, sim, pegue uma cópia do 'Dive into Python'." "Foi assim que você aprendeu?" "Não" "Hum ..." "Estou meio ocupado, mas eu vou ajudar se você ficar preso" "Uh ... OK, eu acho"
Por outro lado, valorizo muito o bom material de leitura quando estou aprendendo, para que eu possa ver como o problema que estou tentando resolver é resolvido por um autor mais habilidoso, ou talvez apenas para que eu possa aprender algumas coisas. técnicas "iniciantes" que talvez eu não tenha aprendido ao longo do caminho.
TLDR : livros são bons, aprender fazendo é bom, aprender fazendo livros é ???
fonte
Adoro ler livros técnicos. Nem todos os livros técnicos, apenas aqueles sobre um determinado assunto em que estou interessado, dizem o Sharepoint. Lembro-me do primeiro livro que realmente li (várias vezes), s Programming Windows, de Charles Petzold. Por causa disso e de muitos outros, eu era capaz de escrever um aplicativo Win32 da memória. Eu quase não precisava procurar uma API, por isso consegui me concentrar na parte comercial.
Sinto que os livros fornecem uma maneira "autoritária" de fazer algo, talvez por alguém que sabe o caminho certo para fazer algo melhor do que eu. Confio que o que estou aprendendo é, ouso dizer, a melhor maneira de resolver meu problema. Isso é claro, se eu confiar no autor (tenho que amar a área de críticas na Amazon).
Embora agora eu esteja cada vez mais "pesquisando" e copiando e colando quando tento resolver um problema, passo um bom tempo me certificando de que o que estou copiando (ou sendo inspirado por :) seja algo confiável que eu pode colocar no meu código. Só porque encontro uma solução na Web, não é necessariamente a melhor.
Enquanto eu, como tantos outros programadores, agora apenas pesquiso as respostas, ainda me pego pegando livros de autores conhecidos. Sinto que o conteúdo é trazido a mim por alguém que é bom em explicá-lo (ensiná-lo) e evita que eu precise filtrar todo o lixo dos meus resultados do Google.
fonte
Suponho que sua pergunta não foi entendida como "por que usar tecnologia antiga como um livro impresso em vez de páginas HTML", mas "por que ler textos mais longos sobre programação escritos por um ou poucos autores".
Você pode pensar nos livros como uma coleção estruturada de informações sobre um determinado assunto. Tem a vantagem de alguém ter se esforçado para construir cada capítulo entre si para facilitar a compreensão do tópico. Geralmente, você também é informado sobre quais são os limites das informações (o que é coberto e o que mais há que você precisa procurar em outro lugar). Depois de ler e trabalhar com ele, você pode ter certeza de ter alcançado uma certa habilidade. Se você deseja aprender com o botão de avanço rápido pressionado, um livro pode forçá-lo a trabalhar em todos os aspectos sem pular as partes chatas, pelo menos se você confiar na estrutura do livro. A coleção chamada "livro" também costuma ser útil como referência.
Usando a Internet, blogs, "brincadeiras" etc. geralmente se enquadram no tipo de informação não estruturada. Você obtém muitos pedaços de sabedoria, mas precisa fazer mais trabalhos de pesquisa para aumentar seu conhecimento, porque ninguém o guiará ao dizer "aprenda isso primeiro ou você não verá o mérito daquilo que deseja". pesquisei no Google agora ". Você pode perder algumas partes porque elas são muito chatas ou ninguém lhe disse que eram importantes. Você pode aprender coisas erradas, porque nem tudo escrito na Internet é de primeira qualidade. Você pode gastar muito tempo filtrando resultados de pesquisa inúteis. Você pode perder dias tentando realizar algo por conta própria, apenas porque não conhecia um determinado padrão de design ou construção de programação e ninguém lhe disse. Quanto menos você souber,
Para colocar um pouco de provocação: eu nunca confiaria em um arquiteto para construir uma ponte que tenho que atravessar todos os dias se ele me dissesse que nunca tinha lido um livro sobre construção de ponte ou análise estrutural, mas apenas o aprendeu brincando e usando o Google ...
fonte
Se você é um programador C, como espera aprender Python sem um livro ou professor?
Se você apenas aprender a sintaxe básica e se aprofundar, acabará escrevendo o código C em Python e chegará à falsa conclusão de que o Python é tão detalhado e doloroso quanto o C.
fonte
O Google normalmente é bom apenas para encontrar pequenos trechos de código ou bibliotecas de código aberto. A documentação de algumas bibliotecas / programas não é confiável, na melhor das hipóteses (se existir, ela mostra apenas exemplos simples ou comuns).
Não tenho muitos livros de programação, mas posso dizer agora que tenho um livro sobre OpenGL, e ele contém a maior parte do código de um mecanismo 3D, que você pode simplesmente copiar, mas pode leia a teoria também - você só precisa virar algumas páginas e uma explicação do código está ali, esperando para ser lida. Atualmente, você provavelmente pode encontrar alguns mecanismos 3D de código aberto na rede, mas se precisar alterar substancialmente o código, provavelmente terá algum problema - normalmente não existe um fórum de ajuda e as pessoas no SO não saberão o que é isso. responda à sua pergunta se ela for muito especializada. Quando se trata de coisas realmente especializadas, apenas algumas dezenas de pessoas em todo o mundo serão capazes de responder à sua pergunta sem gastar horas, a fim de descobrir o suficiente para estar em posição de encontrar uma resposta. Se você perguntar como implementar uma lista vinculada em C #, obterá mais de 5 respostas sobre SO nos primeiros 10 minutos, mas se perguntar qual a melhor maneira de implementar um algoritmo de sombreamento complexo no three.js é , sua pergunta será afundada na primeira página como uma pedra.
Além disso, os livros são escritos quase exclusivamente a partir da perspectiva que o leitor deseja aprender sobre a teoria envolvida, enquanto o Google produz apenas trechos aleatórios de códigos indesejados, discussões arquivadas sobre o assunto em que ninguém sabe do que estão falando. , etc. As fontes na internet melhoraram muito: SO, Moz Dev Network, site da Microsoft, blogs etc. Mas, historicamente, os livros têm sido muito melhores, com fontes da internet atualizando.
fonte
A qualidade da escrita nos melhores livros é tal que muitos dos problemas não óbvios são apresentados antes mesmo de você começar. Um autor com muita experiência saberá falar sobre coisas como: efeitos colaterais inesperados, repercussões a longo prazo, recursos não documentados, cenários típicos de uso ...
Basicamente, você está obtendo o benefício de um escritor com muita experiência, orientando-o no problema e apontando as partes realmente interessantes.
Às vezes, você também pode encontrar isso nas referências on-line, mas, devido à baixa barreira à entrada de muitas informações on-line, é muito básico, faltando detalhes ou simplesmente errado. Isso também pode acontecer com os livros; portanto, acredite apenas naqueles livros clássicos com críticas consistentemente boas. Outros livros também podem ser úteis, mas apenas como uma das fontes, você ainda precisará verificar as informações fazendo referência cruzada ou tentando você mesmo.
fonte
Os livros tendem a vir com muita informação em um formato estruturado. O Google costuma vir com uma enorme quantidade de informações nem sempre particularmente estruturadas e difíceis de organizar em termos do que você precisa fazer.
Na verdade, eu não leio mais livros em papel - há um leitor eletrônico ao meu lado e eu tenho o software Kindle no meu laptop que me dá acesso às informações que estou procurando.
Onde o Google é útil é se você não está procurando uma visão geral estruturada de como programar, mas precisa de detalhes sobre como programar uma tarefa específica. Quase sempre alguém escreve código para essa tarefa antes ou, pelo menos, algo parecido.
Eu acho que há uma diferença entre aprender a programar e aprender a programar uma tarefa específica. Eu questionaria a qualidade do código proveniente de alguém que só aprendeu partes de tarefas específicas do Google, se nunca conseguiu uma visão geral decente de como programar. Isso não é específico da linguagem, é mais conceitual.
fonte
Os livros são úteis se você quiser aprofundar um assunto. Claro que aprendi C # fazendo alguns tutoriais e escrevendo alguns projetos (de estimação). Mas o C # em profundidade ainda é útil para ver o que está acontecendo por baixo e para aprender algumas coisas novas.
Além disso, posso pegar um livro de programação e lê-lo no meu banho ou no exterior , ao sol. Não posso fazer isso com meu PC de mesa.
fonte
Porque é uma maneira conveniente de aprender com outros programadores.
Livros são um complemento. Você só pode chegar tão longe trabalhando tão rápido por conta própria. Quem não preferiria estar em um projeto com um programador melhor disposto a lhe ensinar algo do que apenas ler o livro?
Costumo usá-los mais como referência do que como "Tudo o que você precisa saber sobre programação".
fonte
Os livros permitem absorver um conjunto de informações de forma "passiva". Você não precisa procurar o que é possível; é apresentado um subconjunto de possibilidades. Quando eu estava aprendendo C #, o livro realmente ajudou a apontar as possibilidades, e me perguntei quais eram os equivalentes em C ++. Obviamente, a masterização ocorreu ao usá-la em um projeto (tamanho real). Mas o livro realmente ajudou a apontar diferenças e possibilidades.
fonte
Em suma, acho que os livros tendem a ser mais úteis em um nível alto. Eles podem fornecer orientações de design e ajudar a evitar problemas em vez de resolvê-los.
Os livros certamente têm suas desvantagens. Minha cópia do Programming Python cobre o Python 2.0, mas o tempo de execução que uso é 2.6.
No entanto, acho que o aspecto importante dos livros é que você pode encontrar coisas que não tropeçaria em si mesmo. O Google ajuda a resolver problemas específicos, mas os livros ajudam no design. E não apenas livros de design. Se você ler um bom livro que o ajude a entender o design de um idioma, entenderá melhor como usá-lo.
Outros livros são bons para refinar seu conhecimento. Acho que o livro Effective C ++ de Scott Murphy é um bom exemplo. Embora este livro não seja realmente muito bom para aprender C ++, ele ajuda a ver problemas no design de algoritmo / interface / herança que você não encontrou (ainda) ou que contornou. Pode ser fácil encontrar uma solução simples (que pode causar outros problemas posteriormente), mas, ao entender melhor o idioma, você pode projetar seu software para evitar esses problemas em primeiro lugar.
Obviamente, não é o fato de os livros serem impressos em papel que os torna valiosos. O cuidado e o esforço necessários para criá-los e o desejo de dar uma educação rigorosa são os que dão valor aos livros. Freqüentemente, como efeito colateral, você obtém recursos on-line úteis, como o C ++ FAQ lite, ou e-books como Dive into Python . Também existem tutoriais somente online que são ferramentas de aprendizado completas e úteis (como a documentação de algumas plataformas / idiomas / bibliotecas).
Os trechos na Web são uma boa maneira de responder sua pergunta, mas raramente dizem o que você deve estar perguntando.
fonte
Eu quero me tornar um programador, então estou usando livros de programação. Os livros me permitirão ter proficiência profissional em programação.
fonte
Eu realmente não leio um livro de programação há muito tempo. Costumo usá-los como guias de referência, mas agora acho que a Internet é mais fácil para a maioria dos idiomas e estruturas.
Enfim, acho que a melhor coisa a aprender com os livros de programação é a linguagem principal. Por exemplo, minha primeira linguagem real foi C. Aprendi escrevendo um SO (não recomendo isso). Como resultado, meu conhecimento de C foi bastante prejudicado, mesmo após dois ou três anos de programação. Eu nunca tive um bom conhecimento básico do idioma. Eu não sabia que poderia transformar essas 15 linhas de código confuso em duas linhas de código limpas. Assim, eu poderia resolver problemas, mas não estava utilizando o C em toda sua extensão.
Então, a certa altura, decidi aprender C ++ ... (cerca de 2 anos depois de começar a aprender C). Então, eu li o único livro em C ++ que eu tinha por aí, um livro em C ++ para Leigos. Eu li cerca de 3/4 da matéria, fazendo muito pouco "trabalho" durante esse período ... e como resultado, quando pulei no meu primeiro projeto, em vez de me sentir confortável com essas 15 linhas de código bagunçado, eu sabia que havia uma maneira mais fácil de fazer isso (mesmo que eu tenha que procurar).
Fiz a mesma coisa quando aprendi C # / ASP.NET. Eu não fiz quase nada além de ler até terminar com cerca de 3/4 do livro. E pelo que não aprendi, procurei Stack Overflow em busca de perguntas interessantes sobre C #. Quando entrei no meu primeiro projeto, diria que a maior parte do meu código estava relativamente limpa e só teve que ser "enormemente" refatorada uma vez desde então.
Então, eu diria que os livros são muito úteis para aprender os recursos de uma estrutura ou linguagem. Além disso, porém, a maioria se torna inútil pela Internet, exceto, é claro, pelos fortes livros teóricos e especificamente projetados para serem materiais de referência.
fonte
É menos sobre o que você lê, mas quanto. Eu gosto de ter alguns livros de programação em movimento enquanto trabalho em um projeto. De vez em quando (com mais frequência do que você imagina), você lê sobre uma técnica que pode ser aplicada ao seu projeto atual.
Depois de implementar uma solução do mundo real, as informações serão mantidas.
fonte
Prefiro usar livros porque sinto que eles fornecem um instantâneo do estado da tecnologia em que você está trabalhando. O autor declarará que, com a versão XX da linguagem / biblioteca Y, é assim que você resolve o problema Z. Os tutoriais do site podem deixar de listar quais versões eles estão usando ou fornecer o código de exemplo que eles usam enquanto os livros costumam fazer.
Os livros costumam abordar o "porquê" dessa solução resolver o problema, enquanto os documentos on-line costumam copiar e colar.
Você também pode perder links para todas as suas referências, elas podem ser movidas ou desativadas. Eu protejo e cuido dos meus livros como um investimento (o que eles são).
fonte
Você pode resolver problemas sem ler livros, mas então realmente saberá o que está acontecendo por trás do seu programa para resolver esse problema?
Você precisa saber o que está acontecendo e o que poderia ter sido uma alternativa melhor. Para isso, você precisa de bons livros de programação. Apenas ler livros, é claro, não basta, você precisa entender o conteúdo, ler outros livros, pensar em diferentes abordagens para resolver problemas e assim por diante. O aprendizado continua com e sem livros.
fonte
Quando eu estava aprendendo C ++, achei a maior parte da literatura bastante inútil até que algo na minha cabeça clicou. Até hoje não tenho certeza do que era, mas tudo começou a fazer sentido. Livros e sites então faziam muito mais sentido. Levei 2 livros para aprender a programar em C ++ e nenhum dos livros C ++ verdadeiros (eram livros do Visual C ++ que focavam principalmente no MFC).
Se você receber o (s) livro (s) certo (s), poderá ser realmente útil. Um amigo meu estava lendo alguns livros de Dietel na universidade e eu os achei extremamente bem escritos. Eu nunca achei os livros "... para Leigos" tão úteis porque eles não explicam as coisas da maneira certa para mim. O melhor conselho é ir a uma livraria e obter uma amostra do livro para que você não gaste muito dinheiro com livros que costumam ser extremamente caros.
Para alguns tópicos de programação, acho útil ler vários livros, realizar pesquisas via Google e experimentar. Eu me vi fazendo isso muito quando estava trabalhando em algoritmos de IA quando estava trabalhando em um jogo de damas com o J2ME. Também me vi fazendo isso quando estava aprendendo a criar um compilador de compilador para sintaxes personalizadas. Existem tantas variações e visões diferentes.
Às vezes, o entendimento de várias visualizações permite fazer conexões que, de outra forma, são mais obscuras.
fonte
Costumo aprender (programação) com livros e fontes "just in time", como a web. Ambos podem ser bons, mas no geral eu prefiro aprender com os livros, eis o porquê:
Quando você aprende apenas o que precisa saber imediatamente para concluir uma parte de um projeto, às vezes perde o quadro geral. Os melhores livros não são meramente referências, mas, em certo sentido, alcançam algo mais próximo de um aprendizado, fornecendo uma visão geral bem arredondada de uma tecnologia e muitos conselhos experientes sobre as melhores soluções para problemas comuns.
O aprendizado just-in-time pode muito facilmente sofrer com o problema de satisfação. Quando você identifica um problema que deseja resolver, pula para a primeira solução que parece funcionar e depois corre para as interwebs para descobrir como implementá-lo. . No entanto, muitas vezes isso pode causar problemas, se você puder conversar com um programador experiente sobre o seu problema, eles não dirão "aqui está como fazer o X", mas sim " X, faça Y em vez disso ". E esse é o tipo de conhecimento que você costuma obter dos melhores livros. De fato, alguns livros são inteiramente sobre esse tipo de coisa, como Javascript: The Good Parts .
O outro problema que o aprendizado JIT pode ter é uma curva de aprendizado muito mais lenta. Com o aprendizado JIT, você tende a aprender apenas o que precisa saber. Mas, muitas vezes, apenas ter um núcleo básico de conhecimento pode acelerar o aprendizado de um novo idioma ou estrutura. Em vez de tropeçar no básico, você começa com uma base sólida e depois constrói a partir daí. Uma boa parte do material que você pode cobrir ao ler um livro pode não ser imediatamente útil para você, mas ter esse conhecimento básico pode ser benéfico para orientar sua tomada de decisão e principalmente para entender o novo código ao qual você está exposto. É claro que existe uma troca e existem livros ruins que se acumulam em fatos inúteis dos quais você não se lembrará depois de lê-los, mas também há bons livros que fornecem uma boa base para os fundamentos e o que '
Também existem livros em um nível superior a um único assunto tecnológico que eu acho crucial para amadurecer como desenvolvedor. Livros como Código Completo , Refatoração , Trabalho Eficaz com Código Legado , etc. Você não vai captar o conhecimento desses livros apenas através do aprendizado do JIT.
fonte
Eu acho que vou ler livros. Especialmente baixar ebooks. Ler cada parte do capítulo. Copie seu código! cole no seu editor de programação e veja qual é o resultado.Em seguida, tente alterar a lógica dele.Eu mencionei e-books para download porque para trabalhar mais rápido.Os livros são realmente excelentes.Eu não estou mentindo, mas desde novembro passado até hoje. Tudo isso requer amor para ler. Por exemplo, eu limitei os controles com a tabela de dados e não sei o que os conjuntos de dados fazem e recebi a tarefa de fazer relações entre cópias residentes de memória das tabelas do banco de dados que não consigo.
fonte
É muito difícil para os novos programadores entenderem o que é realmente a programação e quão profunda é.
Qualquer um pode escrever um programa para instruir um computador - bem, qualquer coisa com muito pouco aprendizado, isso não é difícil! O difícil é criar um programa que seja suportável e possa ser entendido rapidamente e compreendido profundamente por outros membros da equipe. Essa parte leva anos, dezenas de anos.
Além disso, aprender a trabalhar como parte efetiva de uma equipe é um pouco complicado.
Então, como os livros ajudam a resolver esses problemas de programação "reais" de uma maneira que a pesquisa de referências na Web não ajuda?
Bem, dois dos meus livros favoritos são "Design Patterns" e "Refactoring".
A refatoração é um ótimo livro que mostra como reconhecer códigos incorretos. Se você aprendeu pesquisando referências de codificação, este livro (Bem, um dos muitos livros sobre Refatoração) é crítico.
Os padrões de design não oferecem muito que um bom programador não possa descobrir, mas deu nomes a uma ampla variedade de padrões que todos já usavam no código. Isso permitiu que os programadores se comunicassem de maneira mais eficaz e ajudou alguns programadores a encontrar novas maneiras de atacar problemas. Embora você possa encontrar padrões de design na Web, é muito mais fácil pesquisar no google o nome do padrão de design do que no google o que você está tentando fazer.
Nas entrevistas, fui solicitado a descrever esses dois livros e o que eles estão tentando realizar. Acho que essa é uma pergunta de entrevista muito válida ... Gostaria de prestar atenção a um programador que não sabia sobre esses dois livros livros, a menos que ele estivesse se candidatando a uma posição extremamente júnior.
fonte
Aprendi a programar diretamente com livros. Cerca de 20 anos atrás, antes que o google e a rede se tornassem populares. Eu acho que eles são ótimos recursos. No entanto, a maioria dos livros modernos apenas cita artigos técnicos dos fabricantes. Então, agora eu concordo que é melhor aprender online. Com uma palavra de aviso da seguinte maneira:
Embora eu tenha lido muitos livros e tenha acesso à Internet quase porque era financeiramente viável. Eu nunca fui capaz de concluir qualquer tipo de projeto considerável. Claro que eu poderia fazer muitos dos projetos importantes em grandes livros avançados, onde eles levam 20 capítulos para orientá-lo, mas quando se tratava de meus próprios projetos do mundo real, sempre sem execuções, batia em uma parede de tijolos. Preciso lhe contar, li alguns livros pesados.
Eu tive problemas a vida toda na faculdade, mas agora estou entrando no meu terceiro ano. No meu primeiro ano, conheci pessoas no quarto ano e mestres, e pude manter conversas produtivas sobre as teorias de IA, HCI, montador e desenvolvimento de compiladores. Mas, com todo esse conhecimento, não consegui criar um programa razoável. O que estava faltando ... A única coisa que você não pode obter de nenhum livro ou online.
Estrutura. No primeiro ano, eu não aprendi nada de natureza técnica (já sabia tudo e me envolvia sem um dia de estudo, matemática e design excelentes, pois eram razoavelmente novos para mim), mas aprendi estrutura e trabalho em equipe. Nas minhas primeiras férias de verão, cheguei mais perto do que nunca de concluir meu primeiro trabalho real.
No meu segundo ano, aprendi muitas coisas novas em tecnologia (ainda o básico em comparação com o que sabia, mas estava colocando a teoria que conhecia na prática real). Isso enfatizou a importância da estrutura novamente. Eu não terminei meu primeiro projeto real. Agora me considero um programador.
Não acredito que seja necessário ler livros para aprender programação. Mas é uma ajuda. No entanto, acredito com certeza que nenhum livro ou site ensina ou pode ensinar o que você obtém em até 2 anos de faculdade. Se você conseguiu concluir os projetos sem nunca ter cursado a faculdade, jogo limpo, mas é uma experiência que eu recomendo, independentemente da idade.
Os livros são bons, a internet é melhor, o Google e o YouTube são fabulosos, mas nada supera a boa e velha faculdade fashoned na minha opinião. E duvido que qualquer quantidade de pesquisa e youtubing alguma vez o faça, e sei em primeira mão que nenhuma quantidade de livros jamais será.
fonte
Eu não tenho idéia. Sou contra livros de programação. Na maioria dos casos, você ainda precisa pesquisar na Internet para pesquisar informações adicionais.
Você quer aprender uma linguagem de programação? Google para isso. Eu odiava o jQuery porque estava parecendo difícil. Então eu vim para o Stack Overflow e sei muito disso. Sem a ajuda de livros.
fonte
Acho certo que a programação não possa ser aprendida apenas com livros (como a maioria das pessoas mencionou), você precisa praticar muito e há muitos recursos disponíveis na internet (artigos, vídeos, amostras etc.).
Mas um bom livro preenche as lacunas de seu conhecimento. Depois de ler uma capa de livro a capa, você terá a confiança de que não tem nenhum buraco no seu conhecimento sobre o assunto. Embora o desafio seja encontrar bons livros sobre o assunto.
fonte