V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Niris
V2EX  ›  Java

怎么学习Java Web?

  •  
  •   Niris · 2011-05-14 08:09:23 +08:00 · 6997 次点击
    这是一个创建于 4978 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在v2ex潜了一段时间,发现很多搞java web(然后转向其他语言)的。
    想请教下诸位,如果要学习java web,应该按照什么顺序?看哪些书?

    我的情况:
    学习JS中(自我感觉还还可以吧),没有其他语言基础。
    死大一枚。参与的web小组里,诸位学长都是用java写后台。(可能因为我对java缺乏了解吧,对java没什么好感……但毕竟组里都是学java的,不明白的地方也有个人请教,好过自己摸黑过河吧?参与小组前对python,ruby这些倒是更有兴趣,我的想法是有一定基础后自学。)

    情况就是这样,不知诸位有什么意见建议想法看法?
    13 条回复    1970-01-01 08:00:00 +08:00
    roamlog
        1
    roamlog  
       2011-05-14 09:03:48 +08:00 via iPhone
    学 jsp servlet jdbc javabean 这些,书的话推荐 head first jsp & servlet
    roamlog
        2
    roamlog  
       2011-05-14 09:05:37 +08:00 via iPhone
    如果把这几个弄懂的话,可以学一下几个框架,不难,struts 2,spring,hibernate 等
    fengluo
        3
    fengluo  
       2011-05-14 09:10:26 +08:00
    java之类的培训视频网上很多啊~看一遍跟着做做就差不多了~
    xiluo
        4
    xiluo  
       2011-05-14 09:35:19 +08:00
    get started from altering a tiny java web project
    dreamer
        5
    dreamer  
       2011-05-14 10:00:44 +08:00
    不建议一开始就学 JAVA,JAVA 不够灵活,而且很多有关 JAVA 的书都写得晦涩难懂。

    如果对 Python 或者 Ruby 有兴趣的话,完全可以自学,它们的文档都很丰富,还有不少 Free ebook 可以下载。

    关于 Python 的书有 Learn Python The Hard Way: http://learnpythonthehardway.org/

    Ruby 的书有 Programming Ruby: http://www.ruby-doc.org/docs/ProgrammingRuby/

    在学习过程中遇到问题多用 Google 搜索,或者去 Stack Overflow 提问,一般都可以得到解决。在你进阶到高手之前,身边有没有可以请教的人都无所谓。
    beston
        6
    beston  
       2011-05-14 10:02:19 +08:00
    python,ruby这些倒是更有兴趣
    ---------------------------------------
    既然感兴趣,建议直接学python,ruby
    chloerei
        7
    chloerei  
       2011-05-14 10:09:15 +08:00
    《程序员职业规划之道》http://book.douban.com/subject/4923179/

    学主流语言对职业规划是下策
    Niris
        8
    Niris  
    OP
       2011-05-14 21:52:45 +08:00
    感谢诸位关于学习以及方向上的建议。

    考虑去图书馆把入门书籍都拿来翻两页,再下一步…
    Droog
        9
    Droog  
       2011-07-12 18:39:48 +08:00
    @dreamer 不灵活?这个怎么讲?第一次听到这种说法!
    dreamer
        10
    dreamer  
       2011-07-13 09:12:02 +08:00
    @Droog

    首先,JAVA 的语法很死板,只是简单编写一个「Hello World」都需要写那么一堆不相干的声明式代码,很容易让你陷入思维定式。

    其次,JAVA 没有一个简单的交互式环境。你在编写第一个 JAVA 程序之前要先去配置一堆环境变量,研究 javac 怎么用⋯⋯ 做很多完全和编程无关的事情之后你才可以真正开始写第一行代码。而编程最重要的应该是「写代码」,「运行」和「调试」,你需要尽快地了解这门语言本身,而不是去玩周边的配置。

    个人认为,JAVA 完全是软件工业化的产物,它更多地是考虑最终软件的质量。因为程序员的水平参差不齐,所以它会设置很多严格的语法规则来保证每个程序员「生产」出来的代码不会有严重的错误。这对于软件本身是好的,但是不利于拓展程序员的思维,会把程序员变成一个生产标准件的螺丝钉。
    holmesabc
        11
    holmesabc  
       2011-07-13 10:29:12 +08:00
    @dreamer

    没这么夸张吧。

    “简单的交互式环境”,这个是什么,JDK么?加两条环境变量,不是“要先去配置一堆环境变量”,没有“一堆”,要不了10秒种的事。

    还有估计搞java的很少去用什么记事本这类的去写代码吧。大多数都会去用IDE,这样就可以不用一来就去看什么java,javac之类命令了。而且同样可以“尽快地了解这门语言本身”,如果非要用HelloWorld来说的话,eclipse,建个工程,建个类,钩上自动添加main(),再在main()里面加一句输出 System.out.println("HELLOWROLD");
    然后点运行。OK,你要的效果有了。

    还有你说的“简单的交互式环境”,个人感觉只要系统不带运行环境的,就应该不算什么简单了吧。再以Hello World说的话,windows下要说简单的 那就echo helloworld,就有效果,还绝对不用去“写那么一堆不相干的声明式代码”。linux的话应该有shell,(不了解。。)

    话题回来,to lz

    对于LZ来说,我也不建议去学jEE这方面,毕竟专门搞web的,何必一定要java,感觉JEE也大部分就是用@roamlog 说的那些框架。要是我,宁愿学SE去搞写服务器后台,像游戏服务器之类的。

    还有何必别人学什么,你也去学什么呢!web上有方便的python ruby php,为何不用。
    dreamer
        12
    dreamer  
       2011-07-13 11:11:38 +08:00
    @holmesabc

    我说的简单的交互式环境是类似 Ruby 的 irb 的东西,或者像这样:

    php -r 'echo "Hello World!";'

    JAVA 下面好像没有 echo 这个方法吧?

    另外,个人不喜欢一开始把精力放在工具上,而且 IDE 往往都比较臃肿。
    roamlog
        13
    roamlog  
       2011-07-13 12:02:27 +08:00
    1,讨论语言的优劣还是得放到具体环境中吧,没然没什么意思,也就一些语法糖比较来比较去的。。。
    2,但如果放到具体的一些环境中的话,很多时候根本没必要讨论语言的优劣了,因为每种语言都不是全能型,都有特写的适应领域。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2641 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 08:04 · PVG 16:04 · LAX 00:04 · JFK 03:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.