当前位置:首页 » 编程软件 » 计算机基础与编程

计算机基础与编程

发布时间: 2022-08-03 14:49:23

A. 学习计算机编程需要什么基础知识

我觉得应该根据你的工作需要或者说你的发展方向而定。基本上两大类吧:C/C++和java。比如,如果你要做企业级应用的你应该学习Java和C#;如果你想做嵌入式,那么应该学好c语言;其他情况下,在你不知道要做什么之前你可以选择学习C/C++。学会这两大类中的一类,对于你学习其他语言都将是比较轻松,包括脚本语言,动态语言…… 1、我的入门是从学习C语言开始的(其实课程是C++),这是我们学校的公共课,我上课比较认真(虽然老师讲得很差,而且一段时间后,我就发现自己的基础掌握比她好,当然理解深度没她好),因此,我认为对于完全没有基础的人而言,听别人讲比较容易入门。当时的教材是学校自己编的,挺烂的。 建议一(以C/C++为例),对于刚想进入编程的人(就是从来都没有接触过编程的人),最好是听课的方式(自己看的话估计要很慢,而且很痛苦),可以找视频或者培训等。C语言推荐入门教材:谭浩强的C语言,最新版是第三版,不过第二版应该也可以了(蓝色的)。说明一下:坚决不同意直接看K&R的《The C programming language》,这本书绝对不是初学者可以看懂的,里面讲语法的并不多,语法都是合在程序里面讲。不过这本书非常好,入门以后一定要看的一本书。 当然可以从C++直接入门,C++之父强烈推荐从C++直接入手。C++推荐入门教材:钱能的C++(红色的,清华大学出版),这本书第一版不是ISO C++,不过比较经典,作者现在也出了第二版了,第二版好像不是太好。国外的最好的入门教材据说是:《Acclerated C++》作者是Koenig和Moo夫妇,非常厉害。他们的着作还有《c陷阱与缺陷》《c++沉思录》。《Acclerated C++》这本入门的书我没有看过,我觉得还是先找本国内的书好好看,看的差不多了,国外的经典书籍随便看就会觉得很有味道,否则你可能会很受打击。 入门的书至少要看两三遍(要彻底理解哦 ):)。如果是C++,我建议后面类的部分至少要理解三到五遍。说明一下,c++模板的部分可以先不用看,如果有兴趣的话,等把c++学的差不多了,我觉得可以把模板、STL、泛型编程结合起来学习,这个又是一个很大的工作量了,又得下很大的功夫。所以说,C++博大精深啊。 建议二、学习过程中要结合简单的算法,像冒泡还有类似c语言程序百例这样的小例子做做;更进一步应该做点大一点的项目,最好是控制台程序。或者你已经着手学习win32、MFC或linux,你也可以结合平台做点小的项目。 那时我其实并没有考虑那么多,因为我不是学计算机的,因此我就把参加一些计算机之类的考试当作学习目标。我当时其实C++语言基础已经很不错了,但是上机实践很少(那时我没有电脑),因此参加省计算机二级,全国计算机三级和全国计算机四级考试,结果上机都没有通过。我很郁闷,二级的时候是我不知道怎么样进那个DOS界面把题目调出来,三级的时候是很快就编好了,也通过运行了,可是成绩出来却不及格,四级的时候是编好了,可能是我那题目比较难,好像用了两次循环,结果那破机器竟然承受不了。后来一乱就毁了(当然主要是上机太少了)。不过我那些上机都没有去补考。二级和三级的时候是自恃水平已经远远超过考试要求了(^_^,见笑了,可能是因为等级考试还是比较简单的),四级的时候则因为自己已经通过高级程序员考试,觉得补考上机好像没必要。(我高程和四级都是在2003年考的)。 建议三:定位学习方向(见附录一)并好好学习计算机基础知识。在你还不确定学习方向,或者你还在大学本科期间,那么我认为应该先把计算机的基础知识好好学习一下。我认为计算机必学的基础课程而且要精学——首先是数据结构,其次是操作系统、软件工程,数据库。这四门课不管你将来想从事哪个方向的基本上都会用到。当然,有时间的话,其他基础课都是应该掌握的,离散数学、组成原理、体系结构、网络、编译原理甚至跨学科的。方向是很重要的,因为知识其实是无限的,一个小小的领域就够你研究很久了。本科生可能还没有什么方向的感觉,但是到了研究生你一定要清楚自己到底想要做什么,要往哪个方面发展,不要盲目学,瞎学乱学,否则最后可能看似什么都会,其实什么都不会。 我也曾经学习过Java一段时间,这篇文章既然是谈编程语言的入门学习,我也简单说一说。因为有了比较C++扎实的语言基础,所以Java学起来比较轻松。我先找了国内一本薄薄的教材很快看了一遍(几乎都理解,但是只看了一遍),空闲的时间配合清华张孝详老师的java视频。以后其实才算我真正要开始入门JAVA的学习,我用了是《core java》中文第六版(本来想用候捷翻译的第二版的《Thinking in Java》,发现被同学弄丢了),这本书我差不多用了20天才把里面的知识都搞懂,当然包括程序风格的模拟,最重要的时我把有关GUI编程的那三章里面的程序例子几乎可以默写出来(当然,那是因为我理解了,其实这样就变成了我的知识了),里面的API我也记得差不多了。(说明:Java里面的GUI编程没什么用处了,建议大家先跳过,GUI不是Java的长处,如果以后需要的话再查手册或者再记忆学习)。 其实学习了C++以后,学习Java是比较容易了,但是建议不要两种都学啦,他们的用途是不一样的,你应该熟悉其中一种,更重要的是熟悉其应用领域所需要的专业知识甚至平台,以及使用他们的企业,有创业计划的还应该考虑一下他们的应用领域,最重要的是思考他们的潜在的应用领域。 对于初级的学习就讲到这里,接下去的学习其实都是高级部分,先不介绍了,因为:一、我自己都还没有学懂,这里乱吹会误人子弟。 二、高级东西的学习很多,有很多选择,又需要很多繁琐的知识,可能也一下子没办法讲清楚。

B. 计算机和编程的理论基础是什么

理科大学生学计算机,应该学什么? 对于大学生来说,计算机是一个非常重要的1、计算机数学基础计算机数学基础是计算机专业重要的基础课程,它是学习专业理论

C. 零基础编程学什么

零基础编程学习内容如下:

第一:python基础语法阶段。Python基础语法阶段的学习难度相对比较小,但是如果计算机基础比较薄弱,需要多做一些实验,以便于尽早建立自己的编程思想。学习Python的过程中除了要多做实验之外,还需要重视多与技术专家交流,可以充分利用互联网资源。

第二:机器学习阶段。机器学习不仅是大数据分析的两种主要方式之一,也是人工智能领域的六大研究方向之一,所以学习机器学习还是比较重要的。在掌握Python语言之后,可以直接学习机器学习领域的一些经典算法,然后通过Python语言来完成算法实现和算法训练等过程,进而逐渐掌握机器学习的步骤。

第三:大数据平台阶段。学习大数据知识一定离不开学习大数据平台,初学者可以从Hadoop、Spark开始学起,虽然内容相对比较多,但是可以参考的学习案例也比较丰富,所以并不会遇到太大的学习障碍,对于学习能力比较强的人来说,也完全可以自学。

建议

重视基础,才能走的更远很多人觉得学习编程只需要刚才我说的那几步,学习语法、写简单demo,然后学习高级特性,最后着手做项目就可以了。但是这只是最初级的程序员,离开这门语言,他们可能就什么都不剩下了。

没有计算机基础的支撑,他们不明白计算机网络的原理,不知道为什么要考虑网络编程,不明白为什么要考虑DNS、负载均衡,不知道操作系统的原理,就不能够理解服务器出问题时的根本原因,无法排查,不懂得数据结构和算法,就不明白为什么有的程序是这么写的,有的集合类是这么设计的。

重视基础,是每一个程序员都要做到的一点,离开基础,其他的东西都是空中楼阁,基础不扎实,你连谈论技术时也不会有底气,更别说谈架构、谈业务场景了。

D. 零基础怎样学习编程 应从哪里入手

计算机基础、网络基础,这些先基本了解一下,然后选择一个编程技术方向,现在热门的编程岗位就是Web前端、Java,如果是为了就业可以考虑这两个技术方向,如果是对编程感兴趣,可以学Python,语法简单,可以迅速做一些小项目。
"编程"就是我们为了完成某项任务, 将解决问题的步骤, 用计算机能够理解的语言写成指令, 这就是"编程". 而后, 计算机会根据这些指令一步步执行, 最后完成任务.
编程语言有很多种,只需要精通一门编程语言或者说一个技术方向就可以了,可以结合自身,选择一门自己喜欢并合适自己的。

HTML5+JS(web前端开发)
什么是前端?在网站上看到的一切图片、文字、视频、都是前端写的。
目前web前端开发还是热门编程方向,这门语言对于零基础的学员来说学起来难度不大。

Java
java仍然是市场上最流行和最火爆的编程语言,常常跟企业联系在一起, 因为具备一些很好的语言特性, 以及丰富的框架, 在企业应用中最被青睐。

Python
Python是动态形的灵活的解释性语言,从软件开发到Web开发,Python都有在被使用,因为他的解释性,适合轻量级开发,Python是很多新手会选择的编程语言。

C语言
C语言,语法较多,时间相对还是比较多的,所以也可以考虑从C语言入手,因为打好编程基础,以后再学其他语言会很快上手。如果是快速就业,不太适合C语言

C++
和C语言一样,语法有一定难度,C++是一种最广泛支持范式的编程语言,。当然如果C学的不错,C++上手也会快。

E. 学习编程需要什么基础

学习编程其实不需要什么基础,只要可以正常操作电脑就可以学习编程,但是如果想往高深的技术研究就需要学习很多东西,时代咋子进步很多东西都有千丝万缕,所以很多编程需要都是相通的。

3、知识经济时代给我们带来了无限的机遇。要真正掌握计算机技术并在信息技术行业有所作为,具备一定的编程能力是一个基本条件和要求。

4、为基础编程打下坚实的基础,应总结如下几个方面,数学基础从计算机发展和应用的历史来看,计算机的数学模型和体系结构是由数学家提出的,最早的计算机也是为数值计算而设计的。 因此要学好计算机必须有一定的数学基础初学者应该有高中水平。

F. 计算机基础知识都包括哪些

基础知识重要,但是具体来说,哪些点重要呢?
今天我就试图总结一下,也欢迎大家补充。
信息的表示和处理
计算机如何表示整数:有符号数和无符号数,尤其是如何用补码表示负数,数字的取值范围。
计算机如何表示浮点数,为什么小数的二进制表示法只能近似表示十进制小数。

数值的转换、移位

这几点非常重要,因为几乎所有的编程语言都有数据类型,而最基本数据类型必然包括整数和浮点数。
搞不清这些表示和运算,在编程中就会遇到一些稀奇古怪的问题。
从汇编层面理解程序的执行
顺序、分支、循环、函数调用、数组、结构体等在汇编层面是怎么实现的,寄存器和内存是怎么使用的。
理解了这些其实也就理解了冯诺依曼计算机体系结构,这是计算机学科一个基础性的东西。
知道程序在底层是怎么运转的, 对于学习各种虚拟机有很大的帮助,比如JVM,它要解析执行的是字节码,字节码本质上要表达的就是这些东西,只不过有所扩展。
理解了栈帧,就能理解函数调用的本质,递归,以及尾递归的实现。还有安全相关的概念,如缓冲区溢出这个臭名卓着的漏洞及其防范办法。
进程和线程
程序员必备的知识,不了解这个,简直是无法编程。
需要掌握进程的地址空间,代码在哪里,堆在哪里,栈在哪里。
要准确理解进程和线程之间的关系,为什么说进程是拥有资源的基本单位, 线程是CPU调度的基本单位?
进程切换和线程切换之间的区别和联系。
他们是如何创建,执行,有哪些状态,状态之间的转换。 由此会涉及到并发和并行,线程之间的竞争和合作。
锁的本质(硬件层面),乐观锁,悲观锁,死锁等问题。
线程的实现方式,用户级线程和内核级线程的对应方式。
在编程的过程中,有些知识点会直接使用,如多线程编程,锁。 还有一些概念能用到很多地方,例如CAS,不仅仅是编程语言的概念,还能在更新数据库时使用。再比如你理解了线程的实现方式,迅速就能掌握go语言中并发的手段:goroutine。
存储器的层次结构
Tomcat用了多线程执行请求,Redis用了单线程来处理请求,Node.js也用了单线程来,这是为什么? 秘密都在存储器的层次结构。
人类制造的计算机设备之间有着巨大的速度差异:
总之,CPU超级快,内存比较快,硬盘非常慢,网络更慢, 这个速度差异是IT行业的一个核心问题,人类想了很多办法试图去弥补这个差异:多线程,缓存,异步,多路复用,硬件层面的DMA。
记着下面这张图,每当你遇到某个软件的特性的时候,想一想和它有什么关系:

数据结构和算法
它的重要性我罗嗦过很多次了,不用再重复了, 我就举个最简单的例子: 理解了B+ Tree才能理解MySQL的InnoDB的索引,理解了索引才能更好地优化查询,对吧?
计算机网络
现在的程序基本上都是网络程序, 所以这也是一个必备的基础知识,学习计算机网络的一大好处就是和工作直接相关,能直接使用,比较有动力。
HTTP协议肯定跑不掉,TCP,UDP也得会,尤其是TCP可靠传输的原理:如何在一个不可靠的网络中进行可靠的传输, 这是无数前辈总结的经验,一定得掌握。
要理解什么是通信协议,也许某一天你自己就需要定制一个协议来传输数据。
分组交换是什么意思? 协议分层的本质是什么? 什么叫无状态的协议?
Socket相关的编程更是重点,尤其是涉及到服务器端高并发的时候,如何维持和处理这些海量的socket, epoll等技术就得上场了。
还有非常重要的HTTPs的基本原理,也是网络安全的精华所在:对称加密,非对称加密,消息摘要,数字证书,中间人攻击。
数据库
不多说,关系模型、范式、SQL、索引、事务等知识都得掌握,尤其是要了解他们的实现方式。
分布式的基础知识
这些已经偏向应用层面了,但是现在很多系统都是分布式的了,分布式就变成了一种基础知识。
系统通信:RPC, 消息队列等
负载均衡的原理
CAP原理,BASE原理,幂等性,一致性模型(强一致性,最终一致性.....)和相关协议(两阶段提交,Raft,Paxos......)
数据分片:取模算法,一致性Hash,虚拟桶
基本的设计思想
下面这几种设计思想对我影响很大,需要大家特别注意。但是掌握起来却很不容易,需要在实践中不断地体会:
正交:各个概念之间可以独立变化
抽象:抛弃细节,找到本质和共性
《深入理解计算机系统》一书中提到:“指令集是对CPU的抽象, 文件是对输入/输出设备的抽象, 虚拟存储器是对程序存储的抽象, 进程是对一个正在运行的程序的抽象, 而虚拟机是对整个计算机(包括操作系统、处理器和程序)的抽象。 如果你对这句话透彻理解了,说明对计算机系统的认识已经很深刻了。
分层:我只想和我的邻居打交道, 如网络协议,Web应用开发。
分而治之:大事化小,小事化了,架构设计必备。
关键点来了,怎么学习呢?
我原来的方式是先看书,看了很多书,数据结构,操作系统,汇编,网络...... 这种办法的最大问题就是枯燥(嗯,那时候还没有码农翻身这样用故事讲解技术的文章)。
理论多,实践少,很多知识点体会不深, 等到参与的项目多了,Coding多了,这些知识点才慢慢地鲜活起来。
一种更加有效的办法是从工作中用到的知识点出发,从这个知识点向外扩展,由点到线,由线到面,然后让各个层次都连接起来,形成一个立体的网络。
切记,学习是一个螺旋上升的过程,想要上升就得深度思考,多问几个为什么。
比如工作中用到了Redis,你在学习过程中发现这个Redis用了单线程来处理读写请求,为什么要这么做? 对于成千上万的请求它是如何处理的? 然后再联想一下别的软件:Tomcat为什么不这么干? 想回答这些问题,需要发掘很多基础知识。
这样做的次数多了,积累到一定程度,量变就会引起质变,整个系统就被你看透了,你的知识又扩大了一圈,更多的疑问出现了......

G. 计算机编程如何入门

计算机编程最重要的是入门,如果入门的时候有一个好的学习方法及思路,有比较扎实的编程基础,对今后的学习都是十分有帮助的,最重要的是学习计算机编程前,需要了解计算机语言有哪些,选择一门语言进行系统的学习。目前,计算机语言分为JAVA、python、html5、C++等,建议你可以选择JAVA这门语言,比较热门,也是需求量、前景较光明的语言。


把一种计算机语言掌握后,想要学习别的语言也是比较简单的,因为计算机语言都是互通的。还有很多人说自己的基础很差,高中毕业什么的。其实这个并不重要,比如说英语,在计算机语言里所用到的单词量很少,而且都是常用词,经常使用就记住了。


当然,如果要看原文资料或者帮助的话,专业词汇比较多,不过在老师、同学的帮助下,也是没什么太大问题的。至于数学的学习,只是培养一个逻辑思维能力,在初学编程的时候影响不是很大。


学习计算机语言一般分为两种方法,一种是自学,一种是报班学习,对于零基础的学员建议报班学习,学习周期根据个人的实际情况而决定,一般在6个月到1年之间,如果基础不扎实,只能多加练习。


关于计算机编程的学习可以到达内了解一下,达内目前已在北京、上海、广州、深圳、大连、南京、武汉、杭州、西安、苏州、成都、沈阳等70个大中城市成立了342家学习中心,拥有员工超过10000多人,累计培训量已学员已达100万人次。


达内集团凭借雄厚的技术研发实力、过硬的教学质量、成熟的就业服务团队,为学员提供强大的职业竞争力,在用人企业中树立了良好的口碑。

H. 计算机编程入门知识

个人建议你学C#。一般计算机专业学习的是C语言,但是初学者使用这个语言只能编写出一些基于字符的程序,也就是像DOS命令一样的程序,要编写出有窗口、按钮、图像的程序有很长的路要走,C语言对于初学者来说不够直观,也挺挫败信心的,觉得学了那么久还编写不出一个能展示给别人看的程序。更不要说汇编了,更加不直观;而C#就方便很多,你可以很快写出有窗口,有图形的程序。另外一点就是,C#语言的编程环境比较完美。具体来说,你只要下载安装Visual C#,就可以开始编程了;而且错误提示比较人性化,就是说你写错了,它会提示你,否则的话,你找老半天都不知道错在哪,也会觉得很挫败。
当然,你会犹豫是不是学其他语言更好呢?其实争论语言的优劣是没有必要的,因为他们专门为不同的目的而设计,合适的才是最好的。C#就很适合你,你可以很快写出一个有模有样的程序,体会编程的乐趣。
C#同时也教会你很多基本的编程概念,你以后学习其他语言会快很多。学好C#以后,你可以选择,进一步学习C#,因为C#本身也是很强大的语言,能探索的很多很多。也可以根据你更明确的目标,接触其他语言。如果你想对计算机有更深入的了解,愿意投入较多时间,或者有兴趣参加比赛,可以学C/C++;你想开发手机程序,可以学习Java,等等。。。
最后,我看了一下C#的教材,觉得《C#经典入门》这本书不错,可以去买一本。第一章10页左右,可以跳过,讲的过于抽象了。祝你学习愉快!

热点内容
用什么来配置溶液 发布:2024-05-10 05:24:39 浏览:830
压缩车多少钱一辆 发布:2024-05-10 05:13:22 浏览:307
阿里巴巴最快的存储引擎 发布:2024-05-10 05:12:39 浏览:441
vx编译器 发布:2024-05-10 05:05:53 浏览:411
炸出脚本 发布:2024-05-10 04:57:26 浏览:638
javasejavame 发布:2024-05-10 04:45:50 浏览:892
电脑配置怎么看生产年份 发布:2024-05-10 04:41:34 浏览:125
常用数据库类型有哪些类型有哪些类型有哪些 发布:2024-05-10 04:41:28 浏览:232
6爷源码网 发布:2024-05-10 04:41:28 浏览:41
苹果微信反编译朋友圈转发 发布:2024-05-10 04:40:44 浏览:221