简书:编程入门学习的困惑

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_41164184/article/details/95731143

学习编程这段时间以来,接触了不少一起学习的小伙伴,首先我自己经常会问XXX 语言怎么入门、如何学好编程语言等问题。这里我总结了我作为初学者的一些困惑与大家分享

1、如何入门?

在学习编程第一天,大部分人会想我该如何去学习,需要看什么书?

对于刚入门的程序员,不管是科班出身还是非科班出生,我建议你可以先买一本相关类型的书(找好评多的),C语言推荐《C Primer Plus》,C++推荐《C++ 从入门到精通》最好还能搭配视频,视频与书结合着看, 从软件环境安装到执行出第一个 “Hello World!”,逐渐深入。

之前在某些论坛听一些老鸟告诉我需要买个《XXX 编程思想》,在问了好多人之后,总结:这种书很好,是 XXX 语言的圣经,但个人认为这并不适合初学者,这种书简直初学者的噩梦,很容易浇灭你的学习热情。

书上的案例建议自己一个个字母敲下来自己去测试执行,开始虽然慢,但这是你必须要经历的过程,千万别 ctrl+c、ctrl+v,否则就在浪费你的time。

2、碰到问题如何解决?

学习编程语言会碰到各种各样奇怪的问题,初学者最有可能碰到的是语法格式的错误,例如:

a、结束语句分号忘记写了、漏了反括号、缺少空格等。
b、关键字,变量名写错了,例如 printf 写成了 printd,String 写成 Strng等。
c、判断相等两个等号 (= =)写成一个(=),有的还不能使用两个等号( == )判断是否相等。
d、赋值类型不匹配,整数类型使用了字符串赋值。
e、for循环跳不出去(忘写了break等)
f、linux下编程对NULL进行解引用、非法访问内存(越界)
……
以上这类错误在初学者非常常见,如果是语法错误,一般 IDE 都会有很好的提示功能,你根据提示(第XXX行)修改即可,但大家平时还是要细心些,培养好的编程习惯。

而有些错误在执行后才会提示,一堆英文提示,单个字母都认识,拼起来一个都不认识,这时候很多人就手足无措了,不该怎么办,其实这时候大家不要慌,要淡定,这些都是纸老虎,只要你认真去看,英文看不懂借助翻译工具 Google 、百度翻译下,是很容易理解错误内容的。

3、该如何提问交流?

如果我们已经认真看了错误提示,还不懂的如何解决问题时,这是建议你使用以下几种途径解决:

a、搜索引擎(百度、Google 等)上检索你的问题与需求,看看是否有人碰到与你一样的问题。
b、技术论坛上提问如: 百度知道、CSDN、V2EX 等。不过个人不推荐这个这个要等人来回答,效率太低,而且不一定是你想要的。
c、如果是学生的话最好找老师,老师是最好的交流者,但前提是必须自己思考,不能一碰到就去询问(禁忌)。
d、最好的也是最直接的就是问你身边的技术高手,他一句话也许就能给你点透。
平时我们也要多收藏好的技术文章,如:CSDN、博客园、菜鸟教程、简书、infoq、51cto、知乎等。多看看前辈的经验和案例,自己也去测试测试。这些对大家的积累是很有帮助的。

4、学习与总结

但学习编程过程中,我还是建议大伙平时要多总结自己走过的坑,记录自己的学习过程,不要求一天一篇,但最好在 3~5 天有个对自己过去的学习有个总结与反思,特别是可以记录规范性文档及程序脚本,比如:

1、C 语言编码规范
2、C 语言逻辑判断方式
3、C语言指针的“陷阱”
4、链式结构的常考点
5、树状结构的递归代码
……
我相信这些功能大家在编程中绝对不会只写一次、两次,会非常频繁的使用,所以这些东西大家可以总结出来,写在自己的云笔记上(有道云、印象笔记)。

展开阅读全文

学习windows编程困惑(关于windows消息编程的讨论)

12-12

欢迎大家来讨论windows消息机制(消息处理流程)rnrn编程中一个重要的要素,是程序的流程(cpu处理的流程)rn不管是面向过程的,还是面向对象的,都是必须的rnrn而windows编程中一个重要机制是事件驱动,消息机制,rn这里也离不开消息处理了流程问题rnrnwindows下的编程离不开消息机制,而rn关于消息机制的详细参考资料几乎没有,rn有的只是msdn中的每一个消息的单独说明。rnrn实际编程中,相关的消息都是配合使用的,rn例如:rn当你点了一下菜单,你知道有哪些消息发生了吗?rn你一定知道有WM_COMMAND发生,你也知道有WM_LBUTTONDOWN,WM_LBUTTONUP发生,rnrn那我再问:你知道谁先发生谁后发生吗,rn我想有很多人不知道?rn(我想应该是这样的:WM_LBUTTONDOWN,WM_LBUTTONUP,WM_COMMAND)rnrn当你按下键盘的一个键,你知道有什么消息发生吗?(<>)rnWM_KEYDOWN WM_CHAR WM_KEYUPrn而且产生过程应该是rn1,WM_KEYDOWN post线程消息队列,rn2,tranlatemessage 产生 WM_CHAR ,post线程消息队列rn3,WM_KEYUP post线程消息队列rnrn侯捷先生在<>说"只用一样东西,不明白它的道理,实在不高明"(这句话的原文是在林语堂的<>)。rn我想我们只用windows,但是不明白它的消息机制,实在不高明rnrn希望大家把知道的消息处理过程贴出来,共同学习!rn 论坛

入门编程如何学习C++

07-30

入门似乎每个准备学习编程的人都会考虑的问题。学习编程当然要有一个目标,或者一个大方向。编程不能盲目的学,因为编程语言实在太多了,每种语言几乎都有自己的特色,所以要先定好一个大方向。如果是WINDOWS编程的话,推荐学习C++,这是一门不错的语言。rnrn rnrn 下面开始介绍一些学习C++的方法:rnrn rnrn 其实不推荐直接学C++的,因为涵盖的知识太多了。想学C++的朋友不如先学一下其他语言,当然不用太深入的学。如果本来没有学过编程,没有任何基础的话,推荐先学一下VB,或者更早一点的QB。用个大概半个月,一个月的时间看看,做做练习。当然这个时间随个人情况而定,但一定要用很多时间去看,多做练习。大概掌握语法结构就可以了,别学的太深入,我们的目的是C++呢。如果做到比如说VB,不一定能自己写程序,但给个简单的源代码能看懂了,那么放下VB吧,正式学习C++。这里的目的就是为了熟悉一下编程,尝试一下编程是什么感觉就足够了。rnrn rnrn 如果不喜欢VB的话还有其他语言,比如C。C++语言是C语言的超集,也就是说C++涵盖了包括C语言和一些C语言不具备的特性。学习C语言可能没有VB那么有意思,学半天也没脱离命令行,而VB是可视化编程,想要个什么样的窗口,动动鼠标画出来就可以了。当然先学C语言也有比先学VB的优势。比如基本语法就不用重新看了,像什么判断语句,循环语句。这样在真正学习C++的时候就不用费多大力气看这些东西。还有要注意一点,C语言是面向过程的,C++是面向对象的,所以学C的时候不要学的太深,基本了解就足够了。rnrn rnrn 还有另外一种就是先学JAVA,这个不太好说,因为我不懂JAVA,呵呵。不过这个可能就没有上面提到的好了。有心人不妨试试,然后把过程发出来大家交流。rnrn rnrn 开始学C++之后难题又来了,因为没有C的基础可能会比较慢,包括先学C再学C++的。先尽量别管C,努力学好C++就好了,因为C迟早要补,但是C又比较枯燥,所以等用C++可以写简单的程序的时候再补C也不迟。学习C++的时候千万不要一味的看书,多做做练习,同一道题多用几个方法,比如之前我写的一段练习题,[url=http://lun3322.3322.org/post/34.html]同一段程序的多种方法lun3322.3322.org/post/34.html[/url],里面就有两种方式达到的同一个目标,多用编程的知识解决一些力所能及的实际的问题,这才是根本。新手编程最忌讳的就是光看书不做练习,多动动手吧。rnrn rnrn 大概能写的就这么多了,我也是新手,我也在学C++,可能有很多照顾不到的地方。rnrn 本文转自:[url=http://lun3322.3322.org]lun3322.3322.org[/url]rn 原文地址:[url=http://lun3322.3322.org/post/37.html]http://lun3322.3322.org/post/37.html[/url] 论坛

没有更多推荐了,返回首页