首页 > 代码库 > 献给初学编程的你
献给初学编程的你
1、这多对象啥时候能学完?
此刻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!”的法度圭表标准员,你不被人家扫地出门才怪。
2、学JSP还是学PHP更有前途?
看了上面的话,有的同学已开端烦了,“知道了知道了,不止一个像你这样的所谓的‘老进步前辈’跟我说过‘学什么都一样,思惟才是最首要’的大 事理,可是你们站着措辞不嫌腰疼呀,理想是有良多手艺需求学,好比做Web开拓就有JSP、PHP、ASP.NET等良多多少标的手段,我总得选一个吧!究竟学哪 个有前途呢?我必需求挑选一个有前途的,选错了就省事了。”
其实像“学JSP仍是学PHP更有前途”的话没意义,由于“挑选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开拓一个中型规模的企业级系统了。可以说他的成功就得益于“一通百通,从本人最 熟谙的动手”这个准绳。
总结一下,不要管“哪门说话好就业、有前途”,由于那些“好就业、有前途”都是纸山君。尽能够不要学新说话,从本人最熟谙的说话动手,深切研讨,出山后你就是被用人单元争抢的红人。
3、企业里都需求什么方面的才干?
这个要视用人单元的要求而定了。你此刻还没有结业,也不知道未来要面临什么样的岗位。是以倡议巨匠在上学期间不要偏科,所以的课程都要好勤学,学好专业课,培育本人的“内功心法”,然掉队入一个大公司,那末大公司自然会为你放置一小我才培育打算,在任务的景象中进修就更有手段性。
学什么最轻易 大家发精英论坛
由于此刻的快速开拓对象的不竭推出,使得软件开拓越来越轻易,进入软件开拓的门坎也越来越低。良多人在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#开端吧
解惑:说话只是表达思惟的对象,不要只局限于一种说话,不要狂热于某一门说话。记住如鹏网的杨中科教员说那句话“价值纪律就是——越是轻易取得的越不值钱”。
大家发高手论坛
献给初学编程的你