美文网首页
计科专业新生须知:什么才是编程?助你进阶大牛的必经之路

计科专业新生须知:什么才是编程?助你进阶大牛的必经之路

作者: 魔公子世无双 | 来源:发表于2019-12-23 21:48 被阅读0次

           很多的同学大一时就想成为编程高手。在百度上提问了多次,也找过很多的资料,得到的答案无非是自学C语言或java c++等语言,学完大学的课程发现此类回答对于编程零基础者毫无帮助,往往会使零基础者丧失信心。因此写下这篇经验,供大家参考。

          什么是编程?  编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。下面是重点,是零基础者需要知道的。

          编程分为硬件编程和软件编程。

          先由硬件编程讲起(零基础者必须了解,了解有助于认识编程,)中央处理器又叫cpu,(这里用大白话讲述),cpu有很多向外的线 (术语叫做引脚),它们中有一根线我们以它作为电压0参考,其余的线有两个功能:1.读出这点接入的电路的电压,2.输出电压我们又定义电压U,以U为界限将读取输入的电压分为0,1。在PC,笔记本电脑上,1指电压低于-12V,手机里1指电压高于3V,其他情况为零。对于一块1600万色的屏幕,它可以显示16777216(就是24个2相乘)中颜色,24根线每根线电压为0或1,那么刚好有16777216组合,屏幕会根据每根线的电压大小判断该显示的颜色,对1080P的屏幕有1920*1080个点即2073600(小于21个2相乘),21根线的组合可以涵盖屏幕上的点,显示时,21根线告诉屏幕那一个点亮,24根线告诉屏幕亮什么颜色,当21根线代表的点不是这一点,这一点颜色不会变化,拿小米电视来说1s一个点最多可以改变30次,超过24次人眼就感觉不出来。

          下面是大家关心的,软件编程,大多数人想编的是在windows上运行的。

          现在软件编程包括windows编程,安卓编程,OX编程,linux编程。先讲一下原理。拿windows编程来说,微软公司用C语言编写了能使intel amd的cpu驱动显示器显示的程序,就是windows操作系统,你要编写的程序写完后告诉windows,windows把你写的程序当作想点数标一样的反应。微软自己定义了一套语言,但是开发者学习成本有很高,C语言模拟器又满足不了它的要求,于是微软开发了C#(C#有着与C相同的结构赋值规则),它是专门为windows设计的语言,又是windows开发环境,C#最大化的减少windows开发难度,同时增大不同人间的协作性,WPS、AE、QQ影音都是用C#编出的,只要你学过C语言和C#你就可以在windows平台开发。最后说一下JAVA,随着图形界面的流行,各个系统操作日益相同,如windows,linux,MAC OS,java应运而生,它可以把你写的程序翻译为相似平台的语言,从而在各个平台运行。初学者自学不要碰JAVA,只有学过C语言,C#你才能看的懂。

           最后总结一下:

           编程首先要学C语言(可以不学C++),数据结构(当编写大程序如wps,学过数据结构能增加运行速度,不学的话也可以)这两者可以让你明白编程的基本规则。

           如果你想编写硬件系统,如单片机,windows,安卓(编是一个人是不可能的但该可以),那么你学过C语言,数据结构下一步你要学习ARM,或51单片机,对ARM,或51单片机编程与硬件编程原理相同,之后你就可以看操作系统底层。

           如果你想编软件,你要看情况,编windows你要学C#,学完就可以了。编安卓你要学先学JAVA,才能接触谷歌专为安卓修改的JAVA语言。编iOS ,mac os你要学习Object-C。

           最后给大家推荐参考书:

           C:《c程序设计》谭浩强 没商量

           数据结构 

           《数据结构》  吴伟民,严蔚敏 (适于掌握重点,考试时用)

           《数据结构与算法分析》 Clifford A.Shaffer (适于练习时使用)

            因为没有专注于Java Object-C开发 所以没有好的自学书推荐

            最后推荐学有余力者看一下《数字逻辑电路》尽量别看《数字电子技术》因为前者偏重于具体理论,会告诉你编程背后的逻辑思维,后者则偏重于数字逻辑电路的物理实现。举贤不避亲,推荐我的老师写 得《数字逻辑电路》,毛文林,鲍家元,张琴著。

            以上内容为爱好者自学,如果你要靠编程混饭吃,那么以下内容才是重要的:

           C++一个重要的部分就是模块化设计,一个人往往只涉及一部分就可以了。现在招聘至少需要C语言,和数据结构知识,如果要应聘,必须要学好这两门课。

           另外,《算法导论》成为程序设计高手的必修课,真正的编程高手不是实现了什么功能而是以最少的资源实现。  

           我自己也是从最基础的C语言开始准备了一些资料,有需要的或者有c/c++等编程相关问题不理解的可以私聊解决。

    相关文章

      网友评论

          本文标题:计科专业新生须知:什么才是编程?助你进阶大牛的必经之路

          本文链接:https://www.haomeiwen.com/subject/tpwznctx.html