网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
30岁转行做程序员到底行不行?在互联网发展迅速的今天,很多人会产生这样的想法,这篇文章告诉你,没有什么不可以,关键看你怎么做。
背景
改变职业是一件吓人的事情,有时候还会成为一件危险的事情。年龄越大,危险就越高。从头学起一样东西,难度总是非常高,尤其是当你身边的人都比你年纪小,而且比你成就高的时候。我在30岁的时候进入互联网python行业,在这个旅程中我收获了难忘的经历,见到了优秀的人,并且得到了许多机会。
20 多岁的时候,我觉得自己到了 32 岁的时候一定已经找到了自己想要的东西。我曾经憧憬自己成为一个幸福的女人,有着美满的人生,自己喜欢的工作,穿着美美的高跟鞋,而且给自己制定了详细的未来计划。
但是现实和梦想总是存在着差距,我今天脸上的妆还是昨天画的,穿的是老公的衬衫。我的生活的确很幸福,但是和我当初想象的却大相径庭,而我的职业才刚刚起步。我从来不穿高跟鞋,因为我觉得它们不舒服,而对于未来,我根本没有计划!
我用了很长的时间才进入了互联网行业,一路上有眼泪,也有沮丧。本来我的理想是成为一名语言学家,我希望环游世界,在各个知名学府里翻译古代文本。后来,我的母亲不幸的得了癌症,一切对我来说都不再重要了。病痛折磨了她两年半的时间,在这段时间里,我的生活也停滞了。我感到无比难过,大学不再重要,我的学位也不再重要,我刹那间迷失在生活中,漫无目的。
虽然用了一段时间,但是最后我还是从悲痛中恢复了。我突然想到回去做曾经喜欢的 Web 设计工作。我之前一直很喜欢 Web 设计,但是从来没有想过将它作为我的职业。于是我开始学习写代码,并且找到了一个为期两年的项目,我在这个项目中认识了我的组长,他也算我的老师,并且我们最后成为了朋友,我也将他视为是我的导师。他不断的给我设定挑战,并且挖掘了我的潜力。
大约一年以前,我成为了一名全职python web开发者,我想要总结一下这一年的经验,并且和所有人分享,一个 30 多岁的人是如何进入互联网行业的:
我是如何学习python的
一、Python基础阶段
**技能树:**掌握python脚本、python界面编程能力、数据库、基本爬虫、多线程多进程开发能力,可以胜任基本的python开发工作。
知识点细化:
- **数据的存储:**Python概述、进制以及进制转换、原码、反码、补码、第一个Python程序、终端读取与打印等。
- **运算符与表达式:**关键字和标识符、算术运算符、python数据类型、赋值运算符、运算符、复合运算符、条件控制语句(if…else…)、逻辑运算符等。
- **循环:**循环语句之while、循环语句之for、break与continue语句等。
- 基础数据结构:Number与数学函数操作、String(查找,替换,下标索引、列表(常用)、元组、字典(常用)、set集合、迭代器与生成器(常用)、函数概述等。
- **函数:**函数的调用、简单函数的定义、函数的返回值、传递参数、关键字参数、默认参数、不定长参数、匿名函数、装饰器、偏函数、回调函数、变量的作用域、递归函数、目录遍历、递归遍历目录、栈模拟递归遍历目录(深度遍历)、队列模拟递归遍历目录(广度遍历)等。
- **模块:**模块概述使用标准库中的模块使用自定义模块name属性包的概述安装第三方模块virtualenv与时间相关模块。
- 面向对象编程**:**面向对象思想、类与对象、类的方法与属性、构造函数与析构函数、self的使用、重写__ repr__ 与__str__ 函数、访问限制等。
- **继承、封装、多态 :**单继承的实现、多继承的实现、函数重写、人开枪射击子弹小案例、多态、对象属性与类属性、类方法与静态方法等。
- **面向对象高阶:**动态添加属性方法、property、运算符重载、发邮件与发短信等。
- **文件操作与异常处理:**StringIO与BytesIO、文件的管理操作、文件读写(csv、txt)操作、异常处理等。
- **高阶函数与测试:**调试(打印、断言、logging、pdb)
- **排列组合与正则表达:**破解密码(排列、组合、排列组合)、正则表达等。
- **网络编程:**TCP/IP简介、TCP编程、UDP编程等。
二、Linux和数据库阶段
**技能树:**掌握Linux操作系统管理技术,可以搭建几乎所有Linux环境服务器。
知识点细化:
- **Linux操作系统:**常见操作系统、操作系统发展历史、系统的使用、Linux版本、Linux应用领域、虚拟机与Vmware的安装、Linux版本与Ubuntu 16.04、配置自己的Linux系统、编程IDE的安装、apt-get安装软件包。
- **文件系统与用户管理:**目录访问、文件与目录的管理、文件的权限、用户管理。
- **文本操作命令:**文本命令、文本编辑器Vi/Vim。
- **网路命令、进程管理与服务配置:**网络管理命令、系统目录、重要系统文件、设置开机启动与登陆启动、IP配置、服务的启动停止、防火墙配置。
- **Shell编程与bash、源文件编译:**基础IO操作、流程控制、定义变量与环境变量、脚本传参、定时任务、定时系统操作。
- **版本控制:**Git的安装与配置、GitHub的注册与使用、Clone与Fork、Git常用命令、标签、分支与源、多人协作开发。
- **MySQL基本使用:**MySQL的安装、MySQL简介、MySQL基本命令脚本、MySQL与Python的交互。
- **MongoDB的基本使用:**MongoDB安装、MongoDB的基本操作。
- **Redis的基本使用:**Redis安装、Redis的基本操作、Redis的数据类型、Redis的备份与恢复。
三、Python web开发
**技能树:**掌握Python后端框架,解决前后端Web开发问题。
知识点细化:
- **HelloDjango:**BS/CS,MVC/MTV、Django请求流程、Admin管理。
- **Models:ORM、**模型字段属性、CRUD、聚合函数,F,Q对象。
- **Models&Templates:**模型对应关系、模板加载、静态资源、模板语法。
- **Views:**路由规则、反向解析、请求与响应、会话技术cookie,token,ses-sion、文件上传。
- **Advanced:**验证码、分页器、类视图、中间件、日志、缓存、信号、Cerlery、用户权限,用户角色。
- **RESTful:**REST概念、HelloREST、数据序列化、请求与响应、视图,转换器、关系,超链接、认证和权限。
知识点细化:
- **HelloFlask:**Flask介绍、Flask请求、Flask MTV拆分、Flask-Script。
- **Views:**Flask Blueprint、路由规则、错误处理、请求与响应。
- **Templates&Models:**静态资源、模板加载、模板语法、ORM、Flask-SQLAlchemy。
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**