欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

科班计算机it从业者,都学些什么?

程序员文章站 2022-03-21 10:42:48
...
本科其他工科毕业的,转行选择去培训班,学出来的PHP,JAVA,IOS,C 等等程序员,和接受过大学四年本科教育的有什么区别?

ps:本科计算机、软件工程专业的学php、java,ios吗?

回答请先说明你的专业是什么

回复内容:

软件工程-信息攻击与防护方向


学校里没有学过objective-c、php。学校里教html(捂脸)、C、C++、C#.NET(现在想想学了不少带C的)、Java。


比起培训班的区别还是有些一些,比如常用的数字加密技术(对称、非对称,真的很常用呢),数据库设计,复杂子查询(还是有点学问的),计算机网络(基础学科有没有用,看你心情了),操作系统(恩,也会用到的,不然很多东西很难理解),网络信息攻击与防护(不学这个你根本不懂目前的网络环境有多恶劣,你也意识不到如何保护用户的隐私),系统级编程,编译原理等就不一一列举了。


其实培训班上了那些课我也不清楚。不过我刚列举的应该很少有培训班专门培训吧,毕竟费力不讨好。数据结构与算法据说有在教,但是不清楚到什么程度,不知道能翻转二叉树不(雾)。


我大学本科课程如下:


计算机系统导论Introduction to Computer system

C语言程序设计C Language Programming

程序设计基础Programming Fundamentals

离散数学Discrete Mathematics

密码学 Cryptology

面向对象程序设计导论(双语)Introduction to Object-Oriented Programming

数字逻辑:应用与设计Digital Logic: Application and Design

数据结构与算法Data Structures & Algorithmic

数据结构与算法课程设计Practice in Data Structure & Algorithmic

计算机体系结构Computer Architecture

操作系统Operating System

计算机网络(双语)Computer Networks

软件工程(双语)Software Engineering

软件工程课程设计Practice in Software Engineering

数据库系统(双语)Database System

系统级编程(双语)System Level Programming

软件架构Software Architecture

专业英语Professional English

艺术鉴赏与人文知识Artistic Appreciation and Humanistic Knowledge

离散数学应用实践Paratice in Discrete Mathematics

C++语言程序设计C++ Language Programming

微机原理与接口技术Microcomputer System & Interface Technology

三维造型与动画技术3D Design Technique

人机交互概论(双语)Introduction to Human-Computer Interaction

基于.NET的开发技术.NET Based Development Technology

计算机图形学Computer Graphics

软件开发环境与工具Software Development Environments & Tools

数字图像处理Digital Image Processing

游戏编程技术-ⅠGame Programming Technology-I

游戏编程实践-ⅠPractice in Game Programming-I

UNIX操作系统UNIX Operating System

编译原理Compiler Principles

多媒体技术Multimedia Technology

嵌入式系统Embedded System

网络与信息安全技术Network and Information Security Technology

信息安全产品开发实践Practice in Information Security Products Development

分布式系统与互联网(双语)Distributed System and Internet

软件过程Software Process

软件需求分析Software Requirements Analysis

分布式系统与互联网(双语)Distributed System and Internet

网络工程Network Engineering

计算机资源管理程序设计(双语)Computer Resource Administration Programming

信息安全产品开发实践Practice in Information Security Products Development

模式识别Pattern Recognition

无线网络技术Wireless Network Technology

软件系统形式化验证(双语)Software System Model Checking

软件项目管理(双语)Software Project Management

软件质量保证与测试(双语)Software Quality Assurance and Testing

网络信息攻击与防护Network Information Attack and Defence

中间件技术Middleware Technology

计算机科学与技术专业。

嗯,这就是题主说的科班出身了吧。

C,C++,JAVA,8086汇编,计算机组成原理,操作系统,编译原理,微机原理与接口技术,电路与电子技术(模电),数字逻辑(数电),数据结构,数据库原理,EDA技术,算法分析与设计,计算机网络,面向对象系统分析,软件工程,windows编程(Qt),数字图像处理,计算机图形学。

微积分,概率论,离散数学,线性代数。

对于计算机,我们这个专业从最根本的数字逻辑,学到了高级语言,php android html 并没有教过,培训班出来的人做的工作我们这个专业出来学学也能干,但是我们能干的不是培训班能干的。答主并没有贬低php的意思。毕竟培训班出来写php的很多都是辣鸡,真正的大神,咳咳。

相信题主已经有自己的看法了。。


(深夜答题,默默的求个赞!!!求个感谢红心) 计算机科学与技术

学的课程上面很多人说过了,自己学的也水就不说了。

当初没决定做程序员,因为对第一个程序hello,world,内心吐槽是,你特么这什么鬼。
然后玩了一段时间硬件,混迹电脑城大半年,以装机价=成本价+200的价格帮助了不少同学,也就是大家口中的卖电脑的。
我应该就是,4年里的水货代表,上课基本在干其他事情。
但是我跟那些非it专业的比起来,学技能会快,跟it认真学的那一帮人就差远了。
其他专业跟我的区别就是差了觉悟和对编程的认识,虽然水,但是周围有认真学的,我知道他们是怎么样去努力学,怎么样去认真练。
跟普通程序猿,差的就是一句话,当我处在人生的十字路口,我知道哪条路是对的,毫无疑问我就知道,但是我不走。你问我为什么?因为他妈的太苦了。
而其他专业的,跟普通程序猿,除了努力还差了觉悟,就是没有认识到编程是一个很长久的过程,不拼智商,拼的是坚持与努力。是一个短时间都无法跨越的鸿沟,很多人不知道,一直处在沟底,来问,“我接下去做什么?我这么学对不对?这么学下去工资高不高?”
“做你想做的,你做的都对,学的好就工资高,再过个两三年,你就走出来了。”

比起上面所有看名字都觉得烦的课程。
不如学学他们都掌握的这门课,踏实。 专业金融,毕业开始改行学计算机。从业10年,从培训班一路走到最牛逼的大企业做研发。身边全部都是一流大学起码科班毕业。

先说结论,科班和培训班的显著不同在于以下几门课:数据结构,编译原理,操作系统,图形学。而很多培训班基本只教api调用,所以培训班毕业的99%都是垃圾。

出道那会儿正值ssh流行,培训班只教ssh,因为ssh只需要读懂产品说明书照着做就行了。但是做了几个项目,你就会发现你并没有提高,你还是一个装配工。于是自己写框架,自己看源码。如果你不懂链表,你就不可能看懂java.util下的大部分类。如果你不懂hashmap的结构,你就不可能真正理解负载均衡。当html5时代来临,你会发现对于前端的要求不是更低了,而是更高了。不理解操作系统你就不会真正理解闭包。当3d兴起,不懂图形学你无法真正构建起你的图形化引擎,别说three.js已经做了大部分。一个产品级应用必须要减少外部依赖,特别是我司因为java被甲骨文敲诈了好几个亿的时候。


ok,相信楼主已经有结论了。 控制科学与工程(自动化),舔着脸强行科班出身
课程有:自动控制原理,现代控制理论,先进控制导论,非线性控制,过程控制
精神控制,控制意念学,初级控制魔咒学,中级心理控制导论,高级全方位立体控制学

以上 DOTA 某非211大学软件工程专业学生,大一上c语言,计算机导论,大一下c++,大二上c#dotnet,数据结构,8086汇编,大二上计算机网络,数据库,web,数字电子逻辑基础,软件工程,大二下计算机算法分析,uml建模,计算机组成原理,软件需求工程,软件设计模式,JAVA,日语,Linux或arm选修,大三上软件测试,软件外包项目管理及案例,专业英语,编译原理,信息系统安全,日语,选修存储技术基础或C# web或软件工程经理学或移动云计算或手机应用设计与开发或java进阶或java架构技术,大三下基本为选修或者项目实训。大四实习。

当然还有很多具有中国特色*的课程和工科基础课程,这里不再列出。

如果有需要可以后面再上图片,包含所有本科阶段所需要学习的课程。 本人“计算机科学与技术”。毕业十二年 编程学过:Pascal,C,VB,汇编 其他于计算机沾边的科目:数据结构,编译原理,组成原理,数字电路,模拟电路 其他:高数,线性代数,离散数学,概率统计,大学英语,大学物理。 还有什么网络安全,操作系统,多媒体什么都记不住了。 我上学时还没有ios,Java已经有了,但学校没教。 工作中学习了:Java,C#,asp,VC,Python,Ruby。还有其他的中间件等等。
我曾经也兼职教过培训班。 如果说两者的区别,总体说大学学校教的注重的是知识面的培养,讲的是原理了解的是内部的东西。是对计算机深入的了解。 培训更注重实际具体语言的应用和工具的应用,而且教的过程都是用实际项目的例子进行教学(比如培训班会教编码规范,而大学课程里肯定没专门教过)。为的是可以让学员就业。
两者只有目的不同,没有高地好坏之分。即使是专业毕业,为了能获得工作也需要学实际工作用的语言和工具(无论自学还是参加培训班)。 好多答案都是那科班学霸跟培训机构学渣比较,我觉得做这个起码要不卑不亢 本科
c vf java c# j2ee vb
数据库 编译原理 汇编 数据结构 软件测试 软件体系架构 网络工程 软件工程导论
还有好多记不清了
研究生阶段 许多东西从新学一遍 多了机器学习 大数据 网络安全等等许多理论课 对实际写代码的要求并不多
相关标签: JAVA IOS PHP