自学C语言教程

自学C语言教程,第1张

没有基础可以入门,通过努力可以达到初、中级程序员的程度,但再往上走,就比较困难了。后面需要不少算法、英文和数学知识。

教程的话可以参考下面两本教程:

谭浩强:《C语言程序设计》

李铭城 黄中豪 陈宇芬:《资料结构 C》

英文的话,进入初级之前都不怎么需要。但是进入中级后,需要读一些英文资料。不过现在翻译比较厉害,绝大部分的资料都有翻译。但是要进入高级,就必须要学习英文了,因为最新最核心的资料都是英文的,翻译的往往都会有错误。

另外数学在早期影响不大,但是进入中级后就必须要了。因为估算算法时间复杂度、空间复杂度、图、树等等,都涉及不少数学知识。当然如果只是做简单应用或者驱动的话,这方面要求就不会太高。

最后给一个学习大概的路线图:

入门级的学习,只要能够掌握:代码三大结构(循环、分支、顺序)、流程图、C语言关键字和语法、输入输出、文件 *** 作、套接字 *** 作。就算是初级满级了。

初级程序员:数据结构和算法(排序,查找)、了解软件开发模型(瀑布模型、敏捷模型、原型模型等等)、了解UML、系统常用API、网络通信、编译和SDK环境搭建

中级程序员:设计模式、多线程编程、网络通信(服务器、客户端)、面向对象编程、掌握UML、系统网络/文件/互斥/线程/事件/安全API、STL、相关法律法规、知道一些常用软件架构(MVC等)

问这个问题的人都该打,先拖出去,赏一丈红~

如果你是计算机学生或者意欲从事IT行业的人,那么再仗50大板!!

为什么

因为你肯定想都没有想过这个问题,一个典型的伸手党,这对于从事计算机的人来说是大忌!!

且看下面这2个主要原因:

1、程序不可能一帆风顺

如果有这个时候,那么你可能在做梦,总会遇到各种各样的问题

难道你每次遇到问题都张口问“哪个大牛,来帮我看看这个程序什么问题吧,怎么老是提示错误呢”

如果真的是比较复杂的问题还好,大牛看过之后替你解决了,自己也更有经验了,如果是差一个逗号之类的问题,那么,不打死你才怪~

2、技术更新太快了

你在学校可能是个佼佼者,总是受人追捧,但是有可能一毕业你所学的技术就又更新了,如果你不继续保持学习,过个1~2年,你可能就被淘汰了。

就像你在学习HTML,而别人可能已经早就会HTML6/7/8了,而在这个学习过程中,你遇到问题难道会问“谁懂HTML8这个XXX么”

我天,HTML8才出来,会的人不多,好吗!

其他原因就不多说了,单从这两点来说,作为一个IT人就不该成为一个伸手党!

好吧,如果你执意要做一个伸手党,也可以,因为直接利用别人的经验,可以节省很多时间和精力,

这也是无可厚非的,我们都有做伸手党的时候,关键是有那么一撮人,可够气人的!

他们会问:

“没有项目经验怎么办”

“新出来的那个python貌似很火,但是不会怎么办”

“课堂上也认真听讲了,网上还自己找视频看了,怎么还是不会XXX啊”

之类的问题,问这类问题的人,简直绝了,这不是明知故问嘛!!

没有项目经验,你不会多做一些小项目啊,谁告诉你项目经验只要大型企业项目啊

python很火,你不知道网上找课程、找资料学啊,你问别人就能立刻明白啊

谁告诉你编程是看出来的啊,学IT要多动手,动手,动手,懂吗

不动手练习实践,看再多也等于零,就好比你看再多恋爱宝典,不自己去找个女朋友谈个恋爱,一切都是空谈,纸上谈兵很容易的!

吧啦吧啦,这样的吐槽,要多少有多少,有时在不开心的时候看看这个问题也是挺有趣的~

前面吧啦吧啦说了一大推有的没的,下面来说说正儿八经的事吧,就是“做一名程序员需要学哪些知识”

3、两大学习能力

1)、学习能力

关于为什么需要学习能力,前面已经吐槽了,我想理由大家也明白了,这里就不再叙述了;

只是再次提醒一下,一定要保持随时学习~

2)、动手能力

动手能力还需要_嗦一下,动手是学习编程的最短途径,如果你有看不懂的地方,可以马上动手 *** 作一下;

如果你想自己做个小玩意儿玩玩,不要等着明天,马上开始动手做做;

如果你想学新技术,最好的就是动手去写写

其他关于为什么要多动手啦之类的问题,就不再叙述了,有这个疑问的人,自己打自己一耳光再说吧!

4、基础学习

什么是基础学习

比如你学的java,那么网络基础知识要略懂,计算机基础要略懂

java语法你要懂吧,java三大框架要懂吧,J2SE要懂吧,JDBC要懂吧,设计模式要懂吧

简单来说,就是你把Java相关的知识都至少要了解或者知道,对于重点核心内容,要通透最好。

具体的就不再叙述了,看下图:

java编程脑图

5、常用工具的掌握

什么是常用工具

上图可以看到,你的编程开发工具(VIM/IDE/Eclipse),无论你用的哪个,都需要熟练掌握;

你的版本工具,现在常用的是git,至少要学习使用最基本的吧,当然还有很多其他的(markdown/数据库的使用等等),你常用的工具都需要掌握才行。

git常用速查表

vim常用速查表

6、技术方向的选择

前面的技能掌握之后,那么恭喜你,你至少可以打打小怪兽了(反正打小怪兽就使劲把你所学的技能使出来就可以了,基本小怪兽就挂了)。

也可以作为应届毕业生应聘啦,但是这远远不够的,想要打倒BOSS,可不是随便把你所学的技能发射出来就可以的,还需要修炼更多专项技能才行。

感谢大家阅读本文章,本文由java培训机构小编转载自网络,版权归原作者所有,如有侵权请联系我们进行删除,更多精彩内容请关注Java培训官网

 学习android注意事项:

1,android技术准备实训目标:通过这部分的学习,学员能够达到学习android开发课程的基本要求。熟练使用Java语言,实现GUI桌面应用程序的开发JDK的安装和配置开发工具Eclipse34安装。实训知识点: Java标识符、数据类型流程控制、面向对象编程、继承、抽象类、接口、包、异常、IO流、Swing、游戏算法介绍

,2,android入门实训目标:通过这部分的学习,学员具备了android程序开发的能力,能独立完成常用的应用软件。实训知识点: Android系统概述和内置工具、Android 开发环境的搭建和启动模拟器、建立android工程、Android应用程序开发及运行编译结构、API参考文档的使用、使用am工具启动android应用程序、部署应用到真实手机、控件和事件编程、菜单编程、对话框编程、视图组编程、各种布局的使用、Grid视图组、List视图组、使用Tab组织UI

,3,android进阶实训目标:通过这部分的学习,学员的android开发能力会有大幅提高。等传感器编程、android优化和性能提高。实训知识点及案例分析:Service概述、创建和启动、生命周期、权限及跨进程调用;广播的概念及生命周期、广播发送的权限广播接收器的实现、接收SMS短信、播放MP3;内容提供器的概念作用和常见接口、使用内容提供器实现增删改查、内容提供其权限和创建内容提供器、SQLite数据库添删改查 *** 作、使用list视图组显示数据;Widget概念和制作方法、Widget各种XML描述文件详解2D图形图像及文本、Gallery UI编程、GridView编程、OnDraw编程、drawable编程基本动画编程技巧、Tween动画、Frame动画、TimerOpenGL ES的2D和3D绘图GPS服务、GPRS网络使用、android蓝牙开发、android方向、加速表、光线、磁场、临近性、温度

4,项目实战实训目标:本阶段让学员开发,设计Android网上购物系统,其中包括Android图形界面开发,Android声音,Android网络通讯,和服务器后端进行通讯交换数据。

Android基础知识:

一、Android开发的分类:

1、Android客户端应用程序

如新浪微博、网银客户端、凡客、淘宝客户端,快盘客户端。Android在这里的应用还是界面层的东西为主。核心还在WEB。客户端界面很重要,用户体验度很重要。从应用需求上来讲,几乎大一点的网站,都需要有手机客户端程序。

2、Android通用类程序

如基于LBS(基于位置的服务)的应用 (这类一般会嵌入到客户端应用程序中),流媒体播放应用。由于移动设备的方便便捷、3G、4G网络的发展,这类应用有不错的前景。

3、Android游戏开发

需要掌握的游戏引擎LGame,游戏框架等。手机上的游戏会是一大块内容,有前途。

4、Android底层开发

需要掌握C、Linux等较底层的东西,发展方向应该是驱动、协议开发,嵌入式开发。

开始学习了解一般从界面、控件开始,这也是大部分人认为简单、比较快上手的原因。学习一段时间后,自己可以定一个方向发展。

二、Android学习需要哪些知识点

1、Java基础知识

J2SE:Java基础类(lang包,IO包,util包(集合框架),面向对象,多线程,网络编程)

2、J2EE知识

如果你想从事的Android客户端应用程序的开发,这部分知识是必备的。显然Android客户端只是做的数据的请求、展现,所需的数据在服务器端。

技能点:Tomcat(Weblogic),XML解析,JSON解析,JSP/Servlet。了解SSH。

3、Linux、C语言知识

可以作为你后续发展需要了解的。

在论坛上、QQ上看到不少童鞋Java基础还比较欠缺,就开始搞Android了,当然就问题多多。学习热情可嘉,但需要打一个好的基础,有一个好的学习路线。

三、Android学习比较好的资料

1、应该说现在市面上的书,入门的还是不少,但一般现在只讲了简单控件的单个用法。

《Android开发范例大全》,《Android应用开发详解》可以参考。想了解游戏的话,可以参考《Android20游戏开发实战宝典》。

2、Android学习视频,也基本上停留在讲简单入门,单个控件用法为主,这方面远不及Java,J2EE,SSH的视频那么丰富。应该讲,你看完了这些,离开发还有很大一段距离。而且,这些视频在讲课方法上不如一些Java的好。现在的视频资料太丰富,从哈佛、斯坦福的课程,到IPHONE开发课程,都有。但全部跟着视频完成所有的学习,有很长一段跟要走。

3、Android的论坛比较多,论坛的缺点就是什么东西得自己一个个查找、去等。自学是一个艰苦而漫长的过程。对你的锻炼和提升也最大。自学有一个缺点,就是容易迷失方向,一个知识点你永远不知道要掌握多深,相关的应用是什么。自学就好比像你一个人在走一条目标很远,前面叉路很多的暗道一样。

4、培训机构学习。如果你时间上允许不失为一种好的选择,可以快速入门。互联网产品(时代)有一个重要特点,就是拿资金换时间。如果能快速入门,到这个行业去发展,就比自己慢慢学习要好得多。毕竟现在Android开发太热了。对开发人员的要求也会逐渐提高。(如既要求能做Android开发,又做IPHONE移植开发)。

《Windows游戏编程大师技巧》这书的代码就不要看了。。。都不是面向对象的。。但思想还是好的。

游戏编程不一定就是DX独大,一般都要兼容OPENGL的。你也可以从OPENGL上学。书实在是太多了。不过最好是看国外的写的书。。国内的书都是骗钱的。。特别是“房晓溪”这个人的书。。

我推荐几本

初学的2D

《Visual C++游戏编程基础》

《Visual C++经典游戏程序设计》

一般现在都可以直接学3D,学好3D,2D就不在话下了

《nehe教程》这个是只有电子书,很好的OPENGL教程,让你对3D图形更感兴趣呵呵

《OPENGL游戏编程》,作者徐明亮,感觉算国内比较好的书了

《3D游戏编程大师技巧》,这书跟《Windows游戏编程大师技巧》有点联系,不过不多,反正也是看思想,代码也不要看了。

还有好多书可以去电驴上载。。。太多了,游戏中的每一个部分都可以单独写成一本书。。以后还要更细化的。。祝你成功,为中国游戏做贡献。

以上就是关于自学C语言教程全部的内容,包括:自学C语言教程、做一名程序员需要学哪些知识、新手刚刚学习android,推荐android开发的入门教程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9969945.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存