那些高级程序员懂得也很多,他们和黑客到底有什么区别?
本质就不同啊,一个高级程序员可能精通一种或者多种语言,还要了解一些相关的行业知识。而作为一个高级黑客,首先要了解很多编程语言的架构,底层运行原理,从网络、数据库、程序、系统、算法、甚至各种硬件都要有所涉猎,包括很重要的社会工程学分析。一个高级程序员可以打造一座完美无懈可击的城堡,一个黑客可能进不去这个城堡,但是黑客从其他方面着手,比如可以搞定你的老婆跟她进去?
To be a Hacker
黑客当然不是害人的,而是水平相当高的技术人员。
那些弄两个木马就自称黑客的人,其实技术上来说连入门级的黑客都不算。
我不知道你想做的黑客是个什么概念?编写很强悍的程序?帮别人解决非常难的电脑问题/故障?
几条建议:
玩电脑和天赋没什么关系。真正的黑客需要的是数学和逻辑天赋!
VB是小儿科,过家家玩玩的,没有企业招程序员时会要VB程序员(虽然它也确实算个语言)。
对大部分人来说,黑客不能作为谋生职业,只是副业或者业余爱好。
前期准备是HTML+CSS。这个不是编程,但是是非常重要的。
注意,是用记事本直接写代码,而不是用Dreamweaver之类的软件。
你的目标是在2周时间(繁忙的话可以给1个月)内学会HTML和CSS,并能够写出看上去和cnBeta首页一样的页面,当然,Flash和登陆之类的功能不需要实现。
如果你做不到,我想你的天赋完全不够。
接着是编程入门。在C,Pascal或者Basic之中选一个,写一些简单的小程序。这些是比较原始的面向过程语言,是锻炼编程思维的。不用学得太深,目标是能编一些经典算法(冒泡排序啊、找素数啊之类)。
然后是面向对象的编程语言,这是目前的主流。先在Java,C++和C#之间选一个,简单学一下,然后看自己喜欢哪个就深入学哪个。目标是编出一个功能较强大的程序。
在之后就是比较强大的语言了,比如Python, Perl, LISP。Python要深入学,Perl和LISP看你的造化了。可以说直到这一步,你才能算一个黑客。
到此,你可以回头再学其他辅助的东西,比如前面忽略的Javascript,php,正则表达式,批处理,数据库,Linux等等,这时你应该很容易学会这些东西了。
最后提醒,中途如果你发现自己学不下去了,那就果断放弃,然后学些比较简单的东西。
即使当不了黑客,你至少还可以当一个程序员。
《C++黑客编程》这本书好吗?
编程有好多种编程语言的,目前比较流行的有c,c++,java,php,objective-c等。当然c是最经典的。有必要去学。老实说我认为中国真正牛逼黑客几乎没有(你可以查查看世界上那些牛逼的黑客有多厉害,比如linux之父托瓦兹),现在大部分所谓的黑客只不过是会一些黑客工具的菜鸟而已。想要成为黑客,需要对计算机原理,网络协议,编程,操作系统等东西都要有深入研究,这些东西没有个十几年是不会成为高手的。建议还是好好学习东西吧,编程也是很难的,程序的灵魂在于算法,算法说白了就是数学,尤其组合数学,具体数学,数论(密码学),图论等知识。需要很多年的积淀才能学出来,基本上大学四年都是远远不够的。建议你还是踏踏实实学习吧,有些东西远比想象的复杂的多的多的多的多的多。这不是打击,只是希望你有心理准备,据说比尔盖茨也是近十万小时的训练,你可以算一下十万小时的概念。当然你要是有恒心有毅力,坚持几万小时的训练和学习,还是可以大有作为的。好好学吧,大学里面牛人众多。
从 C\C++ 的学习到windows编程需要学习哪些内容?前辈请指教!
首先指出:lz这个问法是不对的,c和c++编程与windows编程不是一回事.二者没有必然联系,c++在dos和unix上能运行,在windows上也能运行。我想lz的意思是说:从C\C++ for dos的学习到C++ for windows编程的学习需要需要学习哪些内容?
首先,必需明白c++语法在哪个操作系统都一样,不同的是:编程的平台变了,所以编程风格也变了,例如:dos上编程没有窗口和对话框这些图形界面(除非你自己做),而windows首先是个图形操作系统!这就要求windows的系统函数(API)能提供图形功能。而dos没有图形功能的函数。
另外,windows是多线程的,所以有提供多线程支持的Api函数,dos没有。
windows平台上还有许多其他功能,只能自己学了。你只能先学一部分。
学习编程的基础课程有那些?(经典课程)
没有人适合不适合,关键是你能不能忍受编程的枯燥和寂寞,不要被电视和电影上的桥段所迷惑,要想成为高手就要平时的积累,厚积薄发,不要担心这担心那,用心学就行了 ,有兴趣是好事
.首先请你热爱这个专业。只有这样,你才会从抽象的理论中找到实实在在的快乐。如果
你不热爱她,或者只因为这是个热门专业,那么极力要求你放弃这个专业,因为计算机是
一把双刃剑,学好了你会飞黄腾达,学不好你毕业后会极其痛苦,高不成低不就,没有发
展潜力,如同学英语专业的人到了美国一样。
2.不要用功利眼光对待这个学科,这绝对不是点点鼠标就能挣钱的专业。不要去想做网站
挣钱,不要想靠点击率增加广告,这个在4年前已经过时,如果你现在仍然这么想,千万别
说出来,因为我会觉得你很土。计算级专业的成就感总是伴随着身体上的痛苦而来,肩周
炎,颈椎病,眼睛干涩,掉头发,腰椎间盘突出,关节炎,不夸张,这么帅的我工作了两
个月以后发现开始掉头发了。
3.搞明白计算机"科学"与"技术"的含义。做网页,做图片,做flash,玩游戏,上网,听歌
,录mp3,搞电影字幕,装windows,改注册表,为软件换皮肤......这通通不叫计算机科学与
技术,如果你是计算机的学生,会做以上事情,那是你应该的,不会做,也没什么丢人的
,我们需要的不是让别人称作"高手"。
4.明确你最终的专业方向是软件还是硬件。方向是网络?网络不是专业方向。网络是最优
秀的软件工程师、最优秀的硬件工程师与最优秀的通信工程师的智慧结晶。如果你是软件
方向,请你在学精一揽子数学、数据结构、算法设计、数值分析、汇编语言、操作系统、
编译原理、数据库原理、软件工程之类课程后,仔细的听一听硬件课程,他对你有用。软
件工程绝对不是背背就能过的课,计算机理论可能是一个人就能研究出来,软件工程是成
千万网软件工程师几十年来失败的教训凝结成的结晶,请认真听课。不要问我应该学什么
语言,计算级专业的人必须具备任何语言1小时上手的能力,最起码要在10分钟把"hello
world"做出来。如果说有必须学的两种语言,那他们是c++与java,学他们不是在学语言,
而是在学thinking in c++,thinging in java,一个是软件的基础理论,一个是面向对象
的基础理论,从来没有人听说过"thinking in basic"。如果你说c++过时了,那么千万别
告诉别人你的名字,因为很丢人。山科大的老师只会教给你c,不会教给你++,所以不要被
他蒙蔽,大胆的问他++,如果他不会,干脆换老师。学硬件的同学在认真听听以上课程后
,学精除了政治以外的其他课程。
5.即使你学好了以上课程,我们仍然差得很远,我们只弄清学什么了,但是还不知道做什
么。我们的课程设计太小儿科了,别对你在国外的同学说,否则会被笑话,所以我们要尽
可能的多做设计,别一个人们闷着头做,两三个人合作一个项目,不会交流的计算机人员
30岁以后肯定会下岗。题目呢,尽量是一些简单的底层开发,可以去国外大学网站上搜一
搜,要自信你一定能做出来,毕竟不是什么难题,而是我们应当具备的素质。
6.如果你对网络有意,在具备了一定动手能力后从协议或者底层硬件的角度去学习它。否
则你是自甘从一名高贵的计算机专业人员堕落为做着沉重机械体力劳动的民工。对网络安
全感兴趣,那么你就在学会使用各种工具的一个月后从编程的角度深入学习网络协议和操
作系统吧!只会用工具攻击无知人员的漏洞是一种意淫的行为,如果乐此不疲,并到处叫
嚷"黑客",那么这种行为可以被称作"手淫"。网上呼吁中美、中日黑客战时,希望你安心
学习课程,或者睡觉休息,或者去运动娱乐,不要给祖国抹黑。
7.正确对待认证。绝大部分认证不是高薪的敲门砖,而是你上岗前的智商水平测试。如果
你考过了认证,别对别人说这个认证是垃圾,请告诉别人你在学习中懂得了那些知识,如
果你没有懂得知识,那么你是个paper,认证不是垃圾,你是垃圾。如果你连认证都没考就
到处喊它垃圾,那么你就亲自考考试试,考过了,懂了,那么你随便;如果过了但是不懂
,认证不是垃圾你是垃圾,如果没考过,那么看这个贴子的所有人都知道你是什么了。MC
SE、CCNA、CIW等等都有它存在的意义,只要你有钱都值得一学,他们是最正规的知识来源
,是经过理论、实践、时间与市场考验的产品。
二.给非计算级专业的同学的一点建议
1.热爱你的原专业,尤其是自然学课和基础学科,为了计算机放弃他们就如同为了10张一元
钱扔掉了一张100元一样。
2.计算机是具有学术性和工具性的双重属性学课。架设一做计算级专业与你本专业的桥梁
,那对两个专业都是做出了贡献,如果你真的很牛,把计算机学的很深很好,那么你真的
值得尊敬。
3.再次记住做网页,做图片,做flash,玩游戏,上网,听歌,录mp3,搞电影字幕,装win
dows,改注册表,为软件换皮肤......这些不是计算机专业,也挣不到钱。不要让浮躁余功利
蒙蔽你的双眼,毁掉你光明的前程。
以上差不多都说完了,对学校的不满我就不说了,毕竟是一时的,虽然现在还很烂,但是
将来会慢慢变好的,大家在痛骂学校的同时一定多给学校提出好的意见,多为学校的发展
出力,将来谁成就了大事,别忘了回来,因为我们的孩子也许还会在这里上学,我们不能
让他们再受苦受委屈。
谢谢大家