asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0

主      题: 软件开发入门学习的个人看法(转贴自dearbook) 回复根帖
作      者: zhaotide ( 书童)
所属论坛: 软件工程
本帖分数: 0
回复次数: 35
发表时间: 2004-4-27 9:37:22
正文内容:
软件开发入门学习的个人看法
沙鸥 (wego@163.com)

踏实
   偶然在网上看到《由C#风潮想起的-给初学编程者的忠告》一文. 其中一个角度:避免“浮躁”,倡导“踏实”的学习方法,我是很认同的,但总觉该文作者标题“-给初学编程者的忠告”太大,所以在其文列出的一些具体的“操作方法”上我认为可以探讨,如同自己在某次公司总结会上就《软件开发,我们积累的是什么?》为题跟同事聊了半个多小时后,其中一个同事提到希望我能继续把这个题目细化,就刚入行的他们具体该如何发展有更“具操作性”的指引,当时我是跟他们说这只是我在这一行呆了5年多的体会,谈“指引”还太远,只是可以提出来大家思考、讨论。
  
不要过度贬低编码
   不要真的认为"不少大师级的计算机技术研究者是不懂编程的",做软件开发编码是最最基础的东西,只有踏踏实实的掌握好这个基础你才有办法往上走,不管做分析做设计做项目管理你都需要能清楚东西是如何实现的?可不可以实现?否则肯定出现大量的:"设计是设计,编码是编码","产品都是代码人员从头到尾实现的","究竟需花多少时间,难度有多大,开发人员说了算","质量/成本/进度全是黑匣子"...现象,如果你是做编码那编码就更重要了:).所以对于有志从事这个行业(软件开发)的个人来说,必须先从"重视编码"开始.过了这一关才能去考虑做系统分析,做项目管理...
   软件开发的各个环节是相辅相承的,分析有分析的重要,设计有设计的重要,编码有编码的重要,测试实施也各有其地位,任何一个环节搞不好就如同我们熟悉的木桶理论,"最薄弱的一个环节制约着其总容量".
   既然编码重要,那该如何学编码?
  
专心学好一门语言
   算算自己用过的语言也不少(括弧里为使用该语言写的比较有代表性的东东),C(dos版的图像/图标编辑工具,96年的《电脑报》有介绍),C++(可自定义方块形状的方块游戏,被收录于99年《软件》杂志的附送光盘上),汇编(DOS汉字系统,97年底完成),PB(学校自动排课/排考模块,98年),ASP(一套web版的企业信息系统,99年),VB(企业信息系统的核心组件,99年),delphi(工作流平台,组件式GIS系统等),Java(Delphi Client + J2EE Server协同实现),.Net(规则引擎),PHH...
   看起来好象也不少,回过头来想想自己真正认真学过的语言只有一个,就是“C”, Dos年代的TC2.0,用它写了大量的小程序,比较系统的了解了编程是怎么一回事,记得那个时候看到什么软件都要琢磨它是如何实现的?如果让我来实现该如何做?也模仿了不少东西,虽然多是很表面的模仿但对自己编程思维的锻炼很有好处.后来用其它语言基本上都只是翻翻帮助,然后找找其Demo代码来看看,很快就可进入状态.
   语言都是差不多的,重要的是“编码的思想”,具备了该思想语言就只是工具了,用什么工具实现都差不多,该思想的形成是需要“磨练”的,就是“专心使用一门语言”来磨练(甚至需要有“咬文嚼字的孔已己作风”),然后可“一理通百理通”,不然你只是浮于表面的去学再多的语言都没有.都不能拿来做真正的开发.都不能了解“编码”的内涵.
   如在今年招聘面试的时候看到太多写着什么语言都精通(或熟练)的毕业生,我惯用的方法是给他(她)一张纸一支笔,让他(她)用自己最了解的语言写一个算阶乘的函数,这个问题你一看肯定说很简单,好,接着我会往下问,可以有多少种方法来实现:循环,递归…还有吗?你能写出多少种来?(代码基本结构模式的考察).代码质量如何? 有没有考虑错误处理(太多人写的代码会进入死循环比如输入的是负数) ? int的上限是多少,用long? 如果输入值比较大,算得出结果吗,该如何去实现可以计算很大数的该函数?...看着他(她)写出来的代码一个个问题的问就得了,不管你用什么语言,不管你“精通”多少种语言,我只问这些用什么语言来解决问题都需要的基础的东西, 就是“编码的思想”.
  在学专一门语言的基础上新东西当然要跟,不然在这个行业你是很难“混下去”的,但有这“学专一门”的前提后,你跟起来就轻松了,而不用总是得“追”~
  在“专”一门语言的过程中为解决问题你会发现“算法”很重要,这就是接下来要说的“基础”了.

基础很重要
   面试的时候我一般都会问,基础知识学得如何? 一般重点问的是:《数据结构》, 《编译原理》, 《数据库原理》的内容.至于《由》文提到的:《汇编语言》,《 Windows 程序设计》我是不会问的.这些是可以进一步学习的东西,但对现在的开发来说不是必须的.《软件工程》我向来不问,教材理论跟实际差得太远了~
  《数据结构》很重要,不懂数据结构很多编码就是“蛮干”,而且往往把“简单问题复杂化”,甚至复杂到不可能解决.认真学习《数据结构》并多做尝试用你熟悉的语言去实现里面的算法,你会发觉“世界真奇妙”~不要认为你不会去开发“编程语言”不需要学习《编译原理》, 《编译原理》里面包含了太多开发软件的“奇妙”的思想案例,认真体会你肯定会被其解决问题的方法折服,从中你能体会到很多东西,对以后做软件(不管是设计还是编码等)大有帮助,里面有很多现存的方法可用在你的项目中,而这些跟《数据结构》是互为补充的.在这些基础上接下来《设计模式》一书你也一定得看看.
   很多应用都离不开数据库,最终总得找个地方来“操纵,存储,分析数据”,关于范式,关于锁,关于SQL,关于笛卡儿那一套你总得了解了解,不然无法入手,这就需要好好学习《数据库原理》了.单纯知道几条SQL语句是远远不够的,如何保证数据的完整性,安全性?如何提高效率等等都需要这些基础的支持~
   当然英文也是基础,看英文资料确实重要,不单是书,还有网络上的大量资料,论坛…看的时候别害怕就是了,毕竟都是受过高等教育的,英语也学了那么多年起码都有点底吧,配合这两个工具:《金山词霸》及Google.com,不懂的单词“即指即译”,但很多名词或基础知识不是靠单词解释能清楚的,配合搜索引擎查查相关资料看看,记住一点,看到不懂的东西多看几遍,默记一小会,日积月累你能看懂的东西就多了。
  
兴趣
   最后该说说的就是兴趣问题,如果你能对它真正感兴趣(如果要从事软件开发又没兴趣的话赶紧先培养兴趣去^_^),对看技术资料就想别人看武侠小说看球赛一样的话,再配合上面提到的几点(踏实, 先专后广, 基础扎实)相信在这一行多少是可以做点东西出来的~~


最新修改:2004-6-17 21:00:26


回复人: ccart ( 秀才) 回复子帖 2004-4-27 9:56:44
不错


回复人: waoywssy ( 书童) 回复子帖2004-4-27 12:18:47
Re:软件开发入门学习的个人看法(转贴自dearbook)
受益非浅啊^-^~~~~~~~
多谢大侠指点~~~~~~~~~

回复人: z_song00 ( 书童) 回复子帖2004-4-27 18:05:07
Re:软件开发入门学习的个人看法
不错,不过呢,个人认为软件过程也是重要的,不知道我们国内软件企业对它的关注程度怎么样。有可能是我们的软件产业还处于小规模的萌芽状态吧!

回复人: hjf198269 ( 书童) 回复子帖2004-5-6 9:49:26
Re:软件开发入门学习的个人看法(转贴自dearbook)
对呀!我也有同感呀!

回复人: gigihuan ( 书童) 回复子帖2004-5-7 7:14:23
Re:软件开发入门学习的个人看法(转贴自dearbook)
多谢指点,小的感激不尽

回复人: jjzhu_dd ( 书童) 回复子帖2004-5-10 8:39:33
Re:软件开发入门学习的个人看法(转贴自dearbook)
看来我还得再去看看我的C语言.

回复人: songguang811 ( 书童) 回复子帖2004-5-11 9:00:05
Re:软件开发入门学习的个人看法(转贴自dearbook)
编程确实很难就是了。哎。。。

回复人: roc_sunny ( 书童) 回复子帖2004-5-11 11:03:10
Re:软件开发入门学习的个人看法(转贴自dearbook)
软件开发不是件简单事.

回复人: zero_1981 ( 书童) 回复子帖2004-5-11 13:39:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
多谢指点,我决心重新开始学习以前的课程

回复人: chd111 ( 书童) 回复子帖2004-5-11 16:15:08
Re:讲的挺好的!我属于那种还没专一门就想学别的,我得清清脑……


回复人: kfz3042 ( 书童) 回复子帖2004-5-12 8:25:59
Re:软件开发入门学习的个人看法(转贴自dearbook)
谢谢!


回复人: lovecode ( 书童) 回复子帖2004-5-12 12:12:34
Re:软件开发入门学习的个人看法(转贴自dearbook)
小弟我受益非浅啊!多谢。

回复人: sunfu ( 书童) 回复子帖2004-5-12 15:20:18
Re:软件开发入门学习的个人看法(转贴自dearbook)
多谢你在我不知道该学什么样的语言是给我指出了一条明路

回复人: welchj ( 书童) 回复子帖2004-5-12 16:41:16
Re:软件开发入门学习的个人看法(转贴自dearbook)


回复人: huzichao ( 书童) 回复子帖2004-5-12 17:40:11
Re:软件开发入门学习的个人看法(转贴自dearbook)
真的太好了,让我明白了好多东西
谢谢!

回复人: feng17 ( 书童) 回复子帖2004-5-12 18:51:28
Re:软件开发入门学习的个人看法(转贴自dearbook)
很好好的!~
很好好的!~
很好好的!~
很好好的!~
很好好的!~

回复人: wshbyl ( 书童) 回复子帖2004-5-17 17:41:35
Re:软件开发入门学习的个人看法(转贴自dearbook)
很好的建议
希望以后多发些这样的帖子
指导象我这样的菜鸟

回复人: flanker_test ( 书童) 回复子帖2004-5-18 1:33:03
Re:软件开发入门学习的个人看法(转贴自dearbook)
《由C#风潮想起的-给初学编程者的忠告》那篇文章我看过,触动很大。现在我看了这篇文章,又有了一个新的认识。

回复人: flanker_test ( 书童) 回复子帖2004-5-18 1:33:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
《由C#风潮想起的-给初学编程者的忠告》那篇文章我看过,触动很大。现在我看了这篇文章,又有了一个新的认识。

回复人: saram ( 书童) 回复子帖2004-5-19 9:14:39
Re:软件开发入门学习的个人看法(转贴自dearbook)
看了以上的介绍,我感觉确实是受益匪浅。
小第十一个有点急性的人,刚学一点东西,就想出成效。
看来我还得多多磨练。

回复人: pan5 ( 书童) 回复子帖2004-5-20 22:46:27
Re:软件开发入门学习的个人看法(转贴自dearbook)
做程序员没有前途呀!更没有"前图"

回复人: lauren_jc ( 书童) 回复子帖2004-5-21 16:08:11
Re:软件开发入门学习的个人看法(转贴自dearbook)
太好了,看了以后很有启发!

回复人: Luxid_冬炎 ( 书童) 回复子帖2004-5-21 23:42:11
Re:软件开发入门学习的个人看法(转贴自dearbook)
深受启发,今后我得好好重视编码了

回复人: huxzjqhh ( 书童) 回复子帖2004-5-24 16:39:12
Re:软件开发入门学习的个人看法(转贴自dearbook)
写的不错!

回复人: 抗议斑竹乱堵人嘴 ( 书童) 回复子帖2004-5-25 21:27:25
Re:软件开发入门学习的个人看法(转贴自dearbook)
很同意你的看法,我的学习经验亦有相同之处,把C学得扎扎实实,再看C++,再用VC写windows程序根本不用费力去理解,只要看看MSDN帮助,甚至有时候把头文件找出来看看,就知道那些类在干什么.现在有些同学太急于求成,上来就是参照例子写windows程序,甚至连MFC到底是什么都没有搞清楚,误认为没有MFC就不能写windows程序(甚至有人是通过MFC才知道C++的强大,汗~~~本末倒置,事实上深入理解VC才能发现,VC有多不遵从C++标准),这样的方法不纠正其结果只是培养了一个高级打字员而已...

冰冻三尺,非一日之寒.要写出好程序,就要有扎实的基础知识,不论MFC还是.net都不是什么高深莫测,不能理解的东西.和数学的学习一样,没有经历小学,中学的学习,高等数学你能理解么?照搬解题步骤依样画葫芦有用么?

回复人: jjzhu_dd ( 书童) 回复子帖2004-5-26 10:55:21
Re:软件开发入门学习的个人看法(转贴自dearbook)
软件开发真的没前途吗?那么什么东西才有前途呢? 请明示.

回复人: huckwin ( 书童) 回复子帖2004-5-26 14:08:04
Re:软件开发入门学习的个人看法(转贴自dearbook)
我现在也懂得这个道理了,坚持下去,学好vc再说


回复人: huckwin ( 书童) 回复子帖2004-5-27 14:41:59
Re:软件开发入门学习的个人看法(转贴自dearbook)
我现在已经工作了,用的是vc,我的c知识只剩下一点基础,看vc挺辛苦的,不知道该如何是好,是不是要丢开vc,从头开始学c?那工作怎么办呢?


回复人: mgm ( 书童) 回复子帖2004-6-2 8:17:40
Re:软件开发入门学习的个人看法(转贴自dearbook)
一定要先把C先学扎实么?

直接学C++不行么?

回复人: Princeton ( 书童) 回复子帖2004-6-5 18:28:50
Re:软件开发入门学习的个人看法(转贴自dearbook)
受益非浅啊

回复人: forlts ( 书童) 回复子帖2004-6-8 21:12:28
Re:软件开发入门学习的个人看法(转贴自dearbook)
太好了,多谢指点.

回复人: r3000 ( 书童) 回复子帖2004-6-10 14:22:55
Re:软件开发入门学习的个人看法(转贴自dearbook)
看得出作者经验丰富,确实是正道明理。
但是真正完全照着做,会很枯燥,也很苦。

我可能是另一个极端,
主张:一切完全以兴趣来主导,今天玩这个,明天玩那个。
到头来可能一事无成,什么也不精,什么都会,又好像什么都不会。
但是我自得其乐,享受的是过程。

如果你准备拿编程来当饭碗,千万别像我,照着这篇文章做吧。
但是如果你想跟我一样拿编程当享受,何必这么认真。随它去吧。。。
只要觉得快乐就够。


回复人: shui_yunjian ( 书童) 回复子帖2004-6-16 15:55:32
Re:软件开发入门学习的个人看法(转贴自dearbook)
有些道理
也许我快淘汰了

回复人: 无声雨痕 ( 书童) 回复子帖2004-6-17 19:47:51
Re:软件开发入门学习的个人看法(转贴自dearbook)
看了后我对软件开发感兴趣,其实我是聋人,但我有梦想,梦想自己有一天能够编程,将来开发软件.希望你多多指教,不吝赐教!谢谢你
我应该怎么学习C语言呢?编程具备需要有哪些呢?

回复人: zhaotide ( 书童) 回复子帖2004-6-17 21:00:26
Re:软件开发入门学习的个人看法(转贴自dearbook)
首先对您的学习精神表示钦佩,我想只要你努力你一定会学的很好。建议您先看看谭浩强编的《C语言程序设计》并用TC2.0编程环境上机多练习。编程不需要什么特别的知识背景,当然这要看你需要学到什么水平。如果一切刚刚开始,那就不要特别准备,先学起来。

回复人: LIOK820 ( 书童) 回复子帖2004-6-23 11:38:39
Re:软件开发入门学习的个人看法(转贴自dearbook)
我是个编程初学者,对C有一定的基础,现在正准备“啃”《数据结构》,读过这篇文章后,看来我还得买本《编译原理》了。
   真心的希望能有一些软件编程业的老前辈多谢一些像这样的好文章来指点我们这些菜鸟,毕竟我国的软件业现在还太弱了,需要有能力和经验的实践家来来使之坚固。

回复人: 雅枫 ( 书童) 回复子帖2004-6-25 10:33:53
Re:软件开发入门学习的个人看法(转贴自dearbook)
写的太好了,我双手双脚赞同

回复人: masufang ( 书童) 回复子帖2004-6-27 15:42:52
Re:软件开发入门学习的个人看法(转贴自dearbook)
看后,我真的想起来那本压箱底的《数据结构》和《编译原理》了。我要去看了。

回复人: VC_ZCB ( 书童) 回复子帖2004-7-4 14:37:44
Re:软件开发入门学习的个人看法(转贴自dearbook)


回复人: jskidd ( 书童) 回复子帖2004-7-7 11:12:37
Re:软件开发入门学习的个人看法(转贴自dearbook)
得益非浅!
我是大二的,已经比较认真学过C语言,JAVA才开始学,因为JAVA比C新,所以我不知道更应该对哪个进行深入的研究。
  


谢谢回复!

回复人: fengqing ( 书童) 回复子帖2004-7-18 15:47:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
刚搞编程,遇到很多问题,看来我也应该打好c基础,再学c++,->vc,可是时间恐怕太长了吧!目前我用vc“编程”(程序的复制),那只好业余时间从基础学起吧,哎!又怕工作丢了!且过着吧!

回复人: sharpsword ( 书童) 回复子帖2004-7-20 9:58:19
Re:软件开发入门学习的个人看法(转贴自dearbook)
r3000兄:

   肚子不能填饱,哪来的享受啊?除非钱会自动流进你的口袋里

回复人: windows_mao ( 书童) 回复子帖2004-7-25 9:57:30
Re:软件开发入门学习的个人看法(转贴自dearbook)
大师级的金玉良言就是值得学习,我现在也很是彷徨,我也想学好VC++,但是感觉入不了门,只是在边缘转来转去的,我只学会了它的基本语法,但是不知道怎么去模仿别人的小软件,请问书童,能否教教我这懂c++基本语法的想编程的小虾?

回复人: xulu1376 ( 书童) 回复子帖2004-7-30 12:35:19
Re:软件开发入门学习的个人看法(转贴自dearbook)
多谢指点谜经

回复人: newgun ( 书童) 回复子帖2004-8-1 0:02:04
Re:软件开发入门学习的个人看法(转贴自dearbook)
太好了 多谢指点

回复人: rushuiyueer ( 书童) 回复子帖2004-8-1 10:31:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
我想知道在哪儿可以看到《由》这篇文章,有人可以告诉我吗?

回复人: an_apple ( 书童) 回复子帖2004-8-2 11:53:59
Re:软件开发入门学习的个人看法(转贴自dearbook)
谢谢指点!

回复人: xjkcl ( 书童) 回复子帖2004-8-5 17:46:43
Re:软件开发入门学习的个人看法(转贴自dearbook)
我现在就还在看数据结构

回复人: gigiboys ( 书童) 回复子帖2004-8-10 10:20:34
Re:软件开发入门学习的个人看法(转贴自dearbook)
不错不错

回复人: sihetunzhanghf ( 书童) 回复子帖2004-8-28 14:42:45
Re:软件开发入门学习的个人看法(转贴自dearbook)
我在学C++,编程的时候老是不知道该怎么调用数据,多谢赐教,但能否推荐哪一版本的数据结构最好吗?

回复人: emmy ( 书童) 回复子帖2004-9-7 20:54:15
Re:软件开发入门学习的个人看法(转贴自dearbook)
我大学刚毕业,大学里学过 C/ C++ ,数据结构, 但动手写程序的时间很少,所以编程能力很差.现在工作了,要求能动手做程序,用VC 写 windows的程序,但是困难重重,不知道如何动手. 我现在打算利用自己的空闲时间努力学习C++ ,数据结构.我也知道理论要与实际相联系,但我现在正处于知道这么去做,而不知道怎么来做,以提高自己的动手能力的阶段,望高手指点.

回复人: magichere ( 书童) 回复子帖2004-9-30 9:34:58
老弟正按老哥的路! 一步一步 的走下去!
老弟 紧尊 教诲·!

回复人: pheiphei ( 书童) 回复子帖2004-10-23 17:23:55
Re:软件开发入门学习的个人看法(转贴自dearbook)
说得好!这位老大是不是认识我?专门挑我的毛病说事!

回复人: chhao ( 书童) 回复子帖2004-11-6 23:26:35
Re:软件开发入门学习的个人看法(转贴自dearbook)
绝对顶

回复人: biglin ( 书童) 回复子帖2004-11-9 21:51:05
Re:软件开发入门学习的个人看法(转贴自dearbook)


回复人: biglin ( 书童) 回复子帖2004-11-9 21:55:53
Re:软件开发入门学习的个人看法(转贴自dearbook)
多谢大侠指教!!


回复人: tunou ( 书童) 回复子帖2004-11-19 17:08:46
Re:软件开发入门学习的个人看法(转贴自dearbook)
我还是觉得C++最好用

回复人: 黄锴 ( 书童) 回复子帖2004-12-3 10:50:03
Re:软件开发入门学习的个人看法(转贴自dearbook)
谢谢前辈的教诲!!我是一个刚刚开始学习语言的毛头小子!哈哈!
学习的时候总是觉得吃力!唉!!看了您的文章!受益非浅。

回复人: huaprogram ( 书童) 回复子帖2004-12-3 15:49:19
Re:软件开发入门学习的个人看法(转贴自dearbook)
就是的,顶!!学编程就是得编看书边写代码,这样效果才好!!

回复人: huaprogram ( 书童) 回复子帖2004-12-3 15:51:36
Re:软件开发入门学习的个人看法(转贴自dearbook)
本人就犯了“从MFC才知道VC的强大”,痛苦中,不过亡羊补牢为时未晚,努力中。

回复人: wafootball ( 书童) 回复子帖2004-12-4 16:03:32
Re:软件开发入门学习的个人看法(转贴自dearbook)
听君一席话,胜读十年书~!!

回复人: 张吉强 ( 书童) 回复子帖2004-12-5 1:45:12
Re:软件开发入门学习的个人看法(转贴自dearbook)
有道理

回复人: asksword ( 书童) 回复子帖2004-12-13 13:07:11
Re:软件开发入门学习的个人看法(转贴自dearbook)
那位、高手写一个从入门到高手的学习流程

回复人: 风雨夜不归 ( 书童) 回复子帖2004-12-25 16:23:37
Re:软件开发入门学习的个人看法(转贴自dearbook)
作者说的有理~~!!!!!!

回复人: p_yer ( 书童) 回复子帖2005-1-15 3:39:35
Re:软件开发入门学习的个人看法(转贴自dearbook)
好,听君一席话,受益匪浅啊

回复人: tuge ( 书童) 回复子帖2005-1-23 15:08:14
Re:软件开发入门学习的个人看法(转贴自dearbook)
汗.  我也是啊,  刚刚开始来.  我只是有一点C 的基础,  但在也只是想利用工作之外的时间来学. . 我对这个是很感兴趣的..  在学校里计算机我还是学的最好的一个. 进入社会以后为了生活就放下了..  哎..... 要做自己想做的事情..  真难..
但我还是想做.. 不愿输给自己... 前辈们请指教一下.. 我现在到底该怎么做呢...
小弟在这多谢了..  学成之后一定请客吃饭.   呵呵....

回复人: w9c9h9 ( 书童) 回复子帖2005-1-30 15:06:39
Re:软件开发入门学习的个人看法(转贴自dearbook)
首先声明,我不是高手!呵呵!甚至连中手都不是,从出生到现在写过的code充其量也就一万来行,所以论经验,呵呵!少至又少,本人只是有一点想法,想与大家分享。
me从大二开始涉足编程,起初是因为寂寞,找不到激情,学编程是为了让自己不至于在这个沉沦的大学校园里更加沉论,当初不知学什么语言合适,看过c#,c,VB.但后来看了几本关于c++的书后。彻底就被c++所迷恋,c++的那种抽象封装的思想太棒了,因为有c的基础,所以很快就上手了。(by the way!并不是学习c++之前不宜学c,其实c也是一门很强的语言,只是很难应用于大的项目,me就觉着谭浩强先生的《c程序设计》就是一本很好的入门教程,很多东西讲得很清楚,比如内存是如何分配的等等,值得多翻几遍。)
后来回头看看,其实学什么语言并不重要,关键是一种思想:如何将现实世界的问题抽象成数据。仅此而已,而选择语言的标准及自己最熟悉最顺手即可。
我学c++用了两个星期的时候,(大体理解),面向对象的思想并不好理解,再多看了几本书后才有种豁然开朗的感觉,对象就好比一台CD机,你对CD机的操作无非PLAY,STOP,REPLAY, 之类,但CD的内部个个部件是怎样的顺序工作的,你没有知道的必要,这就是封装,PLAY STOP 按钮就是CD制造商提供给我么接口(INTERFACE)。
重在理解,C++的面向对象的思想并不难理解,多看几个例子就搞定了,重要的是选择一本合适的书,个人以为钱能先生的书不错。比较通俗易懂。
如果你身边有一个作程序的前辈,那将是最宝贵的资源,ME当时就不知该学什么东东,
由于在用VC++,所以借了一本讲MFC的书,以为这就是编程的全部,结果就盲目的学起了MFC可看了半天愣是没看懂,因为MFC是很庞大的体系,个人以为初学的人不要立马就学这东西,因为你无法从整体上理解它,“之间树木,不见森林”不迷失方向才怪呢!加上MFC内部千丝万缕的联系,我就迷实在了里面,一个月后,我放弃了。
现在回头看来,MFC不就是那么一个框架吗!只不过对SDK作了封装,打个比方,你想给张三大电话,号码为54321,你先拨‘5’,然后拨‘4’-----最后拨‘1’。
而我现在给你一部电话,你只需要按’张三’这个按钮就可以了代替以上所有的步骤,
用带有‘123456789’的电话就好比用SDK方式编程,而用带有‘张三’的电话就好比用MFC写程序。从一定程度上MFC简化了SDK,但也失去了很多灵活性。个人观点,呵呵!
还有MFC中main()函数是隐藏的,被封装了,初学者不知该从何处入手。并且WINDOWS的数据类型很另类,像WORD DWORD,HANDLE等等,这些都在WINDOWS.H中定义了,而初学的人很难理解,(我当时就傻了几天)。
如果你实在很想学WINDOWS编程,建议你去学SDK编程,从最基本的东西做起,做
CONSOLE程序,老老实实的写每一步,包括WINMAIN(),WINPROC(),等等。
其实SDK也不是很难理解,MICROSOFT创造了WINDOWS,同时提供给了我们基于WINDOWS的编程接口(API),其实就是若干个函数,就像CD上的PLAY,STOP一样,你通过调用这些函数于操作系统对话,让操作系统完成你的要求。
你可能要问,我不知道该调用哪一个函数啊?很简单,查手册呗!或是MSDN(最完整的),有一点要说的:API函数通常使用匈牙利命名法,所以你一定要了解这种命名法,API函数的名字都不短,参数更是一堆堆的,所以一定要有耐心啊!
ME认为掌握了语言后就要看《数据结构》,一定要静下心来看,你看他之前和之后对问题的分析思路是坚决不同的,(我是学自动控制的,所以已开始不知道其重要性,再用MFC作了一个仿WINDOWS的计算器(成功了,但算法很兰,我自己都觉得差)后,才看的数据结构,结果发现很多很乱的思路完全可以用数据结构的知识解决 )
说到数据结构,就不得不说说STL(标准模板库),他为我们提供了几乎所有的数据类型,以模板的形式,很通用。
据说离散数学也是一门必看的课程,但我没看,所以也没有发言权。
ME以为最好能多看点关于操作系统的书,了解他是如何工作的,进程(PROCESS)线程(THREAD)等等,(新概念不少啊),因为我是学硬件的,所以很多东西一看就能联想到硬件是如何工作的,理解起来就不是很难。
汇编语言一定要学,不过可以等到你上升到更高的层次时,说实话,不好学,我现在正在努力,能不能学好还是另一回事,因为你必须对硬件比较了解,比如说8086的工作方式,寄存器的使用,内存的分配等等,呵呵,自己找本书肯把!
提一点,选择自己的教材很重要,也是一个难题,很多教材简直就是垃圾,对读者很不负责,不仅错误很多,还有抄袭的嫌疑。最好是找大家公认的比较经典的看,最近机械工业出版社出的一套书就不错,只是价钱不低,(有做广告的嫌疑啊,呵呵!),译者比较负责。
关于学习方法的问题,书一定要多看,但动手更重要,如果你一味得向脑子里灌,就会失去热情,这是挑战一下自己,做一个小项目,比如:字符串处理程序,银行客户管理,等等,只有这时你才能调动你的全部大脑细胞,使身体充满激情,还有比充满激情的时刻更幸福的呢?还有什么比调试出结果更令人兴奋的呢?
很多东西只有在动手时才会学会,“实践是了解到理解的必经之路!”(谁说的?不记得了,AO I SAID,^-^ )
由于ME现在自认为自己还是一个菜鸟,所以在见识与理解上不够HIGH,一点感悟,想与他人分享,以免他人少走弯路,毕竟人生的时间是有限的,(ME着实走了很多弯路啊,555)。
不求被认可,路人一言,信否自便!
愿交天下共识人,QQ:280545385,
E-mail:  wangchunhui1232000@yahoo.com.cn
自由路人甲


回复人: 小邪 ( 书童) 回复子帖2005-2-4 15:25:56
Re:软件开发入门学习的个人看法(转贴自dearbook)
机械工程出版社的书的确不错,我学的C、C++、数据结构都是机械工程出版社的


回复人: zhanghao19811219 ( 书童) 回复子帖2005-2-25 14:55:44
Re:软件开发入门学习的个人看法(转贴自dearbook)
我用的是电子工业出版社的。不错。数据结构用的是英文的。。。

回复人: xiang228 ( 书童) 回复子帖2005-3-5 16:00:15
Re:软件开发入门学习的个人看法(转贴自dearbook)
一个字,顶

回复人: cloudffx ( 书童) 回复子帖2005-3-7 10:30:42
Re:软件开发入门学习的个人看法(转贴自dearbook)
真是好文章阿,谢谢了

回复人: ljyxjy1022 ( 书童) 回复子帖2005-3-16 23:59:39
Re:软件开发入门学习的个人看法(转贴自dearbook)
大家好,我是新来的,刚开始学c++,以后请大家多多指教

回复人: skyoutsky ( 书童) 回复子帖2005-3-21 22:21:36
Re:软件开发入门学习的个人看法(转贴自dearbook)
基础是最根本的,要务实、不要急于求成

回复人: thomasway ( 书童) 回复子帖2005-4-7 9:29:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
闻君一席话, 胜读十年书.
谢谢!!!!!

回复人: smalltank ( 书童) 回复子帖2005-4-14 17:27:05
Re:软件开发入门学习的个人看法(转贴自dearbook)
强烈赞同

回复人: lx830521 ( 书童) 回复子帖2005-4-18 15:48:25
Re:软件开发入门学习的个人看法(转贴自dearbook)
值得一看

回复人: 野孩子 ( 书童) 回复子帖2005-4-20 14:49:36
Re:软件开发入门学习的个人看法(转贴自dearbook)
这个贴字很好,好的不知道怎么说好。我正是在不知道学什么好。看了VC看html看了游戏设计看……哎,反正不知从何处入手。看了这个贴后,有点反省。多谢了……

回复人: 其浪 ( 书童) 回复子帖2005-5-15 20:41:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
w9c9h9写的相当不错啊,,对初学者是个很好的参考啊!!!!

回复人: crystalwying ( 书童) 回复子帖2005-5-24 17:47:31
Re:软件开发入门学习的个人看法(转贴自dearbook)
有所感悟,谢谢啦

回复人: julius309 ( 书童) 回复子帖2005-5-31 0:14:51
Re:软件开发入门学习的个人看法(转贴自dearbook)


回复人: julius309 ( 书童) 回复子帖2005-5-31 0:17:24
Re:
写的很好,我手头正有个工程。由于没得实际经验,显得无从着手,看了很有感触

回复人: wangliang651 ( 书童) 回复子帖2005-5-31 12:14:31
Re:软件开发入门学习的个人看法(转贴自dearbook)
受益非浅啊,看来我有必要学习学过的知识了。谢谢你 啊

回复人: fairyshen ( 书童) 回复子帖2005-6-3 8:56:21
Re:软件开发入门学习的个人看法(转贴自dearbook)
我看了真的受益很大,多谢

回复人: 草叶儿随风 ( 书童) 回复子帖2005-6-20 7:01:59
Re:软件开发入门学习的个人看法(转贴自dearbook)
都顶了一年多了啊!好经典的帖子啊!

感谢zhaotide和w9c9h9两位大哥!小弟刚刚起步,正无从下手,这下子知道怎么学了!很想踏踏实实学点东西,最好能再考个计算机的学士学位去,呵呵!

欢迎有兴趣的朋友们加入群:3183196,大家交流交流,更希望大虾们给我们这些菜鸟多一点点指导,多谢了!

回复人: zhaijianxing ( 书童) 回复子帖2005-7-2 16:25:11
Re:软件开发入门学习的个人看法(转贴自dearbook)
静下心来认真学。一步一步的走

回复人: kefen ( 书童) 回复子帖2005-7-14 22:20:09
Re:看了后,小弟真的受到一点启发!!


回复人: xushan ( 书童) 回复子帖2005-8-1 11:01:53
Re:软件开发入门学习的个人看法(转贴自dearbook)
好意见,我也学过几种语言C,VB,C#,C++,但没一个拿手,应该静下心来好好学通一门语言了.

回复人: sosoo ( 书童) 回复子帖2005-8-12 22:47:46
Re:软件开发入门学习的个人看法(转贴自dearbook)
编译原理 只学会了状态机 就已经觉得很美了
还需要再学再学

回复人: youzhi ( 书童) 回复子帖2005-8-29 18:35:02
Re:软件开发入门学习的个人看法(转贴自dearbook)
专心学好一门语言,确实可以达到举一反三的作用。但是怎样去学好一门语言需要
一个过程,而且是艰苦的长期的过程。

回复人: lhpvc2005 ( 书童) 回复子帖2005-9-11 14:13:20
Re:软件开发入门学习的个人看法(转贴自dearbook)
听君一席話,勝讀十年書呀,難怪以前看了那么多书,但到最后还是發現摸不着頭腦呢,真是受益非淺呀,看来这次我是找对婆家了,謝謝大蝦,也謝謝VCKBASE的所有创造者吧!

回复人: geda ( 书童) 回复子帖2005-9-22 18:40:22
Re:软件开发入门学习的个人看法(转贴自dearbook)


回复人: Charis_Joe ( 书童) 回复子帖2005-10-10 10:14:11
Re:软件开发入门学习的个人看法(转贴自dearbook)
真的受益非浅,金玉良言!
我想在这里发言的都是求知上进的,不管我们在学习中遇到过什么困难,我们都比那些整天在网吧打游戏聊QQ的强百倍了。
也非常感谢这个网站给我门提供的这个干净自由的交流空间,谢谢你们!辛苦!
祖国软件的明天得靠我们!大家加油!


回复人: 0409122930 ( 书童) 回复子帖2005-10-11 22:02:25
Re:软件开发入门学习的个人看法(转贴自dearbook)
看完后收获颇丰啊!
我还是个学生,看完后真是收获不少·

回复人: sjg20010414 ( 书童) 回复子帖2005-10-14 8:34:12
Re:软件开发入门学习的个人看法(转贴自dearbook)
我不是学软件的,仅仅是自学,我也谈一下看法:
最近在看Data structure and problem solving using C++,即数据结构和问题解决C++版,也有Java版的。
建议熟练掌握C语言和了解C++入门概念的人,可以看这本书加强对C++的认识,同时可以学好经典实用的数据结构和算法,包括STL。
作为学习的人,不应该绑定到特定的开发环境上,因此,用符合C++标准的编译环境就可以了,不要使用开发环境特有的东西。
最后,可以转移到特定的环境上。比如,对windows,先看点SDK编程,然后去熟悉一个针对windows的开发环境。对Java,有了C++和算法基础,容易进入角色。
我想,随着学习的深入,编译原理,操作系统是自然而然会去了解的东西。但有前面的基础,更容易理解。
因为学硬件出身的缘故,我对汇编语言不能放弃,特别是处理底层问题。而且,个人认为,知道了局部变量是汇编语言中的堆栈分配的,全局变量是堆分配的,各种段的属性,指针就是地址,数组下表是偏移量等,对于理解C/C++的一些行为(为什么要这么干)是有帮助的。

回复人: tmeteor ( 书童) 回复子帖2005-11-16 22:39:30
Re:软件开发入门学习的个人看法(转贴自dearbook)
我觉得,学得那么深干什么,我只是想现在编编程,以后创业.毕竟程序员到30就得改行了.我才不想把精力花在<<编译原理>>上呢!这个留给专业人士去弄吧,不是说他难,只是用不到,又何毕花时间呢.我觉得又空看一下,经济方面的书更好!!

回复人: kjkdklj ( 书童) 回复子帖2005-11-19 23:05:45
Re:软件开发入门学习的个人看法(转贴自dearbook)


回复人: kjkdklj ( 书童) 回复子帖2005-11-19 23:08:36
Re:软件开发入门学习的个人看法(转贴自dearbook)
本人刚开始对数据库,软件感兴趣,想学又不知道从哪入手,希望专家高手们能指点一下

回复人: gaozhengwei ( 书童) 回复子帖2005-12-1 13:59:07
Re:软件开发入门学习的个人看法(转贴自dearbook)
我是半路出家的。《编译原理》实在看者很吃力,怎么办呢?


回复人: zuoyefeng ( 书童) 回复子帖2005-12-2 23:16:55
Re:软件开发入门学习的个人看法(转贴自dearbook)
to tmeteor
你觉得大家都应该和你走同一条路吗?
每一个人都有自己的人生



回复人: showlong ( 书童) 回复子帖2006-2-5 13:33:10
无主题
其实随便那一种语言都是一样的.有它的好处也有它的坏处.
关键是你把它的作用发挥在什么地方.
用VB做网络软件就肯定不太好.性能和功效不能肯定.
C++也不一定是全效的.
ASP在网络站了很大一部分,但也不是全部都归属它.

不要肯定别人做的是对的.也不要肯定自己做的是全对的.

回复人: CO酷狗OL ( 书童) 回复子帖2006-3-23 23:53:49
Re:软件开发入门学习的个人看法(转贴自dearbook)
支持所有帮助我们初学者的朋友们!
初来贵宝刹,请各位多多提点!
posted on 2006-04-05 22:51 汪杰 阅读(444) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。

<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿(15)

随笔分类(1)

随笔档案(90)

文章分类(727)

文章档案(712)

相册

收藏夹

http://blog.csdn.net/prodigynonsense

友情链接

最新随笔

搜索

积分与排名

最新随笔

最新评论

阅读排行榜

评论排行榜