计算机入门了解

计算机入门了解

一. 语言方面学习

1. C/C++: C是面向过程的语言,C++是在C语言的基础上发展起来的语言,他兼容99%的C。C++比C多了面向对象的开发思想,引入了类class等知识。C/C++学习难度大。C更偏向于底层,C/C++运行编译速度快,一般C/C++用于底层开发,比如操作系统,硬件程序,单片机等偏硬件方向开发,一般是嵌入式开发。**

开发软件:DevC++(推荐),CLion

2. JAVA:JAVA是一种通用的,基于类的,面向对象的编程语言。用于应用程序开发的计算平台,具有跨平台开发的功能,一种与平台无关的语言。他吸收了C/C++的优点。应该是目前使用量最大的一种开发语言。JAVA使用场景非常广阔,例如:桌面GUI应用程序开发(JavaFX),移动应用Android开发(不过现在主流开发软件为kotlin),Web应用后台开发,大数据开发,游戏应用开发。Java开发正因为使用范围很广,它所要学习的知识相比于其他语言要多的多。**

开发软件:IDEA

3. Python: python是近几年兴起出现的语言,是一种解释性语言,比较好上手。Python主要的方向可以是后端接口开发等,不过高级一点比较火的是大数据模型,人工智能模型,爬虫技术,图像识别技术等。(难度比较大,对大数据分析处理算法要求高,需要数学比较好,高数等数学知识)**

开发软件:Pycharm+anacoda

4. Go/Golang: Go 语言的发展越来越好了,很多大厂使用 Go 作为主要开发语言。Go的代码风格趋向于C/C++的风格。我已知主要是Web后端开发。

5. Kotlin: kotlin最近开始兴起的语言,使用趋势正在逐步提升。我已知在Android移动应用开发使用多(毕竟是Google提倡的开发语言)。Kotlin语法简单,开发效率高,比较简洁。

6. HTML/CSS/JavaScript: 它们俗称前端三件套,主要用于网页开发。学习难度不大,易上手,主要是标签比较多。

开发软件:Webstorm , vscode

7. 其他语言:我只听说过一些,比如Dart,PHP,.Net等,如有兴趣可自行了解。

**Tip:**我觉得学习计算机语言不在于学会的语言多,而是应在某一门语言方面精通。语言之间并没有那么大的优劣之分,而是在合适的地方用某种语言。

二. 核心知识课程

l 计算机必学基础课程:

1. C/C++:我本人觉得应该首先学的一门语言。学会C/C++,对其他语言上手很快,可以触类旁通。

Tip: B站课程:【C语言】《带你学C带你飞》_哔哩哔哩_bilibili

2. 数据结构:这是一门很重要的课程。可以学会栈,队列,列表,树,图等知识,对算法和开发思想及其重要,是以后的开发根本。

Tip: B站课程:懒猫老师-数据结构-(0)课程安排_哔哩哔哩_bilibili

3. 算法:这是一门很重要的课程,可以很好的学习算法思想,提高算法能力。

Tip:B站课程:【1】-1 算法概论_哔哩哔哩_bilibili

**Tip:**多刷算法题,提升算法,这很重要,多参加算法比赛。

国内主要刷题网站:OpenJudge - NOI - 首页

题目列表 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

(这两个比较简单,适合新手进行刷题

LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台

国外的刷题网站:Problemset - Codeforces

**(**全英文,主要是acm选手进行刷题的地方,难度很大)

l 计算机核心课程:

1. 数据库:主要学习数据库CURD等数据库操作,是后端开发者必备的技术。

Tip: B****站课程:【自用】数据库系统概论学习_哔哩哔哩_bilibili (学习基本知识素养很好,偏向于课程)

黑马程序员 MySQL数据库入门到精通,从mysql安装到mysql高级、mysql优化全囊括_哔哩哔哩_bilibili (偏向于实战开发,讲的未必那么详细。个人觉得学习的话先学上面那个)

2. 计算机网络:主要学习网络方面的知识,学习网络的组成,对网络的使用和开发维护有更深的了解。

Tip: B****站课程:3.6-4 VLAN基本概念与基本原理_哔哩哔哩_bilibili

3. 计算机操作系统:了解操作系统运行底层原理,可以更好的进行开发和计算机使用。

Tip: B****站课程:1.0-教材介绍视频_哔哩哔哩_bilibili

4. 计算机组成原理:了解计算机由哪些部分组成的,各部分的作用是什么,是如何运行的。

Tip: B****站课程:王道计算机考研 计算机组成原理_哔哩哔哩_bilibili

**Tip:**多学会利用网络资源,比如Bilibili,慕课网等找课程资源学习。

三. 方向选择

1. 算法工程师:很吃香,工资高。算法要求高,算法难度大,一般是acm选手的求职方向,近大厂得有金奖。(有能力和天赋,尽量走算法方向)总之,多刷算法题,多打比赛,打acm之类的比赛,(acm美国举办的全球赛事,含金量极高,当然难度也极大)

2. 后端工程师:目前主要是java和go后端开发工程师。主要是开发后端接口,基本上是CURD之类的活。虽然招人多,但是学的人也多,竞争量大。现在,java貌似就业形式不太行,后端要求可能还得要求你会前端开发,起码会vue。java后端工程师要起码会:ssm,springboot,springcloud开发框架,mybatis,mybatisplus等数据库连接池操作,redis,docker等中间件, mysql,sqlserver,oracle等数据库,更高要求:多种架构方式,大数据,微服务,linux,分布式等

3. 前端工程师:前端已死是比java已死听得更多。不过确实现在前端就业环境很不好,企业很少招前端人员,一般招的大前端的都得会先后端知识。现在基本上感觉全栈。前端除了html/css/js三件套之外,还必须会vue框架等。

4. 移动应用开发:主要是Android开发,一般是做一些app或者小程序。Android入门难度大,不太好学。安卓开发发展快,技术迭代快。主要用Android Stdio利用kotlin语言开发,当然java现在也可以,但不是主流。推荐书籍:第一行代码。APP开发如果是android智能在安卓手机上使用,如果想安装在IOS系统上,得跨平台开发,得学习Dart语言以及flutter开发框架。微信小程序现在也还行。不过鸿蒙系统出来之后,也推出了它的应用开发模式,感觉和前端vue开发模式挺像的。

5. 大数据开发和人工智能:很有前景,主要是大数据模型处理,图像识别等,主要用python语言。需要学习算法,一般是一些深度学习算法,神经网络算法,这些算法和传统算法不一样。两种算法都需要很好的数学能力。个人感觉学历要求很高,起码得硕士以上,不然没有成果不是很好就业。

6. 游戏开发:主要是运用unity等工具进行开发,没有接触过游戏开发,不能给出很好的意见

**Tip:**遇见不会的多问多搜,多问ChatGpt。

在校多参加竞赛积累项目经验和算法水平,计算机上限高下限也低,学习的人不少(本科生,专科生,那些培训班培训的,非科班生),找准自己喜欢的且合适的方向很重要,然后学精学透才不会淘汰,不要眼高手低什么都会一点但是不够精,这样很容易被取代的。提一下,可能会由于一些文凭上的差异,大概率可能会在简历上被pass,但是不要气馁,只要你技术够硬也有可能进大厂。非科班生也是,不过在学习上可能更辛苦一些。
总之,学无止境,无论在学校还是在工作都要不断学习新知识,使自己变得更充实,无法被取代。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/229908.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】(堆)Top-k|堆排序

目录 概念: 堆的实现 构建 初始化 销毁 插入元素 往上调整 删除堆顶元素 往下调整 返回堆顶元素 返回有效个数 是否为空 堆排序 Top-k问题 ​编辑 创建数据 堆top-k 概念: 堆是将数据按照完全二叉树存储方式存储到一维数组中&#xff…

[计网00] 计算机网络开篇导论

目录 前言 计算机网络的概念 计算机网络的分层 计算机网络的分类 网络的标准化工作和相关组织 计算机网络的性能指标 前言 计算机网络在我们的日常生活中无处不在 在网络会有各种各样的协议和封装 保证我们的信息完整,无误的在各个客户端之前传输 计算机网络的概念 四…

vue3写法

一. <script setup> 1. 引入组件 import Head from "./conponents/head.vue" 2. 声明变量 // 引入 ref import { ref } from vue const isNeedNav ref(true) 3. 声明方法 const changeLossd () > {lossdVisible.value !lossdVisible.value } 4.生…

java 之匿名内部类 与 Lambda 表达式

文章目录 Lambda 表达式&#xff1a;基本语法&#xff1a;例子&#xff1a; 匿名内部类&#xff1a;语法&#xff1a;例子&#xff1a; 对比&#xff1a;相似之处&#xff1a;区别&#xff1a;示例比较&#xff1a; Lambda 表达式&#xff1a; Lambda 表达式是 Java 8 引入的一…

从文字下乡到人人学英语

从建国到改革开放&#xff0c;从恢复高考到新式教育改革&#xff0c;中国飞速发展&#xff0c;文字需求也在不断增大&#xff0c;在“地球村”的时代下&#xff0c;我们要“习文字之变&#xff0c;顺时代发展。” 古言道&#xff1a;“仓颉作书&#xff0c;后稷作稼”&#xff…

UE4 去除重复纹理

如果直接连的话&#xff0c;效果如下&#xff1a; 就存在很多重复的纹理&#xff0c;如何解决这个问题呢&#xff1f; 将同一个纹理&#xff0c;用不同的Tilling&#xff0c;将Noise进行Lerp两者之间&#xff0c;为什么要这么做呢&#xff1f;因为用一个做清晰纹理&#xff0c;…

Maven 项目的三种打包方式与 pom.xml 文件中项目描述

目录&#xff1a; 定义项目的信息 本项目描述相关标签<parent> 标签<relativePath/> 标签<scope> 标签 Maven 三种打包方式 JARWARPOM 原文链接 — —

获取JSON里面result的值 将(List数组或对象)转换出来并读取

列如&#xff1a;数据结构 //为虚构数据 仅参考{ "success" : TRUE,"message" : "操作成功&#xff01;","code" : 200,"result" :[{ "id" : 1,"ip" : "185.20.2","username" : &…

设计模式——命令模式

引言 命令模式是一种行为设计模式&#xff0c; 它可将请求转换为一个包含与请求相关的所有信息的独立对象。 该转换让你能根据不同的请求将方法参数化、 延迟请求执行或将其放入队列中&#xff0c; 且能实现可撤销操作。 问题 假如你正在开发一款新的文字编辑器&#xff0c; …

request.getcontextPath() 详解

request.getcontextPath() 详解 大家好&#xff0c;我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 走进Servlet世界&#xff1a;request.getcontextPath()详解 在Java Web开发中&am…

第15课 SQL入门之插入数据

文章目录 15.1 数据插入15.1.1 插入完整的行15.1.2 插入部分行15.1.3 插入检索出的数据 15.2 从一个表复制到另一个表 这一课介绍如何利用SQL的INSERT语句将数据插入表中。 15.1 数据插入 毫无疑问&#xff0c;SELECT是最常用的SQL语句了&#xff0c;这就是前14课都在讲它的原…

C语言—小小圣诞树

这个代码会询问用户输入圣诞树的高度&#xff0c;然后根据输入的高度在控制台上显示相应高度的圣诞树。 #include <stdio.h>int main() {int height, spaces, stars;printf("请输入圣诞树的高度: ");scanf("%d", &height);spaces height - 1;st…

Linux---远程登录、远程拷贝命令

1. 远程登录、远程拷贝命令的介绍 命令说明ssh远程登录scp远程拷贝 2. ssh命令的使用 ssh是专门为远程登录提供的一个安全性协议&#xff0c;常用于远程登录&#xff0c;想要使用ssh服务&#xff0c;需要安装相应的服务端和客户端软件&#xff0c;当软件安装成功以后就可以使…

串口通信(3)-C#串口类SerialPort详解

本文详解C#串口类SerialPort 目录 一、概述 二、构造函数及重载 三、字段InfiniteTimeout 四、属性 五

论文阅读《DPS-Net: Deep Polarimetric Stereo Depth Estimation》

论文地址&#xff1a;https://openaccess.thecvf.com/content/ICCV2023/html/Tian_DPS-Net_Deep_Polarimetric_Stereo_Depth_Estimation_ICCV_2023_paper.html 概述 立体匹配模型难以处理无纹理场景的匹配&#xff0c;现有的方法通常假设物体表面是光滑的&#xff0c;或者光照是…

什么是容器编排?

什么是容器编排&#xff1f; 容器编排是一种能够自动管理容器的软件技术。这是现代云应用程序开发所必需的&#xff0c;因为应用程序可能在其各自的容器中包含数千项微服务。大量容器化微服务使软件开发人员无法手动管理它们。 容器编排的优势 开发人员使用容器编排工具自动…

express中实现将mysql中的数据导出为excel

express中实现将mysql中的数据导出为excel 安装node-excel cnpm install node-xlsx -S封装公用的导出方法 /*** 查询* param tableName: 表名* param sqlJson&#xff1a;需要拼接的SQL* returns {Promise<unknown>}*/ const find (tableName, sqlJson) > {return…

Linux——权限

个人主页&#xff1a;日刷百题 系列专栏&#xff1a;〖C语言小游戏〗〖Linux〗〖数据结构〗 〖C语言〗 &#x1f30e;欢迎各位→点赞&#x1f44d;收藏⭐️留言&#x1f4dd; ​ ​ 一、 Linux下用户的分类 Linux下有两种用户&#xff1a; 1. root&#xff08;超级管理员用户…

【Docker】离线一键式安装docker、docker-compose

1.创建根目录(可随意) mkdir -p /docker2.上传文件 资源地址 [rootlocalhost docker]# tree /docker/ /docker/ ├── docker │ ├── docker-18.03.1-ce.tgz │ └── docker-compose-Linux-x86_64 ├── install-docker-compose.sh └── install-docker.sh3.安装…

基于FPGA的HDMI编码模块设计(包含工程源文件)

前文已经通过FPGA实现了TMDS视频编码的算法&#xff0c;也对单沿数据采样转双沿数据采样的ODDR原语做了详细讲解和仿真验证&#xff0c;本文将这些模块结合&#xff0c;设计出HDMI编码模块&#xff0c;在HDMI接口的显示器上显示一张图片。 1、整体思路 如图1所示&#xff0c;是…