朋友,你好!
看到你无比诚恳的提问,就知道你是一位非常有上进心的人,从你的文笔,能感觉到你的逻辑思维很不错,很有潜力。虽然本人不才,不过很想尽力回答你的问题,在这里发表一下我的看法,也麻烦你读完它们。
首先我先吐槽一下楼上的回答,有答非所问的,有两个说了N本书的人(那些书说实话,世界上找不到几个人是全部看完了的,说白了,不适用,理论知识,你又不是考博士去的)。
进入正题:
你学了2个月左右,如果比较充实的话,你应该已经能自学各种编程语言和思维了,你现在不断的思索未来是个好习惯,不过在这里先提醒你一下,不要误入歧途:有远见可以,不过请不要好高骛远,不要浮躁,国人的一大缺陷就是浮躁,连复兴国家这种大事都想在几十年内搞定。。。扯远了哈。
问题一,C语言学习程度:根据你的描述,现在正在学习C语言,我推荐你认真的学完这门语言。理由:所有的语言的文法(语法)几乎都抄自这门语言,可以说一通百通,而这门语言又很容易学习,涉及面也是最广的,从你手上带的电子表(单片机)到你现在用的 *** 作系统,还有你玩的电脑游戏,无一不涉及到C语言,因为早期的所有软件系统骨架全是C语言写的,人们舍不得丢弃这些比较“完美”的骨架,所以一直在这骨架上搭建其他的系统和软件,最后无法舍弃这些骨架了,所以C语言可以火到现在。再次唠叨,请认真学习这门语言,哪怕你工作以后永远不使用它。
推荐书籍,“谭浩强的那本C语言书”,或者目录相近的你觉得能看明白的就行了,书不用太挑剔,都是模仿过来模仿过去,而且这些书也都只是讲讲文法,并不涉及到实际应用,总之,一本足矣。
问题二,JAVA方向以及书籍:你自己说过,你肯定是走JAVA方向,我也这样认为,现在JAVA方向和C#方向是国内主流,它们门槛都比较低,我也是JAVA方向的,所以这里能多给你点建议。学完C语言以后,你学习JAVA的文法(语法)就会很轻松了,除了面向对象思想要理解外,其他的都能很快吸收,你应该在学习文法的同时领会面向对象思想,你看完(自己提前看吧)你们的JAVA教材后,注意多看面向对象那几章,熟悉以后,请马上去买本(或者网上下电子版本)《Thinking in Java》(中文名JAVA编程思想),它能彻底让你掌握面向对象思想。之后,你不要考虑用JAVA开发桌面应用程序(在国内工作几乎用不到),你应该开始重新捡起HTML、javascript这些WEB相关的东西了,同时自己熟悉JSP以及配置TOMCAT服务端(自己没有WEB包或者不会建立的话先去网上下载点JSP程序,TOMCAT主要是学习如何配置那些xml配置文档),JSP的话一定要苦学,要找几本书看(未来的工作啊),JSP书不好推荐,随便找几本看看吧,都一个模子造的,都挺好的,不存在经典不经典,就是学起来有点苦涩,而且实话有点难,都是学习的别人用JAVA建立好的规则上的(说白了你不是在学JAVA,也不是在学文法,是在学应用了哦,应用前人开发的容器、规则、接口、对象,以后会理解的)。WEB编程学习,前期没有美工支持,自己页面设计能力不行的话,你发现你做出来的例子都很没用很丑陋,没什么成就感,请注意不要放弃。当你能独立开发JSP程序部署JSP程序到TOMCAT上以后,你可以开始学习SSH框架了(找工作的敲门砖,你最应该学的东西),SSH即struts,spring,hibernate这三个家伙,不知道请百度查一下,相关的书籍多如牛毛,找几本自己喜欢的吧,比如封面好看,目录排布好点的就可以(都是一个模子),然后再买本实例书籍,专门讲实例的,比如开发图书管理系统,购物系统的SSH书籍。学完了(自己能独立开发WEB应用了)以后JAVA方向你已经可以出山了,完全可以找工作去了,前面提到JAVA方向门槛低,是事实,熟悉SSH的都能找到工作。
问题三,数据库:不多说哦,上面说的那些东西学的时候自然要涉及到数据库,你会参照书上的下载并使用的,简单的说几个流行的,sqlserver、oracle、access、mysql这四个很流行,mysql是免费的,停止升级了已经,其他的也有免费版本,不过不好使,必须学sqlserver,其他的看公司情况,进了公司,有一段磨合期足够你学会一种新的数据库了,也是一通百通的东西,书籍嘛,就是百度,不会的查询语句,都能百度到,然后就是查看数据库自带的联机帮助文档。
问题四,入行以后干什么:按要求办事,前面有磨合期供你适应公司以及项目,多注意沟通同时充电就好了,同时写博客记录你在工作时学到的技巧和碰到的问题的解决方案,积少成多,10年成精。
问题五,升职:多去考点证书,学历要有,自考也行,职称证书要考,充电的时候多学习管理层次的书籍,软件工程必学~~~其他的你自然会知道的,时间有限,而且多说无益,不要依赖,相信自己,感觉你是个潜力股,加油吧朋友!
希望我的回答符合你的需要(说不定我说多了偏题了,呵呵,不好意思了)
Java的优势是简单、面向对象、分布式、解释执行、鲁棒、安全、体系结构中立、可移植、高性能、多线程以及动态性。
Java语言的设计从现在的角度看非常中庸,啥都不是特别出色,但都“凑合”。
学习Java就业时就意味着有不少选择余地的。
其实Java并没有想象中的那么难,前提是做好一个心理准备,那就是你想走远点,就得不间断的去学习,去汲取知识,前期不能怕辛苦,不要闲下来就打游戏,多看看各种开源项目的代码,API的设计方式,各大网站的设计架构,理解各个环节的作用。补齐自己的知识视野。
推荐这些Java方面的书籍,仅供参考
《Head First Java》
零基础的小白与半路出家者的最爱
这是一本完整的面向对象(object-oriented,oo)程序设计和java的学习指导,以生动有趣而风靡。本书是根据学习理论所设计的,可以从学习程序语言的基础开始一直到包括线程、网络与分布式程序等项目。而且不只是读死书,你还会玩游戏、拼图、解谜题以及以意想不到的方式与java交互。在这些活动中,你会写出一堆真正的java程序,包括了一个船舰炮战游戏和一个网络聊天程序。
《Java 核心技术》与《Java 编程思想》
《JAVA编程思想》显然要更深入地剖析java,而《JAVA核心技术》是对于java各个知识点的阐述。可以说《JAVA编程思想》重在深度,理解为教人怎么写代码。《JAVA核心技术Ⅰ》重在全面,甚至罗列了很多API。
《算法第四版》
必读之作,不仅涵盖所有 Java 基础,对于编程思想层面的提升也有很好的帮助。
《Effective Java 中文版(第2版)》
Java 编程中78条极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。
《重构:改善既有代码的设计》
出自于 Martin Fowler 的大作,写出优秀代码的必经之路。
《Java Concurrency in Practice》
了解 Java 并发编程必读佳作,建议阅读英文版。
《敏捷软件开发, 原则,模式,实践》
该书作者是Robert C Martin。本书重点讲述了如何使用uml,并通过真实案例讲解如何用极限编程来设计、测试、量构和结对编程。曾经获得美国《软件开发》第13届震撼(jolt)大奖!
《Java并发编程实战》
书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构建块,用于避免并发危险、构造线程安全的类及验证线程安全的规则,如何将小的线程安全类组合成更大的线程安全类,如何利用线程来提高并发应用程序的吞吐量,如何识别可并行执行的任务,如何提高单线程子系统的响应性,如何确保并发程序执行预期任务,如何提高并发代码的性能和可伸缩性等内容,最后介绍了一些高级主题,如显式锁、原子变量、非阻塞算法以及如何开发自定义的同步工具类。
《深入理解Java 虚拟机》
全书共分为五大部分。从宏观的角度介绍了整个Java技术体系到JVM的自动内存管理,包括虚拟机内存区域的划分原理以及各种内存溢出异常产生的原因;常见的垃圾收集算法以及垃圾收集器的特点和工作原理;常见的虚拟机的监控与调试工具的原理和使用方法。从虚拟机的执行子系统,包括Class的文件结构以及如何存储和访问Class中的数据;虚拟机的类创建机制以及类加载器的工作原理和它对虚拟机的意义;虚拟机字节码的执行引擎以及它在实行代码时涉及的内存结构。到讲解了程序的编译与代码的优化,阐述了泛型、自动装箱拆箱、条件编译等语法糖的原理;讲解了虚拟机的热点探测方法、HotSpot的即时编译器、编译触发条件,以及如何从虚拟机外部观察和分析JIT编译的数据和结果。
第一阶段:Java语言基础
Java语言基础
1、面向对象思维JAVASE
2、(类加载机制与反射,annotation,泛型,网络编程,多线程,IO,异常处理,常用API,面向对象,JAVA编程基础)
3、Java8新特性
第二阶段:数据库
JAVA战狼班数据库
1、Oracle(SQL语句、SQL语句原理、SQL语句优化、表、视图
2、序列、索引、Oracle数据字典、Oracle数据库PL/SQL开发
3、数据库设计原则、MySQL、JDBC
兄弟连JAVA战狼班第三阶段:Web基础
Web基础
1、HTML5(H5)基本文档结构、链接、列表、表格、表单;
2、CSS基础语法、盒子模型、浮动布局、定位;
3、JavaScript语言基础、DOM编程、事件模型等),JQuery,AJAX框架,XML,BootStrap组件
第四阶段:JavaWeb技术和主流框架
JavaWeb技术和主流框架
1、JSP&Servlet、struts2,hibernate4,spring4,JPA,maven
2、SpringData,SpringMVC,MyBatis,,shiro,Nginx
第五阶段:Linux
Linux
1、Linux安装、熟悉Linux的基础命令、vi编辑器的使用、awk和sed命令使用、用户和组
2、文件及目录权限管理、使用ACL进行高级访问控制、网络配置和软件包安装、启动流程和服务管理
3、系统监控和日志管理、进程管理和计划任务、ssh远程登录、shell基础和shell脚本。
第六阶段:大数据技术(Hadoop和Spark)
大数据技术(Hadoop和Spark)
1、Hadoop(Hadoop基础和环境搭建,HDFS体系结构,MapRece;Hadoop的集群模式、HDFS联盟,利用ZooKeeper来实现Hadoop集群的HA(高可用性)功能
2、Yarn的任务调度机制,ApacheHive,Pig数据处理,集成Hadoop和Sqoop
3、Flume以及ApacheKafka来实现数据的交换,安装部署HBase,Storm)
4、Scala语言(Scala环境搭建、Scala基础语法、模式匹配、重载与构造器、Map与rece、元组、继承、,OptionSomeNone,Tuple;集合方法和运算,future对象同步处理和异步处理返回结果)
5、Spark(Spark搭建,Spark-shell的使用,Spark-submit提交应用,Spark的内核设计和实现,并对内核中的实现架构、运行原理进行详细的讲解;Spark生态体系中的各个组件,包括:SparkCore,Shark,SparkSQL和SparkStreaming等等)
第七阶段:项目
项目
1、China-UCSP项目SSM(SpringSpringMVCMyBatis)
2、用户关系管理系统S2SHMavenNodejsMySQL技术实战开发
3、电子商务交易平台S2SHMavenShiroOracle
第一部分: Java语言篇
1 《Java编程规范》
星级:
适合对象:初级,中级
介绍:作者James Gosling(Java之父),所以这本书我觉得你怎么也得读一下。对基础讲解的很不错。
2 《Java核心技术:卷Ⅰ基础知识》
星级:
适合对象:初级,中级
介绍:官方机构图书,你怎么也得有一本,这本书比较全面而且易懂。放在案旁用到的时候查一查,看一看。是学习入门必备书。
当然还有II
注:新手必备
3 《Java编程思想》
星级:
适合对象:初级,中级
介绍:这本书的作者就是著名的C++编程思想,对OO的理解很好,Java作为一门面向对象的语言,你学习Java最好也同时参考这本书进行入门学习。
注:新手必备
4 《Effective Java》
星级:
适合对象:初级,中级,高级
介绍:作者是Java的第2号人物,目前是Google的Java老大,是James Gosling强力推荐的一本书。
5 《Java与模式》
星级:
适合对象:中级,高级
介绍:是国人写的难得的值得购买的一本书,当然现在也有大话设计模式之类的出现,这本书出现的比较早,是初级到中高级必读的图书之一。
注:没有理解面向对象前,读这本书没有意义。最好是有过项目经验再读比较好。
6 《SCJP学习指南》
星级:
适合对象:初级,中级
介绍:官方考试必备图书,对你检验自己学些Java知识情况很有帮助,这本书最适合学生阅读,这本书理解透了,找工作面试Java题目不会有任何问题,工作多年的拿这里的题目不会做的都很多。
7 《Java数据结构和算法》
星级:
适合对象:初级,中级,高级
介绍:这本书使用Java语言描述了我们常用的数据结构,写的非常不错。值得一看,不过目前基本断货(这个就是最有利的说明)。
8《Junit Recipes中文版:程序员实用测试技巧》
星级:
适合对象:初级,中级,高级
介绍:目前敏捷盛行,这个你是不管怎样也得看一看的。
第二部分:中级进阶篇
1《spring in action》
星级:
适合对象:初级,中级,高级
介绍:Spring框架,作为Java程序员是怎么都必须学习的。IOC、AOP是你以后见到的软件的基础。另外基本上很多东西都和Spring产生联系。
2《精通Spring 2x:企业应用开发详解》
星级:
适合对象:初级,中级,高级
介绍:书中提供了Spring中的目前最流行用法的实例和实用情况。
3《iBatis实践》
星级:
适合对象:初级,中级,高级
介绍:iBatis必看参考书,in action从未让人失望过。
4 《精通hibernate:Java对象持久化技术详解》
星级:
适合对象:初级,中级,高级
介绍:Hibernate必备参考书,也是国人写的,难得的一本好书,而且作者是个MM。
5 《Struts 21权威指南》
星级:
适合对象:初级,中级
介绍:学习Struts2的一本国人写的不错的书,不过名称显得大了点。权威指南应该只有作者才可以这么叫。
6 《Maven实践》
星级:
适合对象:初级,中级
介绍:从Ant到Maven现在时大势所趋了,您怎么也得学习一下。
7《expert one-on-one J2EE Development without EJB中文版》
星级:
适合对象:初级,中级
介绍:这个其实是Spring的基础,作者巨牛。强力推荐,可惜是基本买不到这本书了。
8 《Tomcat权威指南》
星级:
适合对象:初级,中级
介绍:做Java Web的一般都必须学习这个,为Apache的开源项目。
9 《Head First Servlets & Jsp》
星级:
适合对象:初级,中级
介绍:Servlet和Jsp作为JavaEE程序员是必须要掌握好的,而且Head First系列从未令人失望。
10 《Head First HTML与CSSXHTML》
星级:
适合对象:初级
介绍:介绍Web前端的不错的入门书。
11 《HTML+CSS网页设计与布局从入门到精通》
星级:
适合对象:初级
介绍:这本书最大的特点是带光盘而且讲解的不错,应用实例也不错。
12 《JavaScript宝典》
星级:
适合对象:初级,中级,高级
介绍:是学习js的必备参考工具书之一,我记得几年前国内都没有中文版,我都把整本书打印出来看了一下。
13 《JavaScript权威指南》
星级:
适合对象:初级,中级,高级
介绍:是学习js的必备参考工具书之一。我看我同事购买了,看起来还不错。
14 《征服Ajax Web20开发技术详解》
星级:
适合对象:初级,中级
介绍:这本书当年是CSDN送给我的,感觉还是不错的。对学习AJAX有帮助。
15 《jQuery基础教程》
星级:
适合对象:初级,中级,高级
介绍:从这个开始学习jQuery才是根本。不然以后遇到的很多奇怪问题不知所以然。jQuery个人感觉已经成为目前的javascript标准库了,插件无数,大大简化了前端工作。
16 《XML入门经典》
星级:
适合对象:初级,中级,高级
介绍:很多人觉得没必要买XML书籍,不过我还是觉得推荐一本给你作为工具书,而且看本书可以使得你对XML方方面面有个了解。里面不少东西还是用到的。
17 《敏捷软件开发(原则模式与实践)》
星级:
适合对象:中级,高级
介绍:敏捷大师的著作,您怎么也得看看。这本书包含了UML的讲解,所以我就不推荐UML的书了。
18 《重构:改善既有代码的设计》
星级:
适合对象:中级,高级
介绍:同样是大师的杰作,不可不看。最重要的是让你明白软件也是一步步改进的,不是一蹴而就的。
19 《代码整洁之道》
星级:
适合对象:中级,高级
介绍:软件工程的理想编码是需要无数人编出来的代码像一个人写的。这本书当作规范就不错。
星级:20 《Java Web Service》
适合对象:中级,高级
介绍:不过还是推荐一下我看过的吧。了解基本概念还是要本书的。
注意:WebService的图书我还真不知道给您推荐什么,都不怎么样。您做个实例就明白,不过怎么做接口才是核心。
第三部分:高级篇
1 《Java消息服务》
星级:
适合对象:初级,中级,高级
介绍:消息机制是以前分布式经常实用到的,与此相关的有Apache Active MQ进行开发,而且这本书的实例也是用的AQ。
星级:2 《Java并发实践》
适合对象:中级,高级
介绍:这本书也是牛人们强力推荐的,学习并发必备。
Java Thread Programming
另外推荐一本英文的:
3 《Enterprise JavaBeans 30中文版》
星级:
适合对象:中级,高级
介绍:EJB技术在大型系统中使用,主要有银行等金融机构。是开发分布式程序的选项之一,不过我不喜欢,其实银行使用的也不怎么的。结合JavaEE容器使用,开源的有JBoss,商用的有IBM和Oracle支持。
4 《Hadoop权威指南》注:该类型书也有Head First系列,也很不错。另外《J2EE应用与BEA WebLogic Server》书也很不错。
星级:
适合对象:中级,高级
介绍:云计算必备图书。作为分布式计算的工具,Hadoop目前可以说是市场上唯一成熟的产品,而且大家也都向其看齐。而起云计算炙手可热,你搞明白这本书就大概明白了什么是云以及怎么做云。做Hadoop的没人不读这本书,没读过的也不要说你搞过Hadoop。
星级:附: 《Linux 鸟哥的私房菜》
适合对象:初级,中级,高级
介绍:这本书对使用和学习Linux很有用,大而全,解释的也不错,常用的基本都有了,一本在手,绝无顾忧。
最后,推荐一本贯彻全部软件工程和全文的图书《代码大全》,只是一句话:两届Software Development Magzine Jolt Award震撼大奖得主。
最近发现有人购买我的2手书:附加:
深入Java虚拟机(原书第2版)附光盘---SUN公司核心技术丛书
所以我推荐一下下面的这本:
The Java Virtual Machine Specification
个人认为这个写的比较好,并且更权威。
以上就是关于学习C、JAVA、数据库要看哪些书全部的内容,包括:学习C、JAVA、数据库要看哪些书、学java看什么书、做JAVA开发需要学什么课程.(java软件开发需要学什么)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)