|
此文章由 lllhhc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 lllhhc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 lllhhc 于 2020-11-16 00:44 编辑
我是转行后自学加培训出来的前端,培训完后因为疫情在家里就自己做些项目练练手,怕手生了就不会敲代码了。然后想着也是对找工作有点用处的吧。
但是研究了一下澳洲的IT行业找工作的门道,发现远远没有我想得那么简单啊。因为我没有工作经验,简直是两眼一抹黑。
只能拜托走过路过的大神们帮我指点下反向。比如,我这个项目能算什么程度的前端开发人员,找工作的几率大不大,该往什么反向走?项目该怎么改进之类的...
拜托各位兄弟姐妹了,希望走到此处的各位能留下千金之言。生活不容易,再难也得往前走啊,莫得退路了。
# 个人项目说明:
这个博客项目是RESTfull API风格的前后端分离项目,前端使用的vue, 后端是基于node的Express框架,数据库是mysql。云主机是amazon的EC2,使用docker部署。
从前端到后端,数据库,都是我个人独自完成。期间碰见各种问题,需要学习各种新知识。是对个人的挑战,也是一个学习的过程。
当然,这个项目依然有很多需要改进的地方,和一些还没有完成的部分。会在接下来的空闲时间里,不断的完善。不管有没有其他人用,但至少对我自己来说是一个记录生活点滴的地方。当然,也欢迎大家来使用,帮我一起找bug。
博客功能是基础功能,我觉得亮点在tools里面的todo list和爬小说功能(还在整合代码, 大家可以试试todolist的功能。
我已经把可以在笔趣阁上爬下说的爬虫功能,整理发布到npm上了,如果有兴趣的可以用来下小说,还是很方便的。
直接 npm i biquge-downloader
博客入口:http://3.128.23.128/(账号 demo / 密码:demo)欢迎注册
后台管理项目入口:http://3.128.23.128:8080[/url]
技术栈使用及说明:
### 前端:前端代码仓库(https://github.com/hechuan-li/blogFront.git)
vue@2.0+ 全家桶(vue-cli, vue-router, vuex, axios)
vue-cli(webpack, babel, eslint+prettier)
less(css预处理)
mocha+chai(使用mocha测试框架和chai断言库)
Element-UI,
js-cookie(前端对cookie的读写)
axios(发送请求,请求拦截,写入请求头)
router(进行前端路由拦截,验证token)
Mavon-editor(markdown文本编辑器)
vue-meta-info(给vue页面做seo)
响应式页面(移动端适配):
@media页面查询
flex布局+百分比布局
查询clientWidth,监听尺寸变化,并把结果储存在store
然后在配合v-if和v-show来根据尺寸显示相应布局
写了两套布局,pc一套,mobile一套
暂时只做了首页和登陆页适配,后期会慢慢做其他页面
做响应式有很多种方法,比如rem,vw等。我只选了我比较喜欢的方法
Express(前端服务器)
compression(对前端文件进行gzip压缩)
pm2(管理node应用进程)
Docker:docker仓库
dockerfile(使用dockerfile来构建镜像)
dockerignore(配置忽略文件)
dockerhub (上传保存镜像)
docker run(在云主机上拉取容器)
docker --network(给容器配置网络设置)
没有搞CI/CD,因为自己的项目并没有太多这方面的需求,时间也不够,所以没有用。项目少,也没用compose。以后有需求再学。
Git:(托管代码,根据功能创建项目分支)
前端优化:
gzip压缩代码和图片
webpack打包压缩代码
路由懒加载
合并http请求,减少请求数量
页面缓存,减少请求
后端: github( https://github.com/hechuan-li/blogServer.git )
NodeJs, Express,MVC结构
使用express-generator创建项目
crypto+md5(加密密码)
jsonwebtoken(生成token)
express-jwt(中间件,验证token,设置白名单)
multer(中间件,处理上传文件,配置文件路径)
mysql(配置连接数据库,创建连接池)
express.Router(书写接口,增删改查,是的,我只会curd)
cors跨域(因为前后端都是我写,所以我在后端写跨域比较方便)
cheerio(有一个爬虫接口需要用到)
request(发送请求,写爬虫的时候用到)
docker(后端服务器也是放在docker容器里的)
学习后端主要是为了配合我做前端的项目,所以就是够用的程度。
根据以后的需求,再继续深入的学习。
数据库:
创建数据库
数据库模型设计
创建表
### 亚马逊云主机(Ubuntu 20.04)
实例的创建
ssh连接
开放接口
分配弹性IP
linux操作:
apt-get install 下载软件
vi/vim 编辑文件
scp 远程传输文件
ssh 远程连接
mysql 安装和配置
总结:
这个项目主要是以展示和自己用为主,所以是自己给自己提需求,然后再学相关的技术,然后再来实现。所以涉及的面很多,但是深度却有限,因为我的目的是为了做这个项目,只是学到能用就停了。我的技术栈是以前端为主,对其他层面的了解也能帮助提升开发中的效率。
因为没有ui设计稿,我也不想用主题类框架,所以选择纯手打,只用一些element-ui组件库,整体的ui-design看起来可能有点丑。
当然,边学边做是做开发的常态,而且技术更新迭代的速度也很快,特别是现在的大前端。因为没有人能掌握所有的技术,而且掌握的非常深。只能是需要用到了,我再去学。日积月累,技术栈就会不停的更新迭代。
我的这个项目和实际项目的复杂程度肯定是有很大差异,但是我想通过这个项目展示的是技术背后的一些东西。
首先,我可以独立开发完成一个项目,也算是个小小小全栈吧,不敢说自己技术多么好,至少一个项目的开发流程,开发中的问题,要做哪些事情,我是知道的,也能做到curd。
第二,我可以快速的学习需要用到的相关技术。每个项目的需求肯定是不同的,需求不同那么所需要的技术栈也是不同的,快速学习也是快速开发的一个重要点。 当然,关键是愿不愿意学,知不知道怎么系统的学,学了又该怎么应用到实际项目中。学到能用是第一个层次,往后深入就需要了解其中原理。
第三,对于问题的独立解决能力。开发中的问题和bug数不胜数,但是好在有前人踩过的坑,可以帮助我们快速的定位问题,并解决它。但是,对于一些找不到答案的问题,我们只能加深自己都某项技术的理解,从整体的知识框架角度来定位问题,然后解决时也需要一点自己的想象能力,出其不意。
第四,就是个人对某个行业或技术的兴趣程度。如果只是为了谋生去敲代码,那是个很痛苦的过程。但是如果是真的喜欢,那就能获得巨大的成就感,满足感。相应的工作态度,工作状态都是截然不同,产出的结果也是不一样的。如果没有自己对于开发的兴趣,我可能很难坚持到现在。每完成一个需求点,我就能获得很大的满足感,支持着我继续去做项目。
最后,我的个人定位是 Junior前端。如果大家有合适的intern或全职职位,拜托请帮帮忙,转行后的第一份工作,真的很难啊。
个人联系方式:
电话:0416206469
email: hechuan6469@gmail.com
github: hechuan li
dockerhub: hechuanli
LinkedIn:hechuan li
npm: hechuanli
项目展示:
博客入口:http://3.128.23.128/(账号 demo / 密码:demo)欢迎注册
后台管理项目入口:[url]http://3.128.23.128:8080
持续更新。。。(还有个react项目正在部署) |
评分
-
查看全部评分
|