Java开发常识资料

 
一、Java基础
JSE 核心基础(程序设计语言):
        《Think in java》 (参考阅读:《Core Java》JAVA2核心技术第1卷.基础知识) 阅读
        《Effective java第二版》

集合容器主题:util包
       各种数据结构和算法

多线程主题:concurrent包
    《Concurrent Programming in Java》《JAVA并发编程实践》
    《Java Concurrency in Practice》
    《The Java Language Specification, Third Edition》第17章

网络与IO主题:io/nio/net Mina RMI WebService
    《Java TCP/IP Socket编程》                               阅读
        《Fundamental networking in java》
    《Java网络编程(中文版 第三版)(O'Reilly Java系列)》
    《Java NIO》
二、企业级架构
企业应用框架主题:
         Spring+Hibernate+Struts+依赖的相关基础库(三种连接池)

数据库主题(数据库原理):
      SQL/Hibernate 《SQL语言艺术》
      MySQL:  《高性能MySQL》《MySQL性能调优与架构设计》
      Oracle: 《Oracle 9i & 10g编程艺术》《Oracle 10g数据库管理艺术》《Oracle性能诊断艺术》

JVM主题(编译原理):
        《深入理解Java虚拟机 JVM高级特性与最佳实践》-初级 1遍 阅读
        《深入Java虚拟机(原书第2版)》
        《The Java Language Specification, Third Edition》 http://java.sun.com/docs/books/jls/third_edition/html/j3TOC.html
        《The JavaTM Virtual Machine Specification,Second Edition》 http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html

OS主题(操作系统概念):
        《Unix编程艺术》
        《鸟哥私房菜Linux》

三、工具研究:
         MyEclipse + Tomcat
   各种架构:架构模式/设计模式
     各个著名网站系统等架构研习
   课题:
     研究Mina/Xsocket/Tomcat框架设计原理及代码实现
     思考如何编写高性能TCP/UDP服务器和客户端系统?(基于并限于:NIO + 多线程 + Reactor)
   参考:
四、模式与设计
    2、《设计模式精解》,应该有最新版,个人认为更适合入门。
    1、《设计模式》,GOF的经典。
    3、《Head first设计模式》,更轻松的入门读物。
    4、《企业应用架构模式》
    5、《分析模式——可复用对象模型》
    6、《面向模式的软件体系结构》,国内貌似翻译了3卷,绝对经典,可惜翻译较差。
    7、《重构——改善既有代码设计》,想写好代码必读。
    8、《重构与模式》

五、方法论
    1、《敏捷软件开发》
    2、《测试驱动开发》,你不一定要TDD,但是你一定要学会做单元测试。
    3、《Agile Java》,也可以作为java入门读物。
    4、《快速软件开发》
    5、《面向对象分析与设计》,OO设计必读。
    6、《Unix编程艺术》,打开你的眼界。

六、Java之外
    1、《unix网络编程》,学习网络编程必读书。
    2、《C++网络编程》上下两卷,介绍ACE的,但是其中对各种模式运用的介绍非常值的一读。
    3、《Joel说软件》,编程文化
    4、《人月神话》、《人件》
    5、《卓有成效的程序员》,给我很大启发的一本书。
    6、《程序员修炼之道》
    7、《计算机程序的构造与解释》,必读
    8、《算法导论》,可以作为参考书
    9、《深入理解计算机系统》

10、《编译原理》龙书,最新版用java解释

Java开发资料汇编的更多相关文章

  1. windows下java开发资料汇总

    开发环境搭建:   (1) java开发环境配置    (2) maven环境快速搭建        项目部署:   (1) Eclipse中项目部署方法   (2) 使用Eclipse构建Maven ...

  2. 资料汇总--java开发程序员必备技能

    1.  熟练使用Java语言进行面向对象程序设计(面向对象:继承.多态.抽象): 有良好的编程习惯(阿里开发手册  链接:http://pan.baidu.com/s/1dFEA6cT 密码:kqj4 ...

  3. 《Java开发学习大纲文档》V7.0

    <Java开发学习大纲文档>V7.0简介: 本文档是根据企业开发所需要掌握的知识点大纲进行总结汇编,是Java开发工程师必备知识体系,系统化学习针对性非常强,逻辑分析能力非常清晰;技术方面 ...

  4. java开发,入职半年。对未来迷茫,如何发展?

    蛮多人私密我一些问题,关于面试,关于技术的,我只能说有些路只能靠自己去走,没人可以帮到自己,哪怕偶尔帮一到两次,但是技术的路这么长,总归需要自己独自成长的.附一张自己藏书的照片,与各位共勉 工作三年多 ...

  5. Java开发的基础条件:

    ------------Java开发的基础条件:Java相关的基础+对编程的自己的理解+调试代码+自己的坚持 一定要谦逊,不人云亦云,不去妄言某一门语言或技术好或坏!不是哪门技术有问题,而是(不会用才 ...

  6. 20145205 实验一 Java开发环境的熟悉

    实验内容 命令行下Java程序开发 IDEA下Java程序开发.调试 练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) 实现凯撒密码,并进行测试 实验要求 使用JDK编译 ...

  7. 使用Java开发高性能网站需要关注的那些事儿

    无论大型门户网站还是中小型垂直类型网站都会对稳定性.性能和可伸缩性有所追求.大型网站的技术经验分享值得我们去学习和借用,但落实到更具体的实践上并不是对所有网站可以适用,其他语言开发的网站我还不敢多说, ...

  8. 打造Linux三流娱乐环境,二流办公环境,一流Java开发环境

    写这篇文章的目的首先是为让自己以后再装linux环境时候,不用再通宵google+百度,做个备忘录,其次,给新入Linux环境的同学分享一点个人经验,再高尚点的动机也算是想做为开源技术的传播布道者.我 ...

  9. Unit01: JAVA开发环境案例

    Top JAVA Fundamental DAY01 JDK及Eclipse目录结构操作 JDK的安装及配置 控制台版的JAVA HelloWorld 使用Eclipse开发Java应用程序 1 JD ...

随机推荐

  1. python 之 GIL(线程和进程的应用)

    一.GIL:http://www.tuicool.com/articles/7zIra2r  http://www.zhihu.com/question/23474039 二.线程锁 在threadi ...

  2. 认识tornado(五)

    Tornado 自带了模板系统,模板语法与 Django 差异不大.这里简单地介绍如何使用 Tornado 的模板系统. 首先是编写 URL 规则与 Handler: 01 class NowaMag ...

  3. 【BZOJ4513】[Sdoi2016]储能表 数位DP

    [BZOJ4513][Sdoi2016]储能表 Description 有一个 n 行 m 列的表格,行从 0 到 n−1 编号,列从 0 到 m−1 编号.每个格子都储存着能量.最初,第 i 行第 ...

  4. ini_set('date.timezone','Asia/Shanghai');

    w 同样的代码,不一样的php ENV.

  5. js滚动显示: 滚动条置顶/底

    <script> //当聊天室的内容超出页面范围时, 如何让页面刷新后 显示最下面的内容 document.getElementByIdx ( 'chatboard').scrollTop ...

  6. eclipse中jar file与runnable jar file的区别

    直接运行 .class的方法     java  -cp .  com.network.Chat  , 不用加.class后缀 从eclipse中export 的jar file,仅仅是把.class ...

  7. Python菜鸟之路:Django 文件上传的几种方式

    方式一:通过form表单中,html input 标签的“file”完成 # 前端代码uoload.html <form method="post" action=" ...

  8. HDU3552(贪心)

    题目是将一系列点对(a,b)分成两个集合.使得A集合的最大a+B集合的最大数b得和最小. 思路:http://blog.csdn.net/dgq8211/article/details/7748078 ...

  9. select * 为什么不好? limit 1 为什么好? --mysql SQL语句优化

    问题一: Select * from  student;  这种语句不好 我的理解:根据Innode存储引擎以及网上的各种资料所说的innodb的B+树索引结构可以分析出,当在非聚集索引列上搜索若用s ...

  10. 安卓项目eclipse有用教程:设置应用名字和图标、屏幕、签名、真机调试、clean、logcat、json解析

    怎样在安卓项目中.设置游戏的应用名字和图标? 我们在Androidproject的res资源目录下.会看到3个drawable的目录和一个values目录.就是在这里改动即可.   关于改动应用程序名 ...