不论是从2018年TIOBE 每个月的编程语言排行榜上看,还是从各知名招聘网站年底分析的招聘报告中了解,我们都不难看出,在IT行业里Java依然是技术圈中最热门、最抢手、需求量最大的编程语言!
所以,我们常常能够在知乎、百度上搜索到大量类似于“如何选择一家好的Java培训机构”、“选择Java培训机构应该注意哪些问题”、“有哪些Java培训机构值得推荐”等等,这些相关提问和帖子。
各类问题下的答案也是参差不齐,但不乏有培训学员的吐槽,培训机构的水军吹嘘,肯定也夹杂着一些吃瓜群众的脑洞回答。如果你找几个以上类似的问题来认真分析,你一定会发现他们的回答基本分为三类:
其一,我去过XX机构,或者我朋友、亲戚在XX机构学习,然后巴拉巴拉对XX机构做出一大段评价,且全是好话。
这种回答里大概率是培训机构的水军,毕竟如果只是一个普通的学员,一定懒得打字,自己又没啥好处,除非他对该机构有特别大的认同感。
其二,XX机构实力强,是上市机构,讲师都是大牛,平均就业薪资人人上万……
这类回答铁定是假的,作为陌生人,谁会这么层次分明的去给你科普,或者吹捧呢?
是你,你会么?
其三,客观分析,不吹嘘自己不贬低同行,只分享一些能够让你规避掉一些问题的方法。
但长久以来,这类攻略也会有一些瑕疵,也许它可以保证帮你规避掉绝大部分虚假不负责的机构,但也未必能够找到真正专业,又有实力的好机构。
所以今天蛋哥换个角度,跟大家聊点跟以前不一样的评判标准,选择一家靠谱的培训机构还可以从以下三个方面来进行了解。
一、不同规模的机构各有什么区别?
1.没有任何一家机构所有的课程都是牛逼的,就像人一样有优势有短板,除非它只专注1-2门课程的教学。往往大多数培训机构是不会愿意这样做,毕竟编程语言那么多,太过于专注会流失掉大量学生,从而造成营收减少的结果。
2.大机构一般不会假,但是大而全意味着在很多课程上不够精细,更多的是一种标准化教学,培训出来的学生大多实力只能说是一般。并且有些大机构是加盟校区,所以在同一个品牌下出现了千差万别的教学结果。
3.中小型机构中有相当一部分是小而美的,尽管语言少,但是会有自己的专精领域,培训出来的学生在特定领域的实力会PK掉大部分知名机构的学员。
4.中小型机构的弊端就是鱼龙混杂,没有老司机指路很容易掉坑,被坑进一个只管招不管教的假机构里。
二、如何在中小型机构中选出靠谱的?
外行人选培训机构大多是看成立时间、校区规模,可这些对于学员最终的就业情况和薪资实际上是没有太大影响的。
对于学生而言,最重要的是技术知识,是如何把它学会,如何把它运用到项目中去,如何在培训期间参加到更多的实战项目,这些硬技能才能成为你培训完以后面试时的核心竞争力,所以选择时一定要慎重考量以下两点:
1.课程内容。
培训机构相较于自学而言,很大的优势在于实战项目,因为如果只看基础的理论知识,某宝上几块钱就可以买不同的好几套。而实战项目的作用就是让学员通过项目能够最快的和研发公司最实际的工作相契合。
还有就是课程的更新速度,优秀的培训机构课程体系一定是半年一小更,一年一大更的,而实力不行的机构往往这方面严重滞后,甚至还在拿几年前的东西继续糊弄学生。
2.教学方式。
如果你只想通过听、看、背这三种常规的手段来学习IT技术,那你永远从事不了编程工作,所以一定是练和学相结合,边练边学,从敲代码的过程中来学习新知识,掌握新知识,而不是刻意拿个小本本像背古诗词一样去背诵。
所以选择培训机构时,一定要了解他们的教学方式是边做边学,还是统一学完后自己做,优先选择项目驱动教学的机构。
三、有这种情况的培训机构请慎重考虑。
1.培训费用:费用高的不一定教学质量就好,费用低的也不一定教学质量就差。不要盲目的过分注重培训价格,适合自己的教学体系和教学模式才是最好的。
2.培训证书:并不是所有加入到XX协会的机构,都属于正规的发证机关,大家一要认清发证名称与机关;二要认清证书含金量。
3.乱价行为:作为一个全国性公司或者品牌公司,学费根据公司多年发展数据积累定出来的,价格都是全国定价,不能因人而异,如果一个公司价格随便波动,大家一定要警惕公司的正规性。因为价格随便乱动,就是师资质量的调整,最终影响就业薪资的高低。
截至目前,java在市场上非但没有衰减,反而火爆依旧。也造就了现在如此火爆的IT市场,有了市场,随之而产生的自然就是一大批培训学校。
想必大多数想入这一行的新人最关心的话题就是培训学校哪家好了。
在我看来,要说哪家学校最好,肯定是没有一个准确的答案的,各家都有各家的说辞,各自的特点也不一样。要想知道哪家才是真的好,还是要去亲自看看才知道,这里给出几个方法可供参考:
①直接到学校参加试听课,直接了解课程设置情况、老师授课方式以及校内学习氛围等情况。
②与校内学生多沟通交流,调查学校真实口碑和校内信息。
③查询学校相关就业信息,很多学校会公开老学员就业信息,查询是否有作假成分。
掌握这些信息可能会帮助你找到合适的学校,但是你要清楚的是,要想真正能够学成,跟自己的努力是分不开的。
选择可以试听的机构实地看看再做决定。
在选择一所Java培训的时候首先一定要看准学院就业情况,品牌,一家好的Java培训机构一定是非常出名并且对Java的教学是非常专业专注的 。了解下往届学员的口碑评价,平均就业薪资,对学习中的一些问题,多方面比较以后再决定去一家适合自己的机构。
对于新手学习java你可以先看看:
一、Java编程入门类
对于没有Java编程经验的程序员要入门,随便读什么入门书籍都一样,这个阶段需要你快速的掌握Java基础语法和基本用法,宗旨就是“囫囵吞枣不求甚解”,先对Java熟悉起来再说。用很短的时间快速过一遍Java语法,连懵带猜多写写代码,要“知其然”。
1、《Java编程思想》
在有了一定的Java编程经验之后,你需要“知其所以然”了。这个时候《Java编程思想》是一本让你知其所以然的好书,它对于基本的面向对象知识有比较清楚的交待,对Java基本语法,基本类库有比较清楚的讲解,可以帮你打一个良好的Java编程基础。这本书的缺点是实在太厚,也比较罗嗦,不适合现代人快节奏学习,因此看这本书要懂得取舍,不是每章每节都值得一看的,挑重点的深入看就可以了。 对于学习有困难可以加扣:五7八接着再来不要断开0二四后面跟着再来一4四连在一起即可,进行交流同时得到大神得指导和帮助,外加获取免费得听课权限!2、《Agile Java》中文版
这本书是出版社送给我的,我一拿到就束之高阁,放在书柜一页都没有翻过,但是前两天整理书柜的时候,拿出来一翻,竟然发现这绝对是一本好书!这本书一大特点是以单元测试和TDD来贯穿全书的,在教你Java各种重要的基础知识的过程中,潜移默化的影响你的编程思维走向敏捷,走向TDD。另外这本书成书很新,以JDK5.0的语法为基础讲解,要学习JDK5.0的新语法也不错。还有这本书对于内容取舍也非常得当,Java语言毕竟类库庞大,可以讲的内容太多,这本书选择的内容以及内容的多寡都很得当,可以让你以最少的时间掌握Java最重要的知识,顺便培养出来优秀的编程思路,真是一本不可多得的好书。
虽然作者自己把这本书定位在入门级别,但我不确定这本书用来入门是不是稍微深了点,我自己也准备有空的时候翻翻这本书,学习学习。
二、Java编程进阶类
打下一个良好的Java基础,还需要更多的实践经验积累,我想没有什么捷径。有两本书值得你在编程生涯的这个阶段阅读,培养良好的编程习惯,提高你的代码质量。
1、《重构 改善既有代码的设计》
这本书名气很大,不用多介绍,可以在闲暇的时候多翻翻,多和自己的实践相互印证。这本书对你产生影响是潜移默化的。
2、《测试驱动开发 by Example》
本书最大特点是很薄,看起来没有什么负担。你可以找一个周末的下午,一边看,一边照做,一个下午就把书看完,这本书的所有例子跑完了。这本书的作用是通过实战让你培养TDD的思路。
三、Java架构师之路
到这个阶段,你应该已经非常娴熟的运用Java编程,而且有了一个良好的编程思路和习惯了,但是你可能还缺乏对应用软件整体架构的把握,现在就是你迈向架构师的第一步。
1、《Expert One-on-One J2EE Design and Development》
这本书是Rod Johnson的成名著作,非常经典,从这本书中的代码诞生了springframework。但是好像这本书没有中译本。
2、《Expert One-on-One J2EE Development without EJB》
这本书由gigix组织翻译,多位业界专家参与,虽然署名译者是JavaEye,其实JavaEye出力不多,实在是忝居译者之名。
以上两本书都是Rod Johnson的经典名著,Java架构师的必读书籍。在我所推荐的这些书籍当中,是我看过的最仔细,最认真的书,我当时读这本书几乎是废寝忘食的一气读完的,有小时候挑灯夜读金庸武侠小说的劲头,书中所讲内容和自己的经验知识一一印证,又被无比精辟的总结出来,读完这本书以后,我有种被打通经脉,功力爆增的感觉。
但是后来我看过一些其他人的评价,似乎阅读体验并没有我那么high,也许是因为每个人的知识积累和经验不同导致的。我那个时候刚好是经验知识积累已经足够丰富,但是还没有系统的整理成型,让这本书一梳理,立刻形成完整的知识体系了。
3、《企业应用架构模式》
Martin的又一本名著,但这本书我只是泛泛的看了一遍,并没有仔细看。这本书似乎更适合做框架的人去看,例如如果你打算自己写一个ORM的话,这本书是一定要看的。但是做应用的人,不看貌似也无所谓,但是如果有空,我还是推荐认真看看,会让你知道框架为什么要这样设计,这样你的层次可以晋升到框架设计者的角度去思考问题。Martin的书我向来都是推崇,但是从来都没有像Rod Johnson的书那样非常认真去看。
4、《敏捷软件开发原则、模式与实践》
Uncle Bob的名著,敏捷的经典名著,这本书比较特别,与其说是讲软件开发过程的书,不如说讲软件架构的书,本书用了很大篇幅讲各种面向对象软件开发的各种模式,个人以为看了这本书,就不必看GoF的《设计模式》了。
四、软件开发过程
了解软件开发过程不单纯是提高程序员个人的良好编程习惯,也是增强团队协作的基础。
1、《UML精粹》
UML其实和软件开发过程没有什么必然联系,却是软件团队协作沟通,撰写软件文档需要的工具。但是UML真正实用的图不多,看看这本书已经足够了,完全没有必要去啃《UML用户指南》之类的东西。要提醒大家的是,这本书的中译本翻译的非常之烂,建议有条件的看英文原版。
2、《解析极限编程 拥抱变化》XP
这是Kent Beck名著的第二版,中英文对照。没什么好说的,必读书籍。
3、《统一软件开发过程》UP
其实UP和敏捷并不一定冲突,UP也非常强调迭代,测试,但是UP强调的文档和过程驱动却是敏捷所不取的。不管怎么说,UP值得你去读,毕竟在中国真正接受敏捷的企业很少,你还是需要用UP来武装一下自己的,哪怕是披着UP的XP。
4、《敏捷建模》AM
Scott Ambler的名著,这本书非常的progmatic,告诉你怎么既敏捷又UP,把敏捷和UP统一起来了,又提出了很多progmatic的建议和做法。你可以把《解析极限编程拥抱变化》、《统一软件开发过程》和《敏捷建模》这三本书放在一起读,看XP和UP的不同点,再看AM是怎么统一XP和UP的,把这三种理论融为一炉,形成自己的理论体系,那么你也可以去写书了。
五、软件项目管理
如果你突然被领导提拔为项目经理,而你完全没有项目管理经验,你肯定会心里没底;如果你觉得自己管理项目不善,很想改善你的项目管理能力,那么去考PMP肯定是远水不解近渴的。
1、《快速软件开发》
这也是一本名著。可以这样说,有本书在手,你就有了一个项目管理的高级参谋给你出谋划策,再也不必担心自己不能胜任的问题了。这本书不是讲管理的理论的,在实际的项目管理中,讲这些理论是不解决问题的,这本书有点类似于“软件项目点子大全”之类的东西,列举了种种软件项目当中面临的各种问题,以及应该如何解决问题的点子,你只需要稍加变通,找方抓药就行了。
六、总结
在这份推荐阅读书籍的名单中,我没有列举流行的软件框架类学习书籍,例如Struts,Hibernate,Spring之类,也没有列举AJAX方面的书籍。