当前位置: 首页 > 编程 > 正文

很多想学编程,但又害怕学习编程的人.他们都有同样的问题: 1> 学习编程,是否需要英语? 2> 我 […]

很多想学编程,但又害怕学习编程的人.他们都有同样的问题:
1> 学习编程,是否需要英语?
2> 我数学不好,能学好编程吗? 

[不要多想]
学习编程,英文和数学肯定少不了,但编程领域是一个庞大的体系,如果每个编程领域都需要顶尖的英文高手和数学高手那是不现实的.所以编程过程讲究的是团队合作,而不是个人英雄主义.还是一句老话:先进的发动机是由无数个无名小零件组成的,而不是每个零件都是钻石或者黄金那么引人注目.

[正确看待英语和数学在编程里的作用]
首先明白 英文和数学 给我们带来什么优势?
1> 英文好的,你的技术资讯永远都是领先其他人
2> 数学好的,你的代码质量永远都是优越其他人
回到现实中:如果你要成为别人的焦点,那你就要学好英文和数学.如果你要提高你的编程质量,那你就要学好英文和数学.如果你要领高薪,那你就要学好英文和数学.

[给英文和数学不好的朋友建议]
1>不用太担心自己的英文和数学不好:英文可以补习,数学可以补习,时间是挤出来的,不要为自己的学习找借口
2>不用太担心自己的英文和数学不好:编程领域太广了,需要各种人才,中国13亿人口,你不做编程,别人也会做.
3>不用太担心自己的英文和数学不好:很多先进的技术,不用你去操心的,让老外去完成.我们要学会拿来主义,我们的目标就是挣钱,有钱了才能实现你自己的理想.
                                                                           –引猪头三
———————————————————–

  市面上流传的所谓黑客技术书籍与教程就像武侠小说里的招式一样,而往往被我们大家忽略的计算机基础知识就像内功一样,你只会招式再李汉也只是传说中的”三脚猫”.而内功身后的高手往往追求无招胜有招,即使不使用招数也能飞叶伤人.
  大家一定看过<天龙八部>中虚竹身边的四个婢女提前二十年进入学习四十岁才能练习的武功,结果灰头土脸的出来,但虚竹就不一样,越练越厉害.其实道理都一样,没有基础就直奔主题只会碰一鼻子灰,并给自己内心造成阴影.但你基础牢靠再看那些及奇技淫巧你就会立刻明白其中的道理,并且印象深刻.还能举一反三.就好像你会了”数学公式”,你还怕万变的”数学题么”?

  我在这里给大家推荐一个学习路线,刚开始的时候我也很迷茫,但现在思路清晰了我就具体说说这个修炼自己”内功”的过程(纯属个人意见,虽力求完美,但却难免疏漏).

psb


一般分为两条线:
1> 网站->渗透
2> 软件->逆向
  如果你选择(1),能干嘛呢?可以像网上什么入侵网站之类的(建议大家别做,对自己对别人都不好),其次能仿站建站(这个是正规的,还可以赚钱),现在一个普通的小企业建站还要500多呢(看当地的经济状况,经济一般的是这个价格),说了这么多,该学什么呢?
  首先学Photoshop(一些基本的操作就好,不用太深入)和Html(这个是必须的).虽然写Html有Deramweaver可视化操作,但初学的时候一定要手写代码.Html后期是css和Javascript,这个学会了就自己手写一些简单的网站前台的单页面开发,当你所有的Html标签都熟悉后,你再用
Deramweaver,这时候你会发现Deramweaver为什么要这样操作,知其然而知其所以然,以后的任务就是对Deramweaver操作熟练的问题了,好了,这个时候你就会网站前台开发了.
  接着是后台开发,建议学php.因为现在主流的网站模版都是PHP(因为php免费不花钱,你要是用asp或.net你还要给微软上税),如discuz织梦就是php的.尤其是自学的朋友不给公司搞开发给自己建网站可以用别人写好的模板,学php可以改代码适应自己的需求.当然.net和jsp也很好(一般对安全要求高的如银行都是用jsp),asp就不要学了,现在基本很少有人用了(逻辑和视图不好分离).
  学完后台语言的语法后期势必接触数据库,这些基本的学完就去实例去练习,不断深化,当你能熟练开发网站,你会发现SQL注入也就那么回事.(不要反复看基础,多多找实例去做,不会再回来看基础).
——————————————————-
  接着说软件方面第一个问题,作为初学者我要学什么语言入门呢?其实这个问题没有十分确定的答案,每个人的理解和经历造就了不同的推荐.如果将来是想从事计算机安全这行业,个人推荐入门学习c语言.
因为Windows大部分都是C和汇编写的,实诚来说C比VB或者易语言开发速度上确实是慢,但后期你会发现C的优点比VB多,比如运行速度,可移植性.最主要的原因是C比较贴近计算机体系的实质,从C学习有助与对编程的深入理解.让你知其然而知其所以然.根据自身的经历,我给大家推荐一条学习路线吧.
C->C++->数据结构->Win32编程->MFC->DLL->COM->SOCKET编程->数据库->16位汇编->32位汇编->PE格式->内核编程->Win32逆向分析.
这是目前本人正在学习的路线,希望对大家有所帮助.引一段梁大神所著书籍<编程高手箴言>中编程高手成长的六个阶段,与大家共勉.

  程序员怎样才能达到编程的最高境界?最高境界绝对不是你去编两行代码,或者是几分钟能写几行代码,或者是用什么所谓的可视化工具产生最少的代码这些工作,这都不是真正的高手境界。即使是这样的高手,那也都是无知者的自封。
我认为,一个程序员的成长可分为如下六个阶段。
> 第一阶段
此阶段主要是能熟练地使用某种语言。这就相当于练武中的套路和架式这些表面的东西。
> 第二阶段
此阶段能精通基于某种平台的接口(例如我们现在常用的Win 32的API函数)以及所对应语言的自身的库函数。到达这个阶段后,也就相当于可以进行真实散打对练了,可以真正地在实践中做些应用。
> 第三阶段
此阶段能深入地了解某个平台系统的底层,已经具有了初级的内功的能力,也就是“手中有剑,心中无剑”。
> 第四阶级
此阶段能直接在平台上进行比较深层次的开发。基本上,能达到这个层次就可以说是进入了高层次。这时进入了高级内功的修炼。比如能进行VxD或操作系统的内核的修改。
这时已经不再有语言的束缚,语言只是一种工具,即使要用自己不会的语言进行开发,也只是简单地熟悉一下,就手到擒来,完全不像是第一阶段的时候学习语言的那种情况。一般来说,从第三阶段过渡到第四阶段是比较困难的。为什么会难呢?这就是因为很多人的思想转变不过来。
> 第五阶级
此阶段就已经不再局限于简单的技术上的问题了,而是能从全局上把握和设计一个比较大的系统体系结构,从内核到外层界面。可以说是“手中无剑,心中有剑”。到了这个阶段以后,能对市面上的任何软件进行剖析,并能按自己的要求进行设计,就算是MS Word这样的大型软件,只要有充足的时间,也一定会设计出来。
> 第六阶级
此阶段也是最高的境界,达到“无招胜有招”。这时候,任何问题就纯粹变成了一个思路的问题,不是用什么代码就能表示的。也就是“手中无剑,心中也无剑”。
此时,对于练功的人来说,他已不用再去学什么少林拳,只是在旁看一下少林拳的对战,就能把此拳拿来就用。这就是真正的大师级的人物。这时,Win 32或Linux在你眼里是没有什么差别的。
每一个阶段再向上发展时都要按一定的方法。第一、第二个阶段通过自学就可以完成,只要多用心去研究,耐心地去学习。
要想从第二个阶段过渡到第三个阶段,就要有一个好的学习环境。例如有一个高手带领或公司里有一个好的练手环境。经过二、三年的积累就能达到第三个阶段。但是,有些人到达第三个阶段后,常常就很难有境界上的突破了。他们这时会产生一种观念,认为软件无非如此,认为自己已无所不能。其实,这时如果遇到大的或难些的软件,他们往往还是无从下手。
现在我们国家大部分程序员都是在第二、三级之间。他们大多都是通过自学成才的,不过这样的程序员一般在软件公司也能独当一面,完成一些软件的模块。
但是,也还有一大堆处在第一阶段的程序员,他们一般就能玩玩VB,做程序时,去找一堆控件集成一个软件。

  或许有朋友有疑问,到底是在家自学好还是出来找个培训机构参加培训好?
   坦白地说,当然是自学好。因为自学可以提高自己的独立思考能力,容易养成好的学习习惯,这对于每个人的将来都是有帮助的。过去的逆向大牛以前研究逆向技术,就是靠自学,也只能靠自学。且不谈当时没有这些方面的实训,就算是相关文档、代码等资料都是极度匮乏的。在这种恶劣的条件下,虽然他们不懈地努力,但是学习进度还是非常缓慢,花费几天几夜去研究分析一个软件的关键算法更是常有的事。在分析软件的过程中,他们能体会到了难以表达的乐趣,收获了知识,但是付出了大量的时间,投入了大量的精力。也正因为如此,国内的技术高手们对自己稍有价值的技术心得和分析成果一直守口如瓶。
 
自学可以提高自己的独立思考能力,容易养成好的学习习惯。那么如果你有时间,有精力,而且对自己有克制力,那么你就是自学的不二人选。如果你时间紧张,或者自制力不强,我建议还是找个培训机构进行系统学习.有兴趣的朋友可以了解下武汉科锐逆向培训结构.创办了多年的老逆向机构,老师特别实在.而且至今从科锐毕业的学员中,考核及格的学员基本月薪都过万,国内超过30个技术人员的安全公司基本都有科锐的学员,如金山360…至于为什么这么清楚,因为我目前就在其中…
学无止境,但也要量力而为,不要如同空中楼阁,这只是小弟的个人见解,如果大家有什么不同的意见,请给我留言.

本文固定链接: http://blog.050k.com/?p=214 | RotShell's Blog
标签:, ,

从基础学起:目前有1 条评论

  1. 沙发
    三五营销

    需要向博主学习的地方还有很多,很多,很多……

    2017-01-04 15:10 [回复]

发表评论

快捷键:Ctrl+Enter