Java从入门到进阶书单推荐|必收藏

关于Java从入门到进阶的书单推荐

一、入门基础类


如果是0基础学习,入门阶段千万不要选择太难的书,首先太难的你也看不懂,而且会打击信心,所以建议选择通俗易懂的就行,先领进门(注意:基础一定要打牢!!!)


推荐书籍:《Java从入门到精通》

这本书语言通俗易懂,实例丰富多彩,实例中的程序代码也给出了详细的注释,对于没有学过Java的人来说,是一个非常不错的选择哈。

推荐书籍:《Head First Java》

在初期学习的时候非常推荐这本书,它的内容很轻松有趣,不会那么枯燥乏味,是关于完整的面向对象程序设计和Java的学习指导。主要是教会你会学会如何像个面向对象开发者一样去思考,非常适合初学者入门看哦。


推荐书籍:《Java 编程思想》

这本书主要偏重编程思想,不推荐没有Java基础的人看,没有基础看这本书会有些晦涩难懂,枯燥乏味。有了编程经验之后再来看这本书,然后多写代码,多思考会对你的技能有很大提升。《Java编程思想》对于基本语法,基本类库有比较清楚的讲解,对于打下良好的编程基础很有帮助。(注意:这本书比较厚,有些冗余,看这本书的话要懂得取舍,挑重点看看就行了)

推荐书籍:《Java开发实战经典》

这本书是关于Java核心技术的书籍,在书中使用大量的代码及案例进行知识点的分析与运用,知识点也比较全面,在实际开发的过程中来讲解一些基础内容,对于新手而言很实用。

二、中级进阶类


推荐书籍:《 Java并发编程实战》

这是一本完美的Java并发参考手册,本书介绍了Java线程和并发,学习Java并发,这是不可多得的好书,非常适合Java程序开发人员阅读。

推荐书籍:《编写高质量代码》—改善Java程序的151个建议

这本书全部由Java编码的最佳实践组成,为Java程序员如何编写高质量的Java代码提出了151条极为宝贵的建议。对于每一个问题,都会从正反两面给出被实践证明了的优秀解决方案和糟糕解决方案,并且还会分析问题产生的根源,比较透彻!

推荐书籍:《大型网站系统与Java中间件实践》

这本书是关于大型网站架构变迁过程中通用的问题和解法,可以了解构建支撑大型网站的 Java 中间件的实践经验。推荐给有一定网站开发、设计经验,并想了解大型网站架构支撑这种架构的系统的开发、测试等的相关工程人员,本书有很大的参考意义!如果没有网站开发设计经验,那也可以通过阅读这本书了解大型网站的架构以及相关问题的解决思路和方案。

推荐书籍:《重构 改善既有代码的设计》

这本书清晰揭示了重构的过程,解释了重构的原理和最佳实践方式,并且给出了何时以及何地应该开始挖掘代码以求改善。书中一共给出了70多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。这本书可以帮助你一步一步的修改你的代码,从而减少开发过程中的风险。

三、高级深入类

推荐书籍:《深入理解 Java 虚拟机》(第3版)

这本书是非常难得的国人原创 JVM 实践书籍,是整个Java图书领域公认的经典著作和超级畅销书,Java 进阶必看的书籍之一,内容全面易懂,非常非常推荐哈!多刷几遍都值得!

推荐书籍:《企业应用架构模式》

这是一本能够应用于任何一种企业应用平台的、关于解决方案的、不可或缺的手册,把这些数据库对象关系、事务、并发、领域模型、MVC等等都讲得非常详细,不但有理论,还有运用场景,内容很经典,值得一看哈!

(注意:无论是书籍,还是视频都只是辅助工具,最重要的还是得多加练习,多敲代码,将理论与实践结合起来进行学习!)

  • 3
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的django视图函数,它基于用户的书单推荐可能喜欢的书籍: ```python from django.shortcuts import render from .models import Book, UserBook def recommended_books(request): # 获取当前用户的书单 user_books = UserBook.objects.filter(user=request.user).values_list('book_id', flat=True) # 获取其他用户也阅读过的书籍 other_users_books = UserBook.objects.exclude(user=request.user).values_list('book_id', flat=True) # 从其他用户的书单中获取与当前用户共同阅读的书籍 common_books = Book.objects.filter(id__in=user_books, id__in=other_users_books) # 对共同阅读的书籍按照出现频率进行排序 recommended_books = common_books.annotate(num_users=Count('userbook')).order_by('-num_users') return render(request, 'recommended_books.html', {'books': recommended_books}) ``` 这个视图函数做了以下几件事情: 1. 获取当前用户的书单。 2. 获取其他用户也阅读过的书籍。 3. 从其他用户的书单中获取与当前用户共同阅读的书籍。 4. 对共同阅读的书籍按照出现频率进行排序。 5. 将推荐书籍传递给模板渲染。 视图函数中使用了两个模型:`Book`和`UserBook`。 `Book`模型表示一本书,有以下字段: ```python class Book(models.Model): title = models.CharField(max_length=200) author = models.CharField(max_length=200) description = models.TextField() ``` `UserBook`模型表示一个用户阅读了一本书,有以下字段: ```python class UserBook(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE) book = models.ForeignKey(Book, on_delete=models.CASCADE) ``` `UserBook`模型中的`user`字段是一个外键,指向`User`模型,表示这个书籍是哪个用户阅读的。`book`字段是一个外键,指向`Book`模型,表示这个用户阅读了哪本书。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值