二狗子
发布于 2024-11-29 / 63 阅读
0
0

谈谈我接触到的IT培训班

在2022年10月前后,有感于自己在算法上成长不大,就想转开发岗以延长职业年龄,我选了C/C++这个偏底层语言,希望能从此开始重塑自己的计算机技能。虽然自己是计算机专业出身的普通硕士,但重新把知识都捡起来是需要较长时间的。怕自己犯不专心的老毛病,特别是在现在还要带娃,时间非常宝贵,我就选了某内教育,交了三万多开始进班学习。如下是整体学习的课程表:

标C
(10月31日)

Linux基础与命令、vim编辑器

web服务器项目
(12月25日)

项目概述与编码实现(一)

第一个C语言程序、gcc编译器

编码实现(二)

变量、数据类型

CPP
(12月29日)

命名空间、C++数据类型

运算符

重载、缺省、哑元、内联

分支结构

动态内存分配、引用、类型转换

循环结构

类、对象、this指针、构造函数

数组

string使用、缺省构造、拷贝构造

函数

类型转换构造、初始化表、析构、深拷贝

指针

静态成员、单例模式、操作符重载1

字符串

操作符重载2、继承、子类构造

预处理和大型程序

多重继承、钻石继承、虚继承

结构体

多态

高级指针

运行时类型信息

动态内存分配和文件操作

异常处理

数据结构和算法
(11月19日)

IO流

队列

类型推断、类型计算、初始化列表

单链表

lambda表达式、转移构造

双链表

模板起源、函数模板

二叉树

类模板、模板技巧、模板实战

排序和查找算法

类模板、模板技巧、自定义链表

UC
(11月29日)

环境变量与错误处理

向量、队列、优先队列、映射

静态库与动态库

多重映射、集合、多重集合、哈希散列

虚拟地址空间与内存映射

QT框架库
(2月26日)

QT父窗口 QT信号和槽

文件结构

面向对象的QT编程、设计师、创造器的使用

文本读写

QT事件机制、QT定时器事件、鼠标事件、键盘事件

文件锁

绘图事件、绘图、坐标系统和坐标变换

进程的创建

混合UI设计、主窗口、菜单栏、工具栏、状态栏

进程的回收1

基本控件

进程的回收2

QListWidget、QToolButton等控件

信号处理

Model/View模型1

信号集与信号屏蔽

Model/View模型2

管道

对话框

共享内存与消息队列

Qt sql模块

计算机网络基础

线程和线程同步

TCP与HTTP

网络编程1

UDP

网络编程2

线程

智能监控系统项目
(3月18日)

概要设计、详细设计、网络视频服务器搭建

互斥锁与条件变量

视频、快照抓取、opencv人脸监测

大项目实站
(3月19日)

项目概述、总体架构、报文规约、数据库设计

宏、数据类型、报文规约

跟踪服务器:全局变量、缓存类、数据库访问类

跟踪服务器:业务服务类

跟踪服务器:存储服务器状态检查类、服务器类

ID服务器:全局变量、数据库访问类、业务服务类

ID服务器:构建脚本、配置文件、建表脚本

存储服务器:全局变量、缓存类、数据库访问类

存储服务器:文件操作类、ID客户机类、业务服务类

存储服务器:跟踪客户机类、服务器类

客户机:连接类、连接池类

HTTP服务器:响应状态码、全局变量、业务服务类

测试调试:获取组列表、上传文件、下载文件、删除文件

媒体播放器客户机

媒体播放器客户机(二)

除了最后的大项目实战外,可以发现前面的小项目基本就一两天时间,非常水。整体学完是在4月9日,期间由于春节假期等因为,延长到了5个月的时间。这一段时间,我都是在娃睡觉之后,或者娃出去玩时挤时间来学,能坚持下来算是有些不容易,最终算是顺利毕业,也为我接下来在猿某码上学习并行编程打下了基础。我是在B站学习计算机底层原理时看到的高性能计算的视频,看着这样一个底层的需要时间积累且工作又不卷的方向,我通过评论区的联系方式主动找了猿某码相关课程的员工,交了一万多开始学习并行编程,课程内容大纲如下:

一级模块名称

二级模块名称

二级模块名称

超算平台开发环境与基础优化技术

超级计算机平台简介

超级计算机体系结构

天河超算平台登录使用

Linux操作系统开发环境

Linux常用命令

编辑器VIM/编译器GCC/工程构建工具Make/调试器GDB入门

超算平台任务管理系统slurm

高性能算法

稀疏矩阵压缩存储格式

稀疏矩阵向量乘算法SpMV优化

基础性能分析

静态分析工具understand

动态分析工具gprof

计时函数辅助方式

基础性能优化

流水线

循环展开

循环分块

连续访存

并行编程模型简介

分布式并行模型-MPI

共享内存式并行模型-OpenMP

单指令多数据并行模型-SIMD

MPI

MPI基本概念

进程与MPI程序基本编程方式、编译、运行

MPI四个基本接口

并行模式

点对点通信(阻塞式)

发送MPI_Send与接收MPI_Recv

消息标签tag及MPI_ANY_TAG和MPI_ANY_SOURCE

jacobi并行化-阻塞消息通信版本

组织进程通信避免死锁

接口MPI_Sendrecv

jacobi并行化-基于捆绑消息发送接收版本

点对点通信(非阻塞式)

接口MPI_Isend与MPI_Irecv

非阻塞通信的等候与检测

jacobi并行化-非阻塞消息通信版本

重复非阻塞通信

jacobi并行化-重复非阻塞消息通信版本

集合通信

广播bcast

分散scatter

收集gather

规约reduce

全互换alltoall

路障barrier

通信模式和虚拟进程拓扑

四类通信模式

虚拟进程拓扑

OpenMP

OpenMP基本概念

线程概念

OpenMP基本编程方式、编译、运行

OpenMP并行程序基础设计

openMP并行域与指令parallel

变量作用域与私有、共享属性

线程竞争、临界区和指令critical

OpenMP的循环体for结构

循环迭代并行和指令for

循环调度策略与子句schedule

变量作用域属性与子句private、shared、default

变量规约属性与子句reduction

嵌套循环与子句collapse

OpenMP的分段section与task结构

代码段并行和指令section

任务池并行和指令task

OpenMP的其他指令

单线程指令single、master

路障指令barrier

原子指令atomic

缓存一致性

缓存、缓存一致性与伪共享

SIMD

SIMD基本概念及编程入门

SIMD与向量化概念

程序向量化思路与编程基础方式

向量寄存器、ARM架构与NEON

自动向量化

编译选项自动向量化

编译指导语句自动向量化

NEON-intrinsic指令集(命名规则及存取操作)

intrinsic的向量数据类型和函数命名规范

向量寄存器初始化函数

交叉存取技术-以RGB转换为例

存储、加载操作函数

NEON-intrinsic指令集(算术、比较、逻辑及其他操作)

算术操作函数

比较操作函数

逻辑操作函数

其他操作函数

SVE指令集简介(选修)

Z、P寄存器

命名规则及常见intrinsic函数

聚集加载和分散存储

《CPU并行程序性能优化》课程大纲

我从3月28日左右开始学习,6月4日模拟考试,6月11日正式考试。无论是模拟考试,还是正式考试,都给定6小时的时间进行编程,应该说比上面某内的毕业选择题考试的含金量高了N倍。通过各种项目的锻炼,可以明确地了解到计算机对科学家的作用。

培训班的优缺点

培养习惯

连续两段培训课程的时间超过7个月,长时间地学习确实培养了我一些好习惯:一是学习的习惯,由之前带娃“躺”过渡到“卷”学习的状态。每天睡觉前不学习下就有点难受。二是记笔记的习惯,培训课程的视频不可能一直存着,也不可能花时间重新看来复习,所以重要的知识点要记录。三是定期复习,大脑是懒惰的,重要的知识点要记在脑子里,能不费力地拿出来用,才能在这之上进一步思考。

教学方式守旧

现在的培训还是通过直播的形式来教授计算机知识,是我觉得不应该的。事实上,我基本是先看讲义,有不懂的地方,直接看对应的回放,学习的效率比直播高出不少。其它同学老老实实地听三小时,我三小时不仅学完了知识点,还动手实践巩固了知识。此外,培训的时间安排也有问题,周一、周三、周五和周六晚上,周日上午和下午,这样的安排使得周五、周六、周日和周一连续学习,几乎没多少时间复习。

不包就业

很多培训班会开课前或教授前给学员们看一些就业的案例,增强学员的信心。我个人认为不能对号入座,因为一个培训机构培训了这么多人,总是能有几个好苗子,但更多的人可能是原地踏步,甚至是无法毕业。就目前我接触到的培训内容来看,主要是强调操作性质,原理等更深入的知识较少涉及。某内的就业推荐基本是外包,但看岗位要求就会发现,只要是计算机毕业的,你在B站自学都能进,根本就不需要来培训。达某内的培训说到底是更适合非IT专业转行的人。猿某码的就业推荐会稍微靠谱那么一些,但也是需要多试试,但也不包就业。这里提一下的是,培训时做的项目能当作工作经历么?可以但要深入理解项目,稍微仔细一点的面试官都会问一些细节,答不上来反而是减分项。

小结

如何判断一门培训课程是否适合自己?最简单的就是通过课程表的知识点比对招聘岗位描述,如果基本能覆盖,才可能在学完时应聘成功,当然也只是可能,千万不要被培训机构的热情的小姐姐忽悠了。计算机知识非常广阔又艰深还强调操作性,是需要终生学习的专业,培训课程可能只是一个开始。

原文章发布于2023年7月27日


评论