鱼C论坛

 找回密码
 立即注册
查看: 1775|回复: 18

[技术交流] [分享]初学编程的好方法

[复制链接]
发表于 2020-6-28 10:41:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 jhanker 于 2021-9-14 14:14 编辑

好久好久以前,发在“看雪学院”论坛的一篇小感想,也许对有些初学者还是有一定了价值

我觉得初学编程最好是跟着书本多做实例,甚至是不懂也跟着在电脑上试试(调试)书上的代码也是非常有帮助的.
    记得几年前我刚刚学习面向对象编程的时候,那时是学VFP的,除了自己有一点编程基础外对VFP一窍通,当然对面向对象的程序设计也是一点不懂,只知道任何一种语言都有一些共性的东西,比如常量,变量;数据类型;基本语句;函数等等(因为之前在大学由于是学物理的所以有机会学过C语言,汇编语言,微机原理等计算机必修课),但是毕业后到了一所高中任教,学校的招生管理软件一定要用VFP编,所以就买了本书边看边跟着往电脑上打,没想到连最基本的VFP语法都没接触过的情况下(其实语言的英文意思我还是看得懂的),当我把书的内容看完,同时也把书中的全部代码都打完后,我的VFP也就会了.接着还编了几个实用的程序.(至于编程时的一些细节问题我还是上网查资料的)
    所以我觉得学习编程最好按照以下过程进行:
1.先掌握要学习的语言的语法知识。(打好基础)
    首先要有一本介绍所学语言的语法书.例如学Delphi是不是先搞一本网上说的<<delphi语法>>,其中delphi语法(中文) 电子书网上有下载的.(我学的delphi语法书是前辈们给的<<程序设计delphi5.0基础教学篇>>,我觉得里面语法写得很详细,虽然我发现书里有的地方印刷有错误,但用来学语法足够了,那书可是2000年出的,虽然老了些,但比现在市面上的一些书写的实啊.我记得那是2008年四,五月份,自己用了一个多星期看完了,就帮学校编写了一个方便防arp攻击的软件。)
2.跟着书上的代码上机调试,即使不是很了解语言本身。(全面了解)
    买一本相对基础全面的有设计实例的书,这样的书现在是多如牛毛,跟着上机多试试,这样就会对所学的语言有全面的了解了。当然在调试中一定要注意归纳自己经常出错的地方.特别是对变量的类型转化,变量的生存周期,作用域,内存存储情况等要特别注意,还有在指针方面一定要仔细.比如要学好DELPHI,指针一定是要学好的,实在是太多的数据类型(包括类类型)都与指针有关.学习指针的知识,个人觉得学习谭浩强的《C程序设计第三版》一书会很有帮助。
3.进一步深入学习自己专攻的领域。(深入研究)
     在前面的基础上然后再找一些自己要深入研究方面的书或网上资料进行学习。比如我就会选一些和数据库有关的资料包括c/s,b/s。还有在这一阶段如果真的想学精的话,最好好好学学API方面知识,会有意想不到的效果。如果学习DELPHI的话,最好深入学习其核心—VCL架构知识(最好有C语言和汇编的基础,那样会更好学)。如果是想在加密解密方面发展的话,不但要有C语言和汇编的基础,还要知道PE格式,调试API(最好是买一些看雪学院首页推荐的书进行学习,当然还有看雪学院每年的新春大礼包的工具了)。
    我想过了前面三关(主要是毅力而不在于基础),接下来的事情就是靠多练,多用,多积累经验了,应付一般的工作就不在话下了。当然如果要成为真正的高手还需学习微机原理,数据结构,软件工程,编译原理等等。能否成为顶尖高手除了毅力还要靠悟性和创造性了。
         jhanker  2009/05/02

下面是2020年的介绍,有点搞笑
      我的专业是学物理的,现在在高中教的科目也是高中物理。现在空余时间帮同学维护一个中型企业的ERP系统,这系统是以前企业定向开发的,后来开发ERP的软件公司倒闭了,就把源代码给了企业,所以我就不知不觉被我同学搅进去维护他们公司的这个软件代码了,有空就把他们的代码和服务器管理一下。其实该软件并行运算能力还不错,速度也还好,内网250多个客户端还有外网30多个客户端同时运行没有卡顿现象,软件是B/S架构,数据库的表数量也不大。主要维护的语言就是后台数据库用微软的SQLserver,服务端用微软的C#,前端用javascript语言(Extjs)。不过说实话里面的代码风格确实挺糟糕,变量设置混乱(维护别人代码,这一点最头痛。而且当时开发是一个团队开发,各模块代码风格五花八门),名为用C#,但代码也没有多少地方用面向对象编程,说实话编程要求确实不高,只是If,For等语句和简单的加减乘除,代码只要拷贝复制(没办法,不想把软件的原来架构推翻重新写)。而我自己其实还是挺喜欢单片机这一块的,在这一方面原来我们用51单片机开发(和你同感,我不认为51不行,在很多场合价格便宜而且开发也不难,挺适合初学者学习),后来用stm32开发,现在我和我的朋友routty把五轴并联机械手已经开发好,而且在朋友的企业对很多原有人工岗位用我们自己搞的机械手来替换了,虽然设计的机器外观不太漂亮,但一年运行下来还算稳定。单片机下位机程序原来是用C语言,后来发现管理代码方面没有面向对象的C++语言方便,所有现在我们把除了中断处理模块外全部改成用C++类实现,方便以后二次开发。上位机直接用VC++编写,这样一些代码在上位机和下位机可以共享。机械手和机器的机械结构自己摸索着用shoildworks画图,单片机组成的工控板也是我们自己摸索着用AD设计好,程序也完全自己编。
     反正一路过来 自己自学了计算机原理,C,C++,C#,javascript,sql都知道一点,但都感觉不精通。毕竟是业余爱好,发现如果一段时间不接处,有些知识很快就会遗忘,记住的知识一些核心内容:比如计算机内部结构,代码如何运作的,对于C/C++不会忘记的是指针,类,引用等的底层机理,内存中的储存结构还能清晰记得,而具体的细节会很快忘得一干二净。其实个人感觉学好计算机原理,懂一点汇编,多调试代码看它的反汇编代码对深入学习C/C++大有好处。说白了计算机哪有什么指针和数据类型,在内存中大家都是数据,只是人们对这些数据赋予了特定的涵义而已,不管什么类型,什么对象,关键是初始位置(地址)和长度。如果等你看到C/C++代码能想到它的反汇编代码或者更进一步能想到触发器,三态门,寄存器,运算器,控制器,总线分别是怎么工作的,01数据流怎样流动的。那样说明你真的入门了!
    我感觉学习计算机语言不要随大流,自己搞自己的什么语言都行 ,哪怕自己最早的VFP,VB,现在流行的Python等都行!看到这个论坛,加上自己是个老师,就想在论坛逛逛提升提升自己。年级大了,思想也落伍了。也该继续教育一下了!    jhanker  2020/06/29

到了2021年
突然发现自己2009年的学习小结!感觉自己都不好意思了,1995年大学毕业一晃二十六年,C/C++还是断断续续没学好!

最后得出结论:看来学编程,自学还真不容易,建议在鱼C论坛找小甲鱼的教程好好学习,这样扎实!最好冲个VIP至尊会员,哈哈


-------------------------------------------------------------下面是当初拷贝的一些说法,不管对错--------------------------------------------------------------------------------------------------------
有人说:
我个人认为,最快的学习方法是从无到有,开发一个以前没做过的东西,从找资料、上论坛到自己分析,做出东西是印象最深的。
我觉得:
是的,那样是最快的,也就是先 “跟着书上的代码上机调试,即使不是很了解语言本身。(全面了解)”但没有坚实的基础是走不远的,还是要回归第一步的,有时第一,二步交替进行的。我也发现现在绝大多数的初学者都没有重视第一步的打基础(有时是自以为打好基础了,但想想连谭浩强的《C程序设计》都没看懂,能说基础好吗?当然最好了解点汇编。),所以才会到后期感觉徘徊不前了。 个人想法,可能有不对的地方。

有人说:
先要熟悉基本的编程语法,然后学用VC,VB等一些编程工具编一些小程序,最后自己搞个小项目,基本上可以去混碗饭吃了。
我觉得:
混饭可以了,哈哈

有人说:
首先说明我也是菜鸟(如果说的不对请多指教),用过很多方法,但认为最有用的是:
先去百度上找两个别人不会的问题,然后自己想想如何编写,不会的话又回去翻书,
翻完书别人也答的差不多啦,然后对比别人和自己程序的不同,实在不会的就联系别人,
或向别人提问,这样慢慢的就有点感觉啦。
我觉得:
我也认同,先找点感觉!然后系统的学

有人说:
个人经验:要走如下几步:
第一,先读谭某的书,一个月内看完,然后烧毁,永世不再碰它。
第二,读算法书,这个需要仔细上机调。
第三,多找些机工、电工、邮电出版社的书。
第四,根据你选择的开发平台,备好它的技术文档,比如用VS,就备用MSDN,而且要尽可能适应之,适应到排它,因为对于特定的开发平台,权威技术文档就足够了。如果拥有权威技术文档,仍然碰到开发解决不了的技术问题的话,只能说,对该文档的了解还是不够。
第五,开始找东西做,有什么做什么。真正的程序能力都是从这里才开始真正积累起来的。
我觉得:
受益匪浅!

有人说:
多练的同时也得多思考,掌握程序的规律,以后在写同样的程序就方便了!不能一直依赖于课本!
我觉得:
只有自己归纳小结了才会是真正自己的东西,这是任何学习过程的最好方法


为什么读了谭某的书 要永世不再碰呢?
我认为:
因为现在很多大学生学C语言接触的资料多了,包括很多国外的经典名著,而谭浩强的《C语言程序设计》的有一些地方确实也存在欠妥的地方,比如变量的表示很多用a,b,c,这一点如果初学者学了后成了习惯,那以后用C++等语言编写大型程序会出大问题,还有由于是一本入门教材对一些C语言的深入探究也不够,真正实际应用的实训例子也欠缺,等等。但里面的C语言语法等方面由于是一本国内教材,所以适合自学,而且讲解比较详细,比较适合国人的思维。所以才有上面说法吧。毕竟入门了以后可以找一些更高级别更适合项目开发的书。但我觉得谭浩强的《C语言程序设计》是清华大学的老教授写的一本大学教程,确实比较适合中国学生,特别是初学者的学习!(不要怕网上的一些对此书的负面的评论,毕竟这本书刚成书的中国国情决定的,但毕竟这本书成就了现在的很多C语言大咖,从书的版次和销量也说明了这本书的当时畅销程度),反正从一个C语言熟手或高手来看这本书可能会有一些问题!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-28 10:50:56 | 显示全部楼层
第一,先读谭某的书,一个月内看完,然后烧毁,永世不再碰它。
WOC XSWL
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-28 11:08:23 | 显示全部楼层

这什么语言,不太好理解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-28 11:19:42 | 显示全部楼层
jhanker 发表于 2020-6-28 11:08
这什么语言,不太好理解

卧槽,笑死我了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-28 12:08:06 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-28 12:12:22 | 显示全部楼层
jhanker 发表于 2020-6-28 12:08
网友说的挺偏激的

不知道,没读过,但很好笑
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 09:47:06 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-6-28 12:12
不知道,没读过,但很好笑

回复后可见我怎么没法设置?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-30 09:48:11 | 显示全部楼层
jhanker 发表于 2020-6-30 09:47
回复后可见我怎么没法设置?

这个权限等级要求较高。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 09:51:40 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-6-30 09:48
这个权限等级要求较高。

如果VIP是不是就可以了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-30 09:56:53 | 显示全部楼层
jhanker 发表于 2020-6-30 09:51
如果VIP是不是就可以了?

是。可以打钱了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 15:08:19 | 显示全部楼层

打钱了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-30 15:11:29 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 15:13:14 | 显示全部楼层

你是推销员,有空我也看看视频学习学习。到时到你的版块请多多指教

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
永恒的蓝色梦想 + 5 + 5 + 5 欢迎~

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 13:18:50 | 显示全部楼层
jhanker 发表于 2020-6-30 15:13
你是推销员,有空我也看看视频学习学习。到时到你的版块请多多指教

好久没见兄弟了,到哪去了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 14:15:54 | 显示全部楼层


好久没见兄弟了,到哪去了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-14 15:48:27 | 显示全部楼层
把老底都掏出来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 17:04:51 | 显示全部楼层
routty 发表于 2021-9-14 15:48
把老底都掏出来了

以后你这C++高手也帮帮这些鱼油吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-1 23:09:56 | 显示全部楼层
jhanker 发表于 2021-9-14 14:15
好久没见兄弟了,到哪去了?

高中,一个月一放假
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-22 12:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表