非计算机专业如何转行成为程序员?我用亲身经历教你用这三种方法

news/2024/11/30 1:48:01/

哈喽大家好啊!我想分享一下,非计算机专业的学生如何转行成为程序员。首先,我先介绍一下我的情况。我是18年毕业的,大学学的专业是土木工程,与计算机一点关系都没有。但是在大学时,我对程序员比较感兴趣。本来一开始是想通过考研的方式去转行,但大三时开始考研,结果没考上。没考上之后,我就直接自学,然后找工作,现在已经工作2年了。中间也踩过很多坑,想把自己的经历分享一下。如果你不是计算机专业的学生,如何转行成为程序员呢?以下是三种方法:

  1. 通过考研跨考到计算机相关专业。这是最好的方法,因为你不仅可以换专业,还可以提升学历。到时候你也可以成为校招应届生,很容易地进入这个行业,并找到比较好的工作。效率是最高的,不需要踩太多的坑。
  2. 自学编程。通过利用网络资源或书籍,自学编程,然后去找工作。后面再详细说明如何去做。
  3. 通过培训班学习。我不是很推荐这种方法,因为学费比较贵,而且学到的东西也比较简单。我认为完全可以自学。

如果你想通过自学找到工作,首先,你需要选择一个方向。程序员也是分很多岗位的,有前端、后端、测试、运维、算法等等。每一个岗位都不同,要掌握不同的技术。你可以先了解一下哪个岗位你比较感兴趣,然后根据这个岗位的要求一步步去学。学得差不多了就可以投简历了。

最重要的是,你要先找到一份工作。最快的方法是一边做一边学,多动手编程,利用搜索引擎,不要太抠细节。不要把所有的基础都掌握之后才去找工作,应该先完成一个项目或者完成一个目标,然后把这个目标拆分成几个小目标,一步步去完成。

如果你想自学编程,那么你需要一些学习资源。有很多学习编程的网站,比如Codecademy、FreeCodeCamp、Khan Academy、Coursera、Udacity等等。可以教你学习各种编程语言,包括Python、Java、C++等等。Github上有很多开源的项目可以供你学习,你可以学习其他人的代码,了解编程的实际应用场景。

当然,这些资源只是帮助你入门,更重要的是你要有一个学习计划和学习方法。在学习编程的过程中,你需要掌握一些基本的编程概念和技术,比如算法、数据结构、面向对象编程等等。你可以选择一些经典的编程书籍来学习这些概念和技术,比如《算法导论》、《数据结构与算法分析》、《Java编程思想》等等。

除了这些书籍,你还可以通过参加一些编程社区或者技术交流会来学习编程。在这些社区或者会议上,你可以认识一些同样喜欢编程的人,了解最新的编程技术和趋势。

Java工程师需要掌握的核心技术包括:

  • Java基础知识:包括数据类型、运算符、流程控制语句、数组、面向对象等等。
  • Java集合框架:掌握Java中集合的概念、常用集合类的使用方法、集合的遍历和排序等等。
  • Java IO/NIO:了解Java IO/NIO编程模型、流的概念和使用、文件的读写、网络编程等等。
  • Java并发编程:了解Java并发编程的基础知识、线程的生命周期和状态、同步机制、线程池、JUC包等等。
  • Spring框架:掌握Spring框架的核心思想、IoC和AOP的原理和使用、SpringMVC的使用、SpringBoot的使用等等。
  • 数据库:了解数据库的基础知识、SQL语句的编写、数据库设计和优化、JDBC的使用等等。
  • Web开发技术:掌握常见的Web开发技术,如HTML/CSS/JavaScript、Ajax、jQuery、Bootstrap、Vue.js等等。

除了以上技术,Java工程师还需要了解一些常用的开发工具,如Eclipse、IntelliJ IDEA、Git、Maven等等。同时,不断学习新技术和关注行业发展也是非常重要的。

最后要注意的是,心态比较重要。你不要在乎工资的多少,应该先入行,先找一份工作入行,慢慢会好起来的。如果你想入行算法,后面有机会我再仔细讲一下怎么去做。


http://www.ppmy.cn/news/47739.html

相关文章

(包教包会)最强分布式锁工具:Redisson

今天来聊聊分布式锁的最强实现:Redisson 从分布式锁到Redisson实现非常详细,适合慢慢咀嚼~ 一. Redisson概述 1.1 什么是Redisson? Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。…

八、vue-基础之列表渲染v-for、v-for中的key属性的作用

一、v-for列表渲染 在真实开发中,我们往往会从服务器拿到一组数据,并且需要对其进行渲染。 这个时候我们可以使用v-for来完成;v-for类似于JavaScript的for循环,可以用于遍历一组数据; 二、v-for基本使用 &#xff0…

4.17-4.18学习总结

MD5 MD5: 1、压缩性 2、容易计算 3、抗修改性 4、弱抗碰撞 5、强抗碰撞 为什么需要MD5? 存储一些敏感信息的时候,如果不进行加密会出现安全问题。 例如:系统登录的密码,如果数据库中的密码采用明文,一旦数据库泄…

面了十几家公司测试岗,我终于悟了,面试无非就是这些题

测试岗的面试其实都是大同小异的,这里我收集整理了185道高频面试题,希望对在找工作或者准备跳槽的各位小伙伴有所帮助! 一. 测试基础 1.如何制定测试计划 参考答案: 测试计划包括测试目标、测试范围、测试环境的说明、测试类型…

vue nextTick原理详解

vue nextTick Vue.nextTick() 是一个方法,用于在下次 DOM 更新循环结束之后执行延迟回调。它的实现原理是利用浏览器的异步任务队列机制,在 tick 时刻将回调函数放入队列中等待执行。在实现上,nextTick 方法会根据当前环境选择不同的底层实现…

DCQCN学习

主要思想 发送端的拥塞控制主要有两种形式,一种是基于发送窗口的,另一种是基于rate的 DCQCN是一种基于rate的CC,并主要由ECN机制实现 初始设置sending rate为max line rate 接下来CC主要分为三个部分 CP(Congestion Point) 交换机 出端…

MySQL数据库系统学习(从入门到精通)

MySQL数据库系统学习 一,了解数据库 1.什么是数据库 英文单词DataBase,简称DB。按照一定格式存储数据的一些文件的组合。 顾名思义:存储数据的仓库,实际上就是一堆文件。这些文件中存储了具有特定格式的数据。 2.什么是SQL S…

转义字符(\)对JavaScript中JSON.parse的影响概述

转义字符(\)对JavaScript中JSON.parse的影响 按照ECMA262第五版中的解释&#xff0c;JSON是一个提供了stringify和parse方法的内置对象&#xff0c;前者用于将js对象转化为符合json标准的字符串&#xff0c;后者将符合json标准的字符串转化为js对象。json标准参考<a href&q…