一个月真的可以学会一门语言吗?

知乎上总看到有人提这个问题, 我想转行,我要学多久才能学会,分享下我到经历,以便你评估一下自身来不来得及,别人是没办法帮你评估的。

我是科班出身,大学四年几乎没学习,有一丢丢基础,毕业一年后几乎和小白一样了。

楼主毕业选择了在读书城市联通公司上班,一个月两千块的月薪,我坚持了两年,实在太没意思了,联通公司经常和领导闹别扭,一个大姐跟我说:你不像联通的人,你像楼下华为的程序员。那个时候我只是当个笑话听了。没想到两年后我真的走上了这条路。

2013年底,25岁的我辞掉了联通的工作,一个人背着一个双肩包有一本书和一个电脑来到了北京,没想到这一来就再没回去。

兜里仅剩1400元,我在北京找了一个床位,一个月400块,就这样,我每天晚上回去睡觉,白天就找个能上网的肯德基带着电脑去学习,用了30天时间把Java基础看了一遍,ssh了解了一点,jsp了解一下。

迫于压力,我没钱了,我必须出去找工作,我简历编造了一年工作经验,先骗到了一些初创公司的面试机会。因为我怕我写上中国联通的工作经验连面试机会都没有。

就这样,我陆陆续续面了十几家公司,带上录音笔。把所有面试题目都记下来。开始背,慢慢的总能覆盖其他面试官的问题,功夫不负有心人,我终于找到了一份外包公司Java开发工作,工资4000,试用期3200三个月,整整45天,来北京45天,那个时候,吃一顿盖浇饭都觉得挺奢侈了,大部分时候都是路边摊买。

我翻出了当年学习记录,如果你还比较困惑到底能不能成,可以参考。

一个月时间充裕,保持每天可以花费6-8小时,那就可以在一个月内完成很多工作。

月目标:

作为初学者,第一阶段目标

  • 熟悉基本概念(变量,循环,条件,函数)
  • 练习30个编码问题
  • build 2个项目练习使用基本语法
  • 熟悉至少2个框架,如Spring,Mybaitis
  • 学会使用IDE,Github

这将使您成为初级Java开发人员,同样使用其它所有语言。

详细规划:

现在,我将为您分解每周计划。

第一周:熟悉Java

只是好奇,看看如何用Java完成事情,哪怕一个加减乘除

  • 第一天:4个基本概念(3个小时): print,变量,if,else
  • 第2天:4个基本概念(5小时):列表 ,for循环,while循环,函数,import
  • 第3天:简单的编码问题:(4小时): 交换两个变量,将摄氏温度转换为华氏温度,将数字中所有数字的总和,检查质数,生成随机数,从列表中删除重复项,等等。
  • 第4天:中等编码问题(5小时): 反转字符串(检查回文),计算GCD,合并两个排序的数组,猜数字游戏,计算年龄等。
  • 第5天:数据结构(4小时): 堆栈,队列,字典,元组,树,链表。
  • 第6天:OOP(5小时): 对象,类,方法和构造函数,OOP继承
  • 第7天:算法(5小时): 搜索(线性和二进制搜索),排序(气泡排序,选择排序),递归函数(阶乘,斐波那契数列),时间复杂度(线性,二次和常数),不要求你会写,知道Java能干这些事儿,如果能写出几个那非常棒了。

要不要使用IDE

有些人到这是矛盾的,但是请相信我。我认识一些朋友,他们没有安装IDE,效率大打折扣,别拽,快速入门,快速动手。

第二周:开始练习(构建项目)

进行软件开发。一起尝试这些东西,以制作一个真实的项目。

  • 第1天:熟悉IDE(4小时): IDE是一个游乐场,今后你要在用它编写大型项目的代码。你需要精通一个IDE,idea or vs code 都行。
  • 第二天:Github(5小时):Github 创建一个存储库。试用Commit,diff和Push代码。另外,学习分支,合并和拉取请求
  • 第3天:第一个项目:简单计算器(4小时):写一个简单的计算器
  • 第4 、5、6天:个人项目(每天5个小时): 选择其中一个项目并开始进行工作。如果您不知道可以从事哪个项目。查看以下列表: 。
  • 第7天:上传到服务器(5小时): 学习服务器和托管 创建一个Heroku设置并部署您构建的应用程序。

第三周:熟练掌握程序

第3周的目标是获得软件开发过程的整体过程。无需掌握所有这些知识。但是您应该了解一些基本部分,因为它们会影响您的日常工作。

  • 第1天:数据库基础(4小时): 基本SQL查询(创建表,选择,位置,更新),SQL函数(平均,最大值,计数),关系数据库(规范化),内部联接,外部联接等
  • 第2天:通过Java使用数据库:(5小时): 使用数据库框架(SQLite/mysql),连接到数据库,在多个表中创建和插入数据,从表中读取数据。
  • 第3,4天:API(5小时): 如何调用API。了解JSON,微服务,Rest API。
  • 第5天,第6天:练习搭建一个开源博客。wordpress or hexo都行。
  • 第7天:学习run一个单元测试,debug日志记录,IDE中调试方法(4小时): 如何设置和检查日志以及使用断点。

机密:

如果你超级疯狂且超级敬业,则可以在一个月内达成目标,你必须像在全职工作一样工作。并手机断网。

老实说,你肯定会分心和困惑。

第4周:认真找工作

你的第4周目标是认真考虑被录用,这个探索过程可以学到很多东西。

  • 第一天:简历:(5小时): 建立一页简历。将你的技能摘要放在顶部。必要时带有Github链接的项目列表。
  • 第2,3,4天:面试准备: 网上搜一些面试题,心里要有谱面试会问什么。
  • 第五天:建立上传到招聘网站。
  • 第六天:海投一些技术岗位,最低要求就好,无需考虑公司怎么样。
  • 第7天:从拒绝中学习: 海投没有回应很正常,耐心等待,复习面试题。

最后:屡战屡败,使劲折磨自己。

本文分享自微信公众号 - 转行程序员(be_coder)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券