java吧 关注:1,253,737贴子:12,740,746

回复:一年时间,从小白到进入阿里巴巴核心部门

取消只看楼主收藏回复

先出去吃个饭,回来继续


IP属地:四川58楼2015-03-14 12:22
收起回复

    但你们不知道学什么的时候就看看这张图,我觉得很有帮助,接下来说说我的学习方法


    IP属地:四川来自百度输入法69楼2015-03-14 12:58
    收起回复
      楼主的观点是:如果你想提高自己的水平,一定要和优秀的人交流,学习他们的思维方式和处事能力。感知他们的气场,看看比你优秀的人在干什么!!
      如果你发现比你优秀的人还比你帅还比你努力,那你就真的是个loser


      IP属地:四川72楼2015-03-14 13:01
      收起回复
        当然楼上说的是做人方面,我现在说说技术吧。
        基础:这是非常非常非常非常重要的,只要基础好了,框架什么的你自己都能写,还学什么框架(学框架更加快),那什么属于基础呢?我觉得有以下东西,数据结构、计算机网络、数据库、操作系统。这是计算机基础,在java的话,我觉得应该是,IO,NIO,并发(包括concurrent包下的),集合框架(理解原理,多看看源码),反射。面对对象的思想,OOP,OOA,OOD。JVM,JMM(这两个虽然实战经验很少,当时一定要去学习了解一下你就知道什么时候用volatile什么时候用sync)。
        提高:在基础上面如何提高自己呢?我们有基础之后,我觉得需要学习设计模式,深入的学习数据库(包括,索引原理,ACID,事务隔离机制,触发器,存储过程等等,数据库的锁机制,行锁,表锁,悲观,乐观,),在这个阶段要学会看看源码,把IOC,AOP的原理弄清楚,Spring是怎么找到bean,怎么加载。怎么解析等等,。当你遇到此类问题,你可以马上就找到问题在哪里,这就是看源码的好处。Aop也不能只是了解动态代理的原理,还要知道什么是aspect,pointcut等等,为什么AOP联盟要定义这些接口...这个时候你就要知道什么是解耦合,什么是高类聚。怎样让代码变得可重用行和扩展性更高,设计模式带给你的好处将是质的变化
        深入:其实到这里都是看自己了吧,了解什么是SOA,OSGI。什么是分布式(分布式数据库,分布式文件系统),负载均衡(lvs,Ngnix等)。了解云计算,了解实时计算。知道spark,hadoop,storm。什么是虚拟化技术。这方面我也只是入门,不敢多写!
        平常怎样学习:1、给自己定下目标。2、多看看好的博客。3、多了解新的技术(就算你不是学前端的你也要知道前端貌似有个AngularJS,扩宽眼界)4、多写代码、5、少来java吧水(java吧是一个平时大家交流的平台,大家可以来发泄发泄工作和学习的压力,但是这里真的不是学习技术的地方。PS:别打我!)
        6:坚持!!!!!!!!!!!!!!!!!!。
        送大家一句话:越努力,越幸运!


        IP属地:四川77楼2015-03-14 13:25
        收起回复
          接下来我收集一些阿里巴巴招聘的题目(都是最近周围同学的面试经验),大家可以思考一下


          IP属地:四川81楼2015-03-14 13:45
          回复
            java后台方向NO1:
            1.Arraylist和linkedlist的区别及原理
            2.常用的IO有哪些,io框架用的什么设计模式
            3.vector和arraylist有什么区别
            4.怎样创建一个线程,用什么启动
            5,4个窗口,20个人怎样保证并发,说说ConcurrentHashmap原理
            7,两个数组一个100长度,一个101长度,前一个是后一个的子集。怎样找出多出的一个数
            8,了解NIO吗?说说优点
            9,JSP 9大内置对象
            10.看过哪些书籍,说说作者和书的名字
            11.分布式节点内部通信机制
            12,说说你的框架,怎样理解MVC的
            13.知道网络编程吗?说说分布式。
            14,说说你的网站架构,SOA管理方式,什么是webservice
            15,什么是RPC框架,有什么优点
            16,你平常是怎么学习的
            17.团队是如何管理的,你处于一个什么位置
            18,怎样协调团队矛盾
            20,介绍你的项目,分布式数据库怎么分表,用的什么中间件
            大家自动回答


            IP属地:四川83楼2015-03-14 13:48
            收起回复
              java后台方向NO2:
              3.对中间件的了解
              4.平时从哪里学习这些技术
              5.遇到技术问题如何解决,举nginx负载的例子。。
              6.怎么读源码,说了一下nginx内存池的实现
              1.mysql连接池作用,实现
              3.怎么预防死锁,出现死锁怎么解决
              4.常见设计模式和其运用
              1.你是怎么设计数据库的
              2.数据库索引有哪些 索引基于哪些类型实现
              3.你是怎么根据索引去数据库优化
              4.GC root
              5.事务
              6.ConcurrentHashMap HashMap(这里讲了下ConcurrentHashMap源码,及JAVA中锁的实现原理基于AQS,AQS原理,基于CAS实现)
              7.对了,还有JMM volatile原理
              其他的忘记了
              1.JTA实现原理(onepc two pc three pc) :二阶段提交出现的问题,就说了一下加入observe,,后面讨论了下二阶段提交的脑列问题
              2.Spring (这里讲了一下自己的IOC) 分析了一下AOP
              3.讨论了支付宝抢红包的采取了哪些优化,事务基于几阶段提交...
              2.负载均衡 LVS与ngnix区别
              3.其他的都是一些学习方法方面的。。
              1.在项目中用过哪些设计模式。解决了什么问题。优缺点。
              2.表设计 三范式,反范式
              3.事务 银行转账例子。。 a和b不在同一个库里面的事务设计。mysql怎么做。自己写代码怎么实现
              4.Nginx 负载 介绍反向代理的概念 负载常见算法
              5.负载多服务器之间如何通信。
              6.高并发问题 双十一,你觉得哪个会先挂。。我说的是mysql。怎么解决。
              1.计算机网络七层模型,TCP三次握手
              2.说说常见的TCP应用
              3.说说常见的linux命令
              4,JVM的垃圾回收,volatile 机制,内存模型
              5.string,stringbuffer,stringbuilder的区别,ArrayList,linkedList 的差别 查找 删除的时间复杂度。
              6.Spring AOP,IOC
              7.HashMap源码,线程池框架源码
              8.常见的设计模式并说明用处
              IO模型有哪些?
              进程线程的区别
              不同操作系统实现进程怎么样
              gc算法,回收器有哪些
              ACID。事务隔离机制
              syn在方法上和代码块有什么不同
              memcached和其他nosql不区别
              解释mvc
              threadlocal解释
              volatile的作用
              堆和栈的区别和联系
              tcp和udp的不同之处
              tcp如何保证可靠的
              数组和链表的区别
              排序算法应用场景
              lucene全文检索原理
              二面:
              浏览器输入http://www.baidu.com,整个流程
              分布式缓存,一致性HasH算法,memcached内存结构
              tcp三次握手
              tcp滑动窗口解释
              SSO单点登录
              数据库分表,分区


              IP属地:四川85楼2015-03-14 13:58
              回复
                I/O:将对象转换为文件实现什么接口
                反射:反射是哪一个类 有些什么方法 通过反射获取方法时,能获取private的方法吗?protected?
                servlet:流程 服务器和session的联系 cookie和session的区别
                springmvc:流程 处理请求是哪一个类,有些什么方法,它实现了什么接口
                spring:两个特性解释 哪些地方用到aop 声明式事务管理的步骤(每一步相关的类)
                数据库:分页的sql 还有个什么sql忘了 left join和right join的区别
                集合框架:collection下面有什么 arrayList和linkedList区别 结合hashmap源码分析hashmap
                jvm原理 classloader 堆栈区别 堆栈原理
                垃圾回收机制工作原理 当对象不再调用,就进行回收吗还是怎样 System.gc执行后,直接进行回收吗还是怎样
                tcp/ip区别 一个方法要同步怎么办 怎样实现线程
                抽象类和接口的区别(这里问得很细) 抽象类和普通类的优缺点
                memcached原理 流程 它的分布式算法 缓存策略
                还有算法 快速排序


                IP属地:四川87楼2015-03-14 13:58
                收起回复
                  请大家可以留下自己的问题,我都会一一回复的


                  IP属地:四川88楼2015-03-14 14:12
                  收起回复
                    没事儿


                    IP属地:四川来自iPhone客户端100楼2015-03-14 15:10
                    回复
                      给大家推荐我常去的网站
                      1,csdn 2、infoq 3、开源中国 4、github 5、stackoverflow 6、leetcode 7 IBM java(http://www.ibm.com/developerworks/cn/java/
                      8、iteye


                      IP属地:四川107楼2015-03-14 16:12
                      收起回复
                        确认了还要确认时间,好的部门会提前联系你哟


                        IP属地:四川263楼2015-03-20 12:43
                        回复
                          想听楼主故事的,在此楼层+1.我按人数来定


                          IP属地:四川279楼2015-03-23 13:36
                          收起回复