我想学网络攻防
我对web这个方向只有一个粗鄙的认识,事实上我是无从搞清这是怎么回事.毕竟网上搜出来都是一些html,css,php,asp,jsp,javascript,*sql,xml,xhtml,Oracle,.net,jquery,ssh等一大堆英文,说是什么框架,还有什么各种库.最近还有个html5,说是用来取代xml,xhtml什么的新技术/标准.
我看到这些东西真是十分头疼,因为人精力有限,这些东西不可能都学.而我的理念是能不学的就不学,最多对其做个浅显的理解.
那么web这个方向什么东西是必学的?哪些东西是主流(现在和以后),哪些东西今后会被逐渐淘汰?也就是说今后web方向的趋势是什么,我不想今年学的东西过了几年就显得没用了.还有那个flash制作归于哪一类技术?虽然我并不打算学,但这东西是不是和上面那些技术比起来有点小儿科啊?
哦对了,最好告诉我大致的学习流程,先学啥后学啥.
先来回答楼主提出的两个问题。
Q1:Web方向有哪些东西是必学的?
A1:就学习阶段而言,在进行Web开发过程中,用得到的东西都是必学的;就工作而言,解决职责范围内遇到各类情况的技术,都是必学的。
Q2:学习流程?
A2:先从基础开发学起,上升到相对比较高层次的开发,想转安全的话再去研究安全相关的东西。
这里无法给出所有“必学”的东西,你也知道有些技术可能还没诞生。
可是,楼主你可知道,完成一个Web项目,HTML、CSS、JavaScript、jQuery、数据库、PHP、Redis/Memcached、XML等等这些都会用到,也可以把PHP替换成Rails、ASP.NET等同类框架,而且仅仅这样还不够,远远不够。
这些技术,你有认真去了解过么,哪怕是去看看文档,查查百科?
有时候,开发者还要去了解HTTP/1.1协议、浏览器内核与渲染过程、各种数据结构与算法、操作系统等等。
这些能不学就不学,或者只有肤浅的了解,真的可以么?
真有“不用学”的情况,比如你作Web,可以不去学习汇编;比如你写PHP,就暂且不用学习ASP.NET。但事无绝对,尤其是拓展到安全方面。
最后,我觉得楼主现在还不是开发者,因为不具备开发者应用的一些素质。
以及,别人也有遇到过楼主提出的问题,我见过他们,他们都自己花时间查资料解决了,也没见过他们轻易提出这样浮躁的问题来。楼主在这方面还有很大差距,而这种能力决定你能在技术道路上走多远。
一点福利:
Codecademy
CodeSchool
说到根本,做项目是要写代码的,看楼主的情况,可以先学习一门语言,Java、Python、PHP等等随意,然后学习该语言的Web开发框架,与此同时要学习一些前端技能(HTML,CSS,JavaScript)和一个数据库(sqlite其实就可以,还可以尝试MySQL)。具体教程请见上面两个网站,以及各大语言社区的新手教程。
这之后,可以尝试做一些自己想做的应用,比如一个web版的todo list、生日提醒等等各种。