• 请不要在回答技术问题时复制粘贴 AI 生成的内容
KunMinX
V2EX  ›  程序员

Java 后端开发优秀书籍推荐

  •  
  •   KunMinX · Mar 18, 2020 · 7018 views
    This topic created in 2275 days ago, the information mentioned may be changed or developed.

    想给自研的 app 开发一套 restfulAPI,

    之前主要专注于客户端本身,对后端一无所知,花了几天时间网上查资料,没想到搜了一圈下来,连最基本的概念、边界都没能搞清楚,

    网文几乎清一色地 一上来就谈论 怎么做、怎么做,就是只字不提 “为什么”、“为什么”,

    后端是我初学的领域,我需要一本书,或者一些知识服务,能 从零到一地为我呈现清楚,为了提供远程服务给客户端,在服务端这边到底需要做什么、每个环节究竟是出于什么考虑而被设计

    比如 tomcat,它的边界是什么?它能提供什么?它不能提供什么?(它是应用服务器,监听端口,接收请求,那么它怎么通知 web 程序呢?),servlet 类似于 android 的 sdk 吗? spring boot 是基于 servlet 封装和定制的一整套开发框架吗?……

    我需要首先搞清楚它们各自所处的 环节、关系、职责边界,非常非常需要,一上来就怎么做、怎么做,让我 非常困扰

    所以想请教一下万能的 v 友,看看有没什么自己看的好的书籍推荐

    Supplement 1  ·  Mar 18, 2020
    感谢 12 楼 v 友的回复,有启发,有招了 😉
    23 replies    2020-03-19 15:09:46 +08:00
    hantsy
        1
    hantsy  
       Mar 18, 2020
    Manning, Apress, Oreilly 书大把,自己选择吧。
    jatesun
        2
    jatesun  
       Mar 18, 2020
    springboot 一把梭就行了
    yidinghe
        3
    yidinghe  
       Mar 18, 2020
    楼主如果需要的是设计方面的书,推荐话题:1、重构; 2、敏捷软件开发; 3、测试驱动开发。
    dapking
        4
    dapking  
       Mar 18, 2020
    建议看视频,如果只了解概念,只看前两节介绍就行。弄清楚概念,再网上找资料。
    linhua
        5
    linhua  
       Mar 18, 2020
    Head First Servlet JSP
    从网上找培训班的视频看
    ala2008
        6
    ala2008  
       Mar 18, 2020
    还别说,大部分人都是不知道为什么就入门了。。应该有个教学 /培训流程
    hooych
        7
    hooych  
       Mar 18, 2020
    你学习 Android 的时候也一上来就追问为什么吗?

    为什么 Activity 要继承 Context ?
    aguesuka
        8
    aguesuka  
       Mar 18, 2020
    effective java
    eden999
        9
    eden999  
       Mar 18, 2020
    应该是先学会用,代码跑起来,再深究原理
    zzzzzzggggggg
        10
    zzzzzzggggggg  
       Mar 18, 2020
    建议最开始的时候找个功能完善的 demo 跑起来就行了,至于原理和很多为什么可以边用边找资料看,不然会很累。
    个人经验之谈。
    Lonely
        11
    Lonely  
       Mar 18, 2020
    1. 你想入门的话可以看看《 Java Web 高级编程》,书是老了一点,不过很基础的东西没多大变化。
    2. 你入门 Android 的时候就搞懂每个东西“为什么”了吗?
    3. “我需要一本书,或者一些知识服务,能 从零到一地为我呈现清楚,为了提供远程服务给客户端,在服务端这边到底需要做什么、每个环节究竟是出于什么考虑而被设计”,我暂时没想到哪本大而全的书告诉你所有这些,你可以等入门了再根据需要去找某个方面更深入的书,比如想知道 tomcat 的原理,可以去看解析 tomcat 的书。
    haochih
        12
    haochih  
       Mar 18, 2020   ❤️ 3
    楼主的问题很好,其实楼主所遇到的问题,归根到底还是和 Java 各项标准及其有关框架的发展历史有关。每个标准或者框架出来都是为了解决什么问题,往后发展过程当中也就遇到了楼主所说的各个组件之间的关系,职责边界。所以我觉得要搞清这个问题,Google 其历史和它出现的初衷,然后再通过类似于 A VS B 之类的问题应该能了解大概(我就是这么做的)。目前来看后端开发的书籍好像解决不了这个事情。
    oneend
        13
    oneend  
       Mar 18, 2020   ❤️ 1
    有一条降级之路,学下 php 吧,毕竟这是世界上最好的语言,一天入门两天精通。
    meteor957
        14
    meteor957  
       Mar 18, 2020 via Android
    同问
    q447643445
        15
    q447643445  
       Mar 18, 2020
    我觉得会出现这样问题就是因为同样是编程,因为已经走过一遍萌新的流程了 再去学另外一系列技术栈后
    会有跳跃思维,想马上搞懂每个组件,框架,中间件的作用.
    跟我最近一段时间在学前端也碰到 lz 这情况,
    刚敲代码的时候做过一段时间前端, 其实就是简单的 bootstrap 和 jq .
    然后一直专职后端没做过前端了. 想重新捡起来学一下,
    多了好多东西 es6 wepack npm node 也搞不清是什么东西 , 有什么关系, 为什么.
    困惑跟 lz 简直一模一样. 反正慢慢折腾就行了 毕竟已经不是萌新了
    fogsky
        16
    fogsky  
       Mar 18, 2020 via iPad
    @haochih 说的很赞!
    lidlesseye11
        17
    lidlesseye11  
       Mar 19, 2020
    @haochih
    说的很对。
    我就一直觉得计算机书籍里缺历史书。以 java 为例,能有一本书以时间为轴介绍 JavaEE, Spring, Struts, tomcat, jboss, blabla 的开发过程,标准的制定过程等等。这些东西都是为了解决什么问题,由哪些大佬 /公司一步步推动的。
    而不是一上来就是 spring, ap server 各种 magic 甩脸
    zhoudaiyu
        18
    zhoudaiyu  
    PRO
       Mar 19, 2020 via iPhone
    Core Java Effective Java Thinking in Java Algorithms 4th Spring in Action
    onecookie
        19
    onecookie  
    PRO
       Mar 19, 2020 via Android
    可以按这个顺序学习了解
    socket 服务器,http 协议及服务器,servlet 规范 ,Tomcat 容器
    spring,spring mvc,spring boot
    每个模块都可以试着手写下最简单的能跑起来的 demo
    wozhizui
        20
    wozhizui  
       Mar 19, 2020
    廖雪峰 java 教程,免费,不过还没更新完。偏应用的 web 开发,才刚开始更新,前面都是 Java SE 的内容。
    链接放一个,https://www.liaoxuefeng.com/wiki/1252599548343744
    zifangsky
        21
    zifangsky  
       Mar 19, 2020
    我之前总结过一份 Java 学习书单,在这里给大家推荐一下吧:


    文字版(方便大家转存): https://mubu.com/doc/nZ4n8i424
    bk201
        22
    bk201  
       Mar 19, 2020
    首先你都不知道他用来干嘛,那你为什么要去了解他怎么实现干嘛的
    calanlot
        23
    calanlot  
       Mar 19, 2020
    会 JS 的话直接上 nestJs
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4764 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 109ms · UTC 09:44 · PVG 17:44 · LAX 02:44 · JFK 05:44
    ♥ Do have faith in what you're doing.