对于培训出身的同学,接下来该怎么学习技术?

2023-11-05 07:32

本文主要是介绍对于培训出身的同学,接下来该怎么学习技术?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先恭喜从培训班出来找到工作的同学,确实挺不容易的,4个月的培训,每天从早上9点到晚上9点,也是996,主要的活动地方就是宿舍和教室, 让我现在也去培训,我估计还熬不下来。

尤其是对于从小白开始的同学,4个月期间不断地接触新技术、新概念,一个还没彻底理解,另外一个就呼啸而来,狼吞虎咽,想真正消化是很难的。

所以我经常说对于那些通过培训来努力改变命运的同学,我非常尊重。

现在好了,找到了工作,可以稍微喘一口气了,但是能够就此休息了吗, 那是绝对不能。

培训只是让我们入了门,有了一个初步可以工作的技能,可以参与项目,在别人的指导下,在现成的框架下写业务代码,想成为一个真正的程序员,路还非常地长。

我想给各位唠叨两句,说一些注意事项。

1. 适应期:把工作做好

首先一定要把分配给我们的工作做好,这是底线。

要拿出300%的劲头去做,就是加班加点也要高质量按时完成,谁让我们是新人呢! 初步建立起自己的认真负责的形象,注意啊,个人的形象是非常重要滴。

遇到障碍一定要及早提出,向同事请教,“不耻上问”,不要不好意思,不要怕别人鄙视。

最怕的是有个问题把你给绊住了,你坐在那里不吭声,两天过后,领导才发现你严重落后于进度。

如果有余力,尽快地去熟悉项目的各个方面,尤其是业务上的东西。

收集业务知识相关的文档,反复阅读,努力理解,不懂就请教。 注意:这些事情很有可能是在你的工作之余完成的,下班后的游戏就不要再打了,现在工作第一!不过你放心,你努力学习的态度一定会给你带来回报。

和组长,项目经理等领导搞好关系,抓住一切可能的机会主动、自信地领导交流(例如共进午餐的时候)。 不用总是“默默无闻”,要主动参与,了解项目的进展,人员情况,有什么困难。 总之要快速地融入团队,打入他们的圈子。

不要不好意思,老是躲着领导走,让领导觉得:这孩子这么怕我,是不是有什么问题?!

2. 深入学习技术和原理

度过了适应期,会感觉舒服很多,代码和业务逐渐熟悉, 任务不用加班也能完成。和同事也开始熟悉, 于是就进入了舒适区。

这个时候可以更加深入地钻研一下技术了,什么Nginx、Redis、RabbitMQ、Shiro、Elastic search、Spring ......等知识,培训班也许学过,但是我相信只是学了一些皮毛,对原理可能还不太了解, 这时候正好可以结合工作中用到的技术,深入地学习一下。

例如Nginx,要去理解epoll这个技术,以及和select之间的差别。 理解什么是非阻塞IO,顺道可以学一下Java的NIO, 感兴趣的话还可以瞄一眼Node.js, 本质的原理是相通的。

对于Redis,至少要理解分布式一致性Hash,虽然Redis没有用这个算法,但是要和Redis那种基于槽的方式来对比。

理解缓存失效了怎么处理,增加、删除机器会怎么影响缓存。如果你的项目在使用Redis做缓存,主动向相关负责人请教,毕竟理论和实践还是有差距。

对于Spring, 现在要考虑学习DI和AOP的实现原理和技术了,可以尝试自己写个小容器,绝对很锻炼人。

DI还好说,AOP这一块儿需要有底层技术支持,就是Java动态代理和CGLib。再往下深挖,就是ASM, Class 文件的格式,ClassLoader,这就进入了另外一个大世界: JVM, 需要掌握JVM的逻辑结构,执行引擎,尤其是后者,理解一个类装入方法区以后到底是怎么执行的,其中的栈帧等概念对以后学习C语言在机器层面的执行很有帮助。

可以阅读一些面向对象设计, 设计模式相关的书籍,不能只是看,要思考,它到底要解决什么问题? 把一些设计思想和自己的项目做对比,看看为什么现在的设计是这样,是不是有问题, 向资深同事请教。

......

总之,最好从工作中使用的技术开始学习,理论联系实际,还是那句话,“不耻上问”,作为程序员,老是闷头自己干,希望一鸣惊人,给别人一个大惊喜,那是不太现实的。

3. 计算机基础

在往下走就进入了计算机基础的领域了,之前说过很多次,估计老读者都烦了吧, 这里再啰嗦一下。

操作系统的几个重要概念一定得掌握,进程、线程、虚拟内存,一定要理解程序在机器级层面的表示,寄存器,函数栈帧等,如果你能理解缓冲区溢出的攻击和防御就差不多了, 这些知识需要涉及C语言和汇编。

理解线程的几种实现方式,对于将来学习Go语言的并发,Actor, ErLang 等技术和语言有极大帮助,你会发现有似曾相识的感觉。

数据结构和算法的学习要贯穿始终,虽然在工作中最常用的可能就是数组,List和Map。

对于常用的数据结构要自己能写,要阅读JDK对应的实现。 要大量地做题,锻炼自己的逻辑思维能力。

如果你的工作和数据库结合紧密,那数据库中相关的技术如索引,事务,查询优化不能错过。

对于计算机网络,要理解协议的本质、分层的本质。 具体的协议中HTTP是必备,还要了解可靠性传输的原理,TCP/IP等协议,socket等基本概念。

4. 总结

需要提醒大家的是,我这里所说的只是一个大概的分层,在学习过程中很有可能一下子从最上层的应用跳到最底层的基础概念,这很正常,很多知识点之间都是相互关联,不是完全隔绝的。尤其是在原理层次。

你会发现需要学习的东西实在是多,这篇文章能列出来的也是部分而已, 没有办法,这就是程序员的世界, 更可怕的是还有很多新技术在不断涌现。

所以对于培训出身的同学来说, 找到工作,只是入门而已,绝不能就此停滞。

还有就是我啰嗦了这么多,也许一时触动了你,但关键还是要行动,并且坚持学习下去,这样才能成为真正的程序员。

我的Java学习交流QQ群:589809992  禁止闲聊,非喜勿进!

这篇关于对于培训出身的同学,接下来该怎么学习技术?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/348343

相关文章

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

电脑开机提示krpt.dll丢失怎么解决? krpt.dll文件缺失的多种解决办法

《电脑开机提示krpt.dll丢失怎么解决?krpt.dll文件缺失的多种解决办法》krpt.dll是Windows操作系统中的一个动态链接库文件,它对于系统的正常运行起着重要的作用,本文将详细介绍... 在使用 Windows 操作系统的过程中,用户有时会遇到各种错误提示,其中“找不到 krpt.dll”

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

MySql死锁怎么排查的方法实现

《MySql死锁怎么排查的方法实现》本文主要介绍了MySql死锁怎么排查的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录前言一、死锁排查方法1. 查看死锁日志方法 1:启用死锁日志输出方法 2:检查 mysql 错误

Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南

《Rsnapshot怎么用?基于Rsync的强大Linux备份工具使用指南》Rsnapshot不仅可以备份本地文件,还能通过SSH备份远程文件,接下来详细介绍如何安装、配置和使用Rsnaps... Rsnapshot 是一款开源的文件系统快照工具。它结合了 Rsync 和 SSH 的能力,可以帮助你在 li

电脑密码怎么设置? 一文读懂电脑密码的详细指南

《电脑密码怎么设置?一文读懂电脑密码的详细指南》为了保护个人隐私和数据安全,设置电脑密码显得尤为重要,那么,如何在电脑上设置密码呢?详细请看下文介绍... 设置电脑密码是保护个人隐私、数据安全以及系统安全的重要措施,下面以Windows 11系统为例,跟大家分享一下设置电脑密码的具体办php法。Windo

怎么关闭Ubuntu无人值守升级? Ubuntu禁止自动更新的技巧

《怎么关闭Ubuntu无人值守升级?Ubuntu禁止自动更新的技巧》UbuntuLinux系统禁止自动更新的时候,提示“无人值守升级在关机期间,请不要关闭计算机进程”,该怎么解决这个问题?详细请看... 本教程教你如何处理无人值守的升级,即 Ubuntu linux 的自动系统更新。来源:https://