《2022年如何学编程 .pdf》由会员分享,可在线阅读,更多相关《2022年如何学编程 .pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如何学编程作者: 蒋会全序:这是一个老话题,是一个老生常谈的话题。百度一下,找到相关网页约195,000 篇(2009.11.15) ,除了重复的文章外,足以知道多少人在问,多少人在谈,但是还有多少人迷茫?关于这个问题自然是仁者见仁,智者见智。 如果你在网上百度一下和编程相关内容,一定会看到: Visual Basic 、Delphi 、C、C+ 、 VC+ 、汇编语言、Visual Foxpro 、SQL Server 、Oracle、DB2、Sybase 、Power Builder 、Java 、J2SE 、JavaEE 、JavaScript、PHP 、ASP (ASP .NET) 、
2、JSP 、 ISAPI 、 NSAPI 、CGI、VS2005 /VS2008 等等(这些有语言、数据库或者开发工具)。这些不是全部,如果你在网上问该怎么学呢?有让你从C 语言开始学的,也有让你从Pascal 开始学的,也有让你从VB 开始学的,也有让你直接学习C#的,更有让直接学Java的, ,网友的热心反而让你更是一头雾水,很难知道谁对谁错。实际上如果是学习一门入门语言,任何一个都够了,区别仅在于入门的难与易。但是倘若作为“就业”之本,仅有一门语言基础显然不够,欲知后事,请接着往下看:一、学习目的与软件企业招人要求(一) 准备从事软件开发职业:无论你是一个在校大学生也好,还是一个已经在职但
3、准备转行也罢。1、首先,最好了解一下软件可以分为单机版、局域网版(C/S 模式)、互联网版( B/S模式) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 10 页 - - - - - - - - - 单机版、局域网版: 我们看到只能运行在一台机器上的一些客户关系管理、进销存软件、医院管理系统、 QQ 等。显著特点需要在电脑上装一个软件才能使用。可以使用语言有: VB、Delphi、PB、VC+ 等。互联网版,也称WEB 开发( B/S 模式):网上银行、 163 与
4、126 电子邮件、缴税等。只需要浏览器就可以了。可以使用语言有:VB Script(ASP) 、C#(ASP .NET) 、 JAVA(JSP) 、PHP等。2、其次,你看一下软件企业都招什么样的人。除了个别领域,不难看到目前主要分为两大阵营:.NET阵营和 JavaEE阵营。两大体系都非常不错,不要看网上互相攻击的那些无聊文章。在后面我会谈到,这只是工具。看看用人单位要求:这才是你真正的学习导向。.NET体系(1)计算机相关专业大专或本科学历,二年以上.NET开发工作经验;(3)熟练C#语言、 .net 平台, vs2005, vs2008 开发环境;熟练C/S,B/S 结构软件,有相关项目
5、经验。(4)熟练运用SQL Server 数据库设计与开发,熟悉存储过程及触发器,有过大批量数据处理与优化经验;(5)精通 ASP .NET、WebService 进行相关的开发,有HTML、XML、JavaScript经验者优先;(6)良好的团队开发意识,较强的沟通、学习能力,认真负责的工作态度。.JavaEE体系名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - (1)计算机相关专业,大专或本科学历,具有1 年以上相关工作经验
6、;(2) 要求精通Java 语言,精通JavaEE技术框架,熟悉SPRING 、 HIBERNATE 、STRUTS 、WEBWORK 、MVC 架构,熟悉Weblogic,jboss, Tomcat 等应用服务器,并可做应用部署及调优;(3)对网络系统有相当的理解,熟悉Oracle/SQL-Server/Sybase等数据库,可以熟练的使用PL/SQL语言进行存储过程和函数等的编写;(4)熟悉 UML 建模技术优先,熟悉现代软件项目管理优先,英语技能较好者优先;(5)具有编写需求说明书、设计说明书等软件开发相关文档的能力;(6)思路清晰,工作规范,良好的执行能力、较强的团队协作精神和高度的责
7、任心;(7)2 年以上软件开发工作经验。.其他诸如单片机、PLC等也很多。不难看出,近年来尽管学历一路飙升,但是软件企业却仍然定位是大专或者本科学历,但是都要求有项目经验(对此,你将来当了老板会更明白,你也不愿意替别人作嫁衣)。选择一个体系作为你的目标很重要,无论是 .NET还是 JavaEE都行, 千万不要什么都学,最终却什么都不懂。另:你在网上也许看到很多这样的建议,学习C语言、 C+ For Dos(面向对象的思想用DOS就足够了 )、C For Windows、C+ For Windows(MFC),我是这样一路学过来的,更知道其中的艰辛。 但是我更坚信按照这个建议,更多人的不到山顶就
8、放弃了。并不是学美术的一定都要成为画家,做广告设计也是挺有意思的一件事。(二)纯粹的编程爱好者这个我没有太多的发言权,只要你认为怎么适合你都行。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - 二、关于文化基础:(一)数学:很多人都谈到要有高数、离散、线性等基础。但如果你做的只是一个网站后台、普通的管理系统,那么也许有高中的数学知识足够了。(二)英语:入门学习编程不需要过四、六级,高中英语基础学习编程没有一点问题。但是还是希望英
9、语你能够更上一层楼。道理很简单,原因有二:1、如果你英语不好,不可能等你过了六、八级再学编程,可以边学编程边学英语,毕竟英语高手编程高手。即使先用拼音作为变量名,先学会编程也是好的,但最好能用英文命名。请看一个表名Yybrdab(拼音首字母) ,你再看一个表名Yiyuanbinrendanganbiao (医院病人档案表的拼音全拼),再看表名PatientFiles(英文缩写) ,你有什么看法呢?Yybrdab很难猜, Yiyuanbinrendanganbiao 全拼太长了, 英文命名PatientFiles 是不是更容易理解一些,2、毕竟国外在软件开发方面比我国先进不少,有时你查阅的是英文
10、资料,如果你的英语好自然会助你一臂之力。三、语言是工具、功夫在诗外你想一下, 一个知名作家,不会用电脑而是用普通的钢笔写文章、甚至是铅笔,一个打字员每分钟在电脑打一百字以上,那么谁写的文章好呢?编程语言也一样,你应聘工作时说:我会 VB、Delphi、JAVA 、C#等等,但是什么样的项目也做不出来,和那个打字员有什么区别呢?李白的 静夜思 我们每一个字都认识,是否每一个人都能写得一首好诗呢?我们知道一个演员、 一个作家、 一个诗人必须要具备更多的生活阅历与历练才能演出好作品、写出好文章、写出好诗,我们程序员又何尝不是呢?当然能够用好工具则能更好的为你服务,作家能够用电脑写文章,估计效率更高一
11、些,你选择正确的编程语言,至少会让你如虎添翼,但千万不要认为你学的是比较流行的语言而名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - 对别人学的可能不入时的语言而不屑一顾,你的道行修得越高才会知道高手并不是都写在脸上,你会有更好的心态去学习,明白人外有人,天外有天,自己实在微不足道。知识是无穷的, 但我们生命是有限的,所以我们应该在有限的生命里学习更有用的知识应用到实践中来。 学习编程是为了更好解决我们工作和生活中的问题,而不是
12、让你成为纸上谈兵的军事家。四、如何学习?就像武术一样,门派如此之多,很难一下都告诉你。我也从一个门派说起吧,就从.NET体系( B/S 模式)说吧。(一)打基础勿在沙丘上建浮雕! 避免眼高手低,切忌急功近利!你可能要学习的有以下内容:Dreamweaver 、HTML/XHTML、CSS 、JavaScript、XML、SQL SERVER 、VS2005 /VS2008 与 IIS设置、 C#、WebForm(ASP .NET ) 、Ajax。1、Dreamweaver :可能没有人会把它和编程联系起来,我们更多的认为它是做网页用的(网页三剑客之一) ,的确是这样,之所以我列出来,是希望你如
13、果做B/S 模式开发,它做界面有时比VS2005 /VS2008 好的多,这可能要引出你可能还要懂点Photoshop。门面也很重要,它会让你的程序增色不少,不见得你进的公司都会给你配一个专业美工。2、HTML/XHTML:超文本标记语言/扩展超文本标记语言,尽管听起来是个“语言”,但严格来说,它确实不是语言,只是一堆标签而已。在浏览器上点右键,“查看源文件” ,里面有不少类似HTML、TABLE 、TR、TD 等,这些都是HTML 的一部分。懂了它你会更明白将来 Javascript 脚本语言放在哪。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -
14、 - - - - - 名师精心整理 - - - - - - - 第 5 页,共 10 页 - - - - - - - - - 3、CSS :层叠样式表,它常常和HTML、Javascript 结合起来做出更绚丽和大方的界面。4、JavaScript:这是客户端的脚本语言,你可能还不能一下子理解什么是客户端、什么是服务器端,这都没有关系。你一定见过很多网站显示今天是:xxxx 年 xx 月 xx 日,大多数就是用 Javascript 做的,曾记得1998 年,一个朋友问我是不是每天晚上要把网页上传一遍,我奇怪问他为什么?(他那时不懂脚本编程),他说日期每天都要变的。也许今天很多人看了都是笑话(
15、但他现在已经是高手了)。5、 XML:扩展标记语言, 尽管它与 HTML 名字很相似, 但骨子里面的东西却大不一样,如果让我说有什么用还真得想一想怎么给你说,但将来你一定会明白,它真的很有用。6、SQL SERVER :数据库,你去银行取钱,你的信息存在哪呢?就是在数据库中。所以如果你开发的是管理系统,那么数据库是非常有用的。还有Oracle、 DB2,这些你只要懂一个就行了,它们都是相通的。尽管数据库系统往往是幕后英雄,红花尚需绿叶衬。7、 VS2005 /VS2008 与 IIS设置:前者是搭建C#运行的集成环境IDE , 后者则是学习ASP .NET的环境搭建。8、C#:这是一门真正的语
16、言,微软比尔盖茨靠basic 起家,直到现在.NET框架中都有 VB.NET语言,但 C#则更是其推荐语言,如果你懂点C+ 或者 Java学习一定会很轻松,没有也没有关系,很重要的语言啊。9、Asp.NET :.NET体系不仅可以开发B/S 模式的程序,还可以开发C/S模式的程序或者手机 WinCE 上的程序,当然Asp.NET则是指 B/S 模式开发。10、Ajax:你一定有过在网上注册过,发现有的是在你填入用户名尚未登录就提示有重复的登录名, 而有的直到你提交后才提示,你输入的东西可能还要重新输入,这就是前者利用了 Ajax 的妙用。上面列出的十项是不是已经吓住你了,如果你感觉太多了,不妨
17、先学第6、8、9 项,其名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 10 页 - - - - - - - - - 余的放到后面再学也可以。纸上得来终觉浅,绝知此事要躬行。陆游学习每一门都要理论与实践相结合,不要认为这个简单那个简单,一看都明白, 做起来眼高手低,唯有实践才能有更深的体会。看看书做做题,这个时候你仅仅学会了造句而已,还要参考一些优秀的文章和代码,模仿着写才能真正的提高。大多数人学习主要还是靠自学的,但学习方法还是至关重要的,有的人喜欢从第一页一页页往后翻
18、,一种可能是坚持下来了,最后可能会“顿悟”,还有一种可能每次都是看前面几十页,不信你可以看一下,你的多少本书都是开了个头,从侧面看前面黑乎乎的(不是你手脏) ,而后面却是崭新的。最终也未能攻克。放弃了重新捡起再放弃。我推荐一种方法先囫囵吞枣,你想一下你做的第一道菜是如何做出来的(从没有做饭经验的朋友是没有 , ),难道是一字不拉地研究了一遍菜谱吗?NO,这就对了,计划做什么样的一道菜,然后挑相关章节选读,有些难以读懂的章节暂时跳过去,等以后再回来读,你应该有这种体会,刚开始看时很难的东西,过一段时间再看却变得如此易解。注意我说的是先囫囵吞枣, 想成为厨师还是要好好研究菜谱了。但往往是万事开头难
19、,等你熟悉了就可以在业界内为解决实际问题而结交高手的时候了。绝不会像BBS中许多问的傻呆问题了。学而不思则罔,思而不学则殆。孔子你在学习任何一门编程语言一定学过循环与条件,你会让电脑计算1+2+3+, +100 也是会用循环了; 先给 x 赋值为 9,会让电脑判断x 的值大于5 输出“大于”,否则输出 “小于”,也是你会了。但是如果你模拟一下银行取款的过程:在ATM 上可以有机会输入三次密码,如果密码正确则可以进行取钱操作,密码错误提示重新输入,一旦超过三次则卡被吞掉,相信你的功力已经提升了不少,而且感觉编程与现实并不遥远。(二)仿照真实项目名师资料总结 - - -精品资料欢迎下载 - - -
20、 - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 10 页 - - - - - - - - - 经过基础知识的修炼,也许你已经感觉自己差不多了,满怀信心的去应聘工作,结果却碰壁了, 问你有项目经验吗?你一脸的委屈:没有上过班则没有项目经验?没有项目不能上班?是不是陷入两难境地?你可能说我在你们这实习吧,不要工钱都可以,你会发现这个机会对方一般都不会给你,别怨天尤人了,求人不如求己!实际上现在网上已经有很多试用版,你完全可以比葫芦画瓢,你能真正的做一个项目,对前面知识的理解和运用一定会更上一个台阶!(三)提升不登高山,不知天之
21、高也;不临深溪,不知地之厚也。荀子我们看武打电影或者电视,看到高手总是杀人于无形,编程也一样,经过第二阶段,这回你可能已经踌躇满志了,呵呵,一不小心又碰壁了,但也许你幸运的找到了一份工作,这是软件企业急着用人,看你“孺子可教”,收留了你。如果不要你,一点也不奇怪,是别人比你优秀!比如, 添加一个客户, 你是不是在页面上画了几个文本框和按钮,然后再按钮上写了个事件就提交到数据库了,能够做得出来固然比不会要好,但是你面向对象了吗?太多太多的人学的是面向对象的语言,但是写的却是面向过程的程序。关于学习.NET 体系的不妨看一下伍迷先生的戏说面向对象程序设计C#版 、 大话设计模式 ,我与伍迷先生不认
22、识,没有替他推销图书之意,只是他的创作与我心有戚戚焉,挺适合入门或者进阶者。然而由于很多面向对象以及软件工程、项目管理、 设计模式之类的书籍过于深奥,或者国内有些为了评高级职称而胡拼乱凑的狗屁书籍,让更多人忘而却步。能不能更上一层楼,那就看你的造化了!不经历风雨,哪能见彩虹! 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 10 页 - - - - - - - - - 五、学习编程的捷径我们做任何事情都喜欢找捷径,世上根本没有捷径!实际上不走弯路就是捷径!我的这篇文章就是
23、力争让你避免或少走弯路,也就成为了捷径。当然加入我们的QQ 群( 95472365)也是一个不错的方法!或者到我们的网站“跟我学编程 ”转转也许有一个意外的收获!我们彼此都应该以诚相待,相信世界上美好的东西永远存在。六、成功和失败的唯一区别,就是坚持与否“想起来一件有意思的事情,上大学时,到了晚上11 点就关灯,我是很喜欢看书,就跑到男厕所去看看技术方面的书籍,唉想想那时候的确是苦了一点儿,不过没有当时的努力,怎么可能就有今天的我呢,虽然比上不足,比下还是蛮有余的,知足常乐,何必跟自己过不去呢。 ”摘自互联网这是从网上看到的一位,与我当年颇为相似。不过似乎我比他幸运一些,图书馆里面老书居多,平
24、时省吃俭用买一些书,尽管父亲告诉我:孩子,买书只管买,不要为了学习舍不得花钱!所以过早的学习了C语言、数据结构(那时候教学语言Pascal几乎一统天下) ,有一次去图书馆借一本新书,图书馆管理员认为我看不懂,就是不借给我 (当时恨透她了,这个老太太,太可恶了) 。我固执地说可以看懂,这位老师说明天你来一下,第二天接到了一份试卷,所幸我答的不错,后来我几乎总能借到需要的新书,因为老师知道书的资源不多,总是借给需要的学生和老师,那种恨瞬间变为一种感动。再后来,由于前面打的基础,班主任(辅导员)把我推荐给了我们学校一名权威,这是一名我们当时只能仰视的学者,自己比较愚笨, 此后得到导师一年有余的指导,
25、平生受益匪浅。那些日子, 我也几乎每天是在宿舍熄灯后才从教研室回到宿舍,故而在静谧的晚上经常有繁星或明月相伴。同样的城市,工作之后这么多年,说的好听些是为了事业,则忽略了四季的变化,更少抬头望望天空的繁星,很怀念大学那段充实的时光。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 10 页 - - - - - - - - - 毕业时找工作(正处于分配与自己找工作双向选择期),由于扎实的基础,以及在学校时初生牛犊不怕虎的精神,已经积累了N 个项目(全部免费帮助客户做的实际项目)的经验,邮寄了几份简历(那时候没有现在互联网的方便与快捷),都得到了面试与认可,放弃了当时银行的工作,而选择了一家具有发展潜力的软件公司就职。理想是引领我们前行的灯塔!信念是一种无坚不摧的力量!无论做什么,无论什么年代,勤奋都会是永远的竞争力。而任何事情,成功和失败的唯一区别,就是坚持与否。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 10 页 - - - - - - - - -
限制150内