如今IT新技能一日千里。就常用编程言语而言,有c/c++、汇编、java,c#、Python等;操作体系渠道有unix /linux,windows系列;开发东西有VC、visualStudio2008、Eclipse、NetBeans等;每个大渠道下,还有许多的 的方向:如网络、数据库、脚本、HTML、动态网站、游戏开发等;有人还在学Dreamweaver做页面、Flash做动画、Photoshop做美 工、3DMax做三维动画…………是的,咱们啥都想学。恨不得把全部的常识通通都塞到肚子里去。看到啥,想学啥!
今日看这VC的书,明日又看Java,后天又看C#,东搞西搞!看到他人做页面。自个爱好了来了。好,学html言语,我也做页面,传闻做 页面要会“页面三剑客”,所以又想学Dreamweaver、Flash。后来开端知道有JSP、PHP、ASP.NET做动态网站这玩意儿。也想去学, 学学学……
这是简直全部在校大学生的通病。但是,这不是坏事,乃至能够说是功德。说明晰你“求知欲”高!总比那些,日子没有热情,成天知道泡妞、上网、打游戏、混日子的强。
但是假如你今日想学这个,明日又想学那个。这么你就能永久徜徉在技能的门外。许多人都有过或许正在阅历这么的苦楚日子:总觉得有“太多东 西”要学了,但是人的精力是有限的,总有永久学不完的感受,所以心思特别急,成天惶惑不可终日,不知道先要学哪个,一瞬间拿起这本书,一会拿起那本书,折 腾了几个月,俄然发现自个啥都没有学到……
每一个大方向假如没有上几年的学习,很难能学习出啥来。但程序规划的最底子的东西是相同的。所以咱们学习要抓底子。俗话说:通一理,融百里。
学程序规划就像习武相同,假如内功学的好,别的功夫就很简略上手。君不见《倚天屠龙记》中的张无忌练了“九阳神功”8年,练“天地大移动”只需12个时辰吗?
习武之人,谁不想在“江湖”上扬名立万,谁不想变成万人敬仰的大侠?大侠之所以能变成“大侠”,当然有他们的看家本领。狄云的“神照神功”,金世遗的正邪交融的“乔北冥内功心法”,张无忌的“九阳神功”,段誉的“六脉神剑”,令狐冲的“独孤九剑”,哇,太多了…
古人历经含辛茹苦才干找到这些“武功绝招”。咱们如今这些晚辈,比起古人来说:简直太走运了。去书店,各式各样的心功心法,剑法,拳法,应 有尽有,看得你目不暇接…你选啥呢?今日练“六脉神剑”几式,明日去学“降龙十八掌”几招,后天又去练“发暗器”,这么何时才有个止境呢?你说,你 啥武功都会,但是“形似而神不似”,茫无头绪,不行火候。一上擂台,就被他人一掌打趴了。试问哪个软件公司敢要一个声称任何编程言语都会,而是每种言语 只能写出个“helloworld!”的程序员,你不被人家扫地出门才怪。
二、学**仍是学**更有出路?
看了上面的话,有的同学现已开端烦了,“知道了知道了,不止一个像你这么的所谓的‘老前辈’跟我说过‘学啥都相同,思想才是最主要’的大 道理,但是你们站着说话不嫌腰疼呀,现实是有许多技能需求学,比方做Web开发就有JSP、PHP、ASP.NET等许多方向,我总得选一个吧!究竟学哪 个有出路呢?我必需求挑选一个有出路的,选错了就费事了。”
其实像“学**仍是学**更有出路”的话没含义,由于“挑选JSP仍是挑选PHP”的出路的不一样不像“挑选英语仍是挑选日语”的出路不一样那 样大,不存在“选错方向”的疑问,由于都是相通的,你也不能确保你结业往后搞的即是你学的那个方向,更不能确保你靠你学的这点东西就能吃一辈子。比方我上 大学的时分一向在研讨是Delphi言语,但是结业校园招聘的时分我照样在Java职位的考试获得了第一名,而且作业往后经过简略的学习就把握了Java 言语,而且后来还写了三本关于Java言语的书;再如我结业后两年多的时刻一向在用Java开发,后来公司要做一套根据.NET的商品,我只用了一个礼拜 了解了.NET体系以及C#的语法,然后就开端进行开发。
不过就像上边说的“做Web开发就有JSP、PHP、ASP.NET等许多方向,我总得选一个吧!”这个疑问是十分实习的,由于只需先学一 个才干深化这个方向,把这个方向学通了才干想往后“一通百通”。因而我的主张即是校园教过啥言语,你就持续深化学习这么言语,而不要去问“这么言语有没 有出路”这么的傻疑问。尽量不要去学一门所谓“有出路”的新言语,由于你去学一门新言语就要把许多精力消耗在言语、语法自身,而耽误了编程的实战,而以一 个现已学过的言语来学习的话,最少语法自身不用再去学、开发东西自身不用再去了解,只需研讨怎样运用这门言语开发有用的程序就ok了。比方大多数同学都学 过C言语(有的校园直接开了C++的课,但是C++的面向进程编程有些仍是C言语),所以咱们就开了《C言语也精干大事》的课程,让同学们把精力放到学以 致用上,而不是学“有出路”的新言语上,这也是这个思想的一个表现。
举几个比方。咱们如鹏网的《核算机专业作业开展测评体系》是我用PHP开发的,但是在这之前我从来没写过PHP程序,但是我曾经写过 JSP、ASP的程序,由于写网站程序的原理都是相通的,仅仅语法不一样罢了,因而我只用了几个小时的时刻了解了开发PHP用的东西而且疾速阅读了一下 PHP的语法,然后用半响时刻就开发出了这个测评体系。想像一下一个成天在今日学JSP,明日学ASP,后天学PHP,大后天仰天长叹“究竟学哪个有前 途”的人能用半响时刻学会一门新言语吗?
我大学时有一个同学,他看我其时Delphi学的对比好,写了许多程序,他就说他也想学软件开发,让我教他Delphi,但是咱们专业前一 个学期现已开了PowerBuilder的课,因而其时我就主张他仍是持续深化学习PowerBuilder,用PowerBuilder写又有用价值的 东西,而不是像上课那样写HelloWorld的程序。其时Delphi仍是如日中天的盛行的编程言语,而PowerBuilder则市场占有率对比小, 他就说不想持续学PowerBuilder,由于PowerBuilder没出路,我就给他讲了“一通百通,从自个最了解的下手”这个道理,然后他就结壮 的深化研讨PowerBuilder起来,到了结业的时分他现已能用PowerBuilder写十分杂乱的程序而且还学习了用PowerBuilder写 Web程序。结业后没多久就应公司的请求用Delphi写程序,他只用了不到一星期的时刻学习了Delphi,然后就写出了一个契合公司请求的体系,其时他 就给我打电话向我报喜。前一阵子我传闻他现已开端辅导一些新员工用Java开发一个中型规划的公司级体系了。能够说他的成功就得益于“一通百通,从自个最 了解的下手”这个准则。
总结一下,不要管“哪门言语好作业、有出路”,由于那些“好作业、有出路”都是纸老虎。尽量不要学新言语,从自个最了解的言语下手,深化研讨,出山后你即是被用人单位争抢的红人。
三、公司里都需求啥方面的才干?
这个要视用人单位的请求而定了。你如今还没有结业,也不知道将来要面临啥样的岗位。因而主张咱们在上学期间不要偏科,所以的课程都要好好学,学好专业课,培育自个的“内功心法”,然后进入一个大公司,那么大公司天然会为你安排一自个才培育方案,在作业的环境中学习就更有意图性。
学啥最简略
由于如今的疾速开发东西的不断推出,使得软件开发越来越简略,进入软件开发的门槛也越来越低。许多人在IDE东西的拐骗之下,快的十天,慢的半个月就能够进入所谓“程序员”的范畴,成了一个所谓的“程序员”。这关于IDE提供商来说是乐得合不拢嘴的工作,但是关于软件来说却是一个无形的冲击。由于疾速东西的盛行,许多人把开发看作小菜一碟,特别是许多在校的大学生,都认为如今教的内容一旦出了校园都现已是掉队,无形中产生了讨学的心思。
往后的软件开发逐渐趋于两极化,一方面有不断添加的人将从事简略的重复性开发,而且这有些的开发难度会逐渐下降;别的一方面中心有些的开发会越来越杂乱,这有些的入门所触及的常识内容会逐渐添加。所以关于往后期望从事软件开发的同学们,需求好好的努力学习,校园的东西会有他们的用途,只需如今把根底打厚实了,即后你们在软件的范畴会有极好的时机,不要盲意图抛弃学习的时机。
有啥速成的办法没有?
有一种蛾子名叫“帝王蛾”。帝王蛾的幼虫期间是在一个洞口极端窄小的茧中度过的。当它的生命要发作质的腾跃时,这天定的窄小通道对它来说无疑成了鬼门关。那柔嫩的身躯有必要拼尽全力才干够破茧而出。太多太多的幼虫在往外冲杀的时分力竭身亡,意外成了“翱翔”这个词的悲凉祭品。
有人怀着悲悯悲天悯人,妄图将那幼虫的生命通道修得宽广些。他们拿来剪刀,把茧中的洞口剪大。这么一来,茧中的幼虫不用费多大力气,轻易地就从那个牢笼里钻了出来。但是,全部因得到救助而见到天日的蛾子都不是真实的“帝王蛾”,它们无论如何也飞不起来,只能拖着丧失了翱翔功用的负担的双翅在地上蠢笨地匍匐。
本来,那“鬼门关”般的窄小茧洞恰恰是协助帝王蛾幼虫两翼生长的关键所在。穿越的时刻,经过用力的揉捏,血液才干顺畅送到蛾翼的安排中去,惟有两翼充血,帝王蛾才干振翅翱翔。人为地将茧洞剪大,翼翅就失去了充血的时机,生出来的帝王蛾便永久与翱翔无缘。
没有谁能够布施给帝王蛾一双奋飞的羽翼。不惧怕单独穿越细长墨黑的地道,不盼望一双怜恤的手送来便宜的赞助,将血肉之躯铸成一支英勇无畏的箭镞,带着吼叫的风,携着永不掉落的愿望,拼力穿透命运设置的重重艰险,义无反顾射向那寥廓美丽的长天……
让一个“帝王蛾”速成的办法即是帮它把茧剪开;一自个学一门技能的速成办法即是不学那些“没用”的东西,直接通知他终究定论和操作办法,但是许多东西是在探究中、学习中才干领会的,许多人在研讨一个技能难题的进程中查资料、看书、求证,在这进程中不只训练了自个考虑疑问的才能,而且夯实了根底常识,最主要的是在探究进程中收成了许多意想不到的新东西,有许多兄弟在研讨一个疑问的时分常常能无意中的学会许多新东西。
上山的“速成”办法是直接坐缆车上去,但是你会比那些登山者少看到许多路旁边的景色。那么你是情愿做一个把握“速成”办法的人,仍是情愿有时机看看路旁边的景色呢?
成功的诀窍
古希腊大哲学家苏格拉底,思想深邃,思想灵敏,关怀众生又为人谦和。许多青年景仰前来向他学习,遵从他的教训,都期望变成像教师那样有才智的人。他们傍边的许多人天分极高,天资聪颖者群英荟萃。咱们都期望自个能锋芒毕露,变成苏格拉底的继承者。一次苏格拉底对学生说:“今日咱们只学一件最简略也是最简略的事,每自个都把臂膀尽量往前甩,然后再尽量往后甩。”苏格拉底演示了一遍,说:“从今日起,天天做300下,咱们能做到吗?”学生们都笑了,这么简略的事有啥做不到的?
第二天,苏格拉底问学生:“谁昨日甩臂膀三百下?做到的人请举手!”几十名学生的手都哗哗地举了起来,一个不落。苏格拉底允许。一星期后,苏格拉底如前所问,有一大半的学生举手。过了一个月后,苏格拉底问学生:“哪些学生坚持了?”有九成的学生骄傲地举起了手。
一年后,苏格拉底再一次问咱们:“请通知我,最简略的甩手动作还有哪几位同学坚持了?”这时,全部教室里,只需一个学生举起了手,这个学生即是后来变成古希腊另一位巨大哲学家的柏拉图。
假如说柏拉图的故事过分悠远,那么就再给咱们讲一个发作在眼前的故事。
一次英语课上,教师带来300句高考精华句子,而且承诺说:假如能够把这些背诵得滚瓜烂熟,高考效果一定会进步。大多数学生认为又是教师哄学生的话,但身为有一个学生却有着火急进步效果的压力,对教师的话铭记在心。回去后,他把这300句话当作珍宝,先翻译成中文,又翻译成英文,发现简直每个句子都程度不一样地存在过错,或时态、或单词、或构造呈现过错。他把这些常识收拾在一个簿本上,要点回忆。随后的一个月,他好像吃了兴奋剂,拼命地背诵和默写这300句话,在支付一个个的清晨和夜晚的韶光后,总算获得丰盛的效果,他能够一字不差地默写出这300句话。从此,这300句英文变成他的绝技,使他的英文效果很快得到了进步。这自个即是如今留学训练的航母——新东方的掌门人俞敏洪。
有如鹏网的同学问我“学核算机有没有啥速成的办法”,我想说的是最佳的速成的办法即是“坚持”。全部别的的速成办法学出来的东西都太简略,“越简略得到的东西越不值钱”这是一条永久不会变的价值规律。越是凶猛的武功,越是难练,需求的时刻越长。许多人,都是半途离场了。
坚持是最简略的,由于每自个都能够做到;坚持又是最艰难的,究竟没有几自个能够坚持下来。坚持下来的人即是成功的人。
终究一句话:切务浮沙筑高台,练从难处练,用从易处用!无速成,唯有坚持!
同学们千万不要犯大多数人都犯的过错:
下载了一硬盘的视频教程、电子,简直没看过,即便看过也是看看就算了,底子没用心看过,更甭说跟着教师进行代码操练。
光down不看是糟蹋硬盘和带宽
光看不练是糟蹋时刻和芳华!
不要光下载不看,不要光看不练!
过错认识1. C/C++太老了,过期了,平常用得很少,如今盛行都Java、C#等等。
解惑:不要动不动觉得啥东西过期了,COBOL还有OO版别问世,还有FORTRAN,LISP,好陈旧的言语吧,如今还用得很广呢。杨中科教师常常提示咱们“全部言语都是纸老虎,一通百通”,校园现已开了C/C++的课,而且想持续深化学习编程,那么就持续运用学过的言语来学习,不要再去学一门新的言语。等把C/C++弄熟了往后,回头一看,信任你也能像杨中科教师那样“半响学会一门新言语”了吧。
过错认识2.入门要从OO开端,培育用OO办法考虑的习气。
解惑:初学者一入门便耍弄Java、C++等很简略构成误解,好像OO=Java,C++…。全部编程言语的底子都是面向进程的,Java、C++等言语也是支撑面向对象特性的面向进程的言语。面向进程即是if……else……、while、for这些东西,Java、C++等言语中莫非就没有这些句子了吗?
进程式言语(或许说构造化办法)的精华不会消亡,OO里边也不可能摆脱掉一条条的句子、函数调用,构造化办法仍是需求发起的。OO办法不是那么简略学会的(OO言语的语法弄得很娴熟不代表你懂OO),而构造化那套办法,自个写个千把行的程序就很能领会了,我是说写个有用点的东西,比方试着自个完成一些数据构造和算法,写几个小游戏等。写个一千行Helloworld等于没写。
我觉得办法是实习中领会出来的,不是看看书就能学会的。进程式言语的代码通常对比简练,咱们编程序终究的意图是要解决疑问,是要核算,是要获取信息,不要被OO,规划形式等模糊了。
过错认识3.进程式言语弄久了,很难转入OO的思想形式
解惑:我曾经也没有深想过这个理由,不过期刻久了,发觉自个不过是把数据和办法会集在一起罢了,看着便利,其实有许多不合理的东西,这里头就需求OO的理论辅导了,仍是需求时刻来领会。我信任有许多用OO言语的人也不过是在结构里头添添代码,调用来调用去罢了,把人类当作数据和操作的打包器。
自个觉得只需在用进程式办法做了十来年,编码上十万行后才有思想定势,难以习气用OO的眼光看待体系,但是这个改动,我仍觉得比改动一自个的恶习简略许多。OO办法不是学了个Java,C++等就能把握的,需求实习,需求时刻。进程式言语也简略培育一自个谨慎的干事情绪,比方用汇编,C等写代码,没有命名空间、没有一大堆类库,没有模板、没有反常,你要花许多心思处理一些细节,比方警觉数组索引越界、悬挂指针、野指针等等,请不要觉得费事,这个即是核算机啊,底层即是这么的啊。
过错认识4.别用C了,看我用Java、 VC等轻轻松松就写了个美丽的图形界面
这篇文章是给初学者看的,也能够给一些浮躁的人看看,初学编程的人精力应当放在数据构造、算法上面,尽量多看一些底层的东西,数字逻辑,操作体系,编译原理,核算机构成、体系构造,核算机网络等等根底常识。编写GUI拖几个控件有啥好吹的,已然你会拖几个控件那么一个初中都没结业的也会拖控件,你和他的差异性体如今哪里?你知道窗口音讯怎样回事么,你编的界面是把易用放在第一位呢仍是把美丽放在第一位呢,你的GUI程序简略修正吗?比方我一会要加个button,一会去个listbox,你会不会改的疯掉呢?你是不是在OnClick里头写了大段大段的代码,做相似“从edit1.text中去掉不是数字的字符,查找xxx再转成16进制,再复制到edit2.text”的事?
学习仍是找纸版的书厚道的看对比好,想想你积累了多少电子书而又看了多少。
底层不了解,仅多也就飘在他人上头,他人一闪身,你就得摔下来。
初学编程的人一来就IDE, GUI,Network啥的猛搞,能不浮躁么?仍是沉下心来研讨一下根底常识吧,我以脑袋担保你有生之年会觉得他们有用的(呵呵,你转行我就没辙了),别看着他人弄JFC,Socket了你还在头大这个quicksort怎样就不对呢就心里惶惑的,你要知道在一批API不被支撑后不少人心里空空的没个着落:天啊,我除了那个就啥都不会了,抑郁啊,花了我那么久时刻研讨那套API,呜呜。。。。
过错认识5. C好难啊,我入门仍是从Java,C#开端吧
解惑:言语仅仅表达思想的东西,不要只局限于一种言语,不要疯狂于某一门言语。记住如鹏网的杨中科教师说那句话“价值规律即是——越是简略得到的越不值钱”。
终究祝咱们新年快乐