作为一名初级全栈开发人员,我希望自己早点知道的 10 个见解
作为一名初级全栈开发人员,我希望自己早点知道的 10 个见解
在Sensivo,我们不断努力改进工作、工作方法和工作环境。今天,我将分享我们每天都在使用的十大实用技巧/工具。让我们马上开始吧!
1. 要有条理
你可以构建数百万个功能,但不要忘记两个术语:
效率和效能。效率是把事情做对;效能是做正确的事情。我们团队使用Trello作为项目管理工具,但实际上选择哪个工具并不重要。任何项目管理工具的黄金法则都是坚持。这就像去健身房一样,应该定期进行。
2. 多花时间在工具上
20年前用记事本写网站还很酷,但现在就不酷了。我们最重要的资源是时间,请明智地利用它。
我们的MEAN 技术栈使用的是VS Code作为 IDE。这款IDE 本身就很棒,但它的扩展功能更是令人惊艳:
-
TSlint/JSlint
-
代码拼写检查器
-
自动关闭标签
-
DotEnv
-
Prettier 代码格式化工具
-
美化
-
Chrome 调试器
-
Angular 8 代码片段 / 适用于 React 或 Vue
-
自动导入
-
自动重命名标签
-
CodeMetrics
-
Git 历史记录
-
GitLens——Git 超级版
-
npm
-
粘贴 JSON 代码
-
SCSS格式化程序
-
SFTP
-
待办事项亮点
-
尾随空格
3. IDE 之外的工具
编码只是全栈开发过程中的一部分。以下是一些可以加快我们工作速度的工具:
-
https://zeplin.io/ — 加速您从草图到HTML/CSS 的开发流程
-
https://squoosh.app/ — 减小网站/应用上所有图片的大小
-
https://bundlephobia.com/ — 保持产品组合精简,但也不要过度包装。业务需求优先。
-
Postman——测试您的 API 并自动生成文档
-
Chrome 扩展程序,例如VisBug、WhatFont、Ruler Measurement、Full Page Screen Capture
-
Lighthouse /性能优化— 仅使用必要的字体,压缩图片,启用gzip压缩以及所有其他能够提升网站速度的措施
4. 安全性
如今,安全是一个热门话题。让我们来看看我们有哪些方法可以帮助我们应对这一问题:
-
Detectify——自动化安全测试
-
https://observatory.mozilla.org/ — 一个很棒的网站检查工具
-
Npm 试用——明智地使用库
-
不要相信前端的输入
-
双重身份验证始终比单一身份验证更好。
-
强制用户使用强密码
-
静态/动态数据保护
-
访问控制/基于角色的访问角色
-
灾后恢复
-
备份
-
GDPR/HIPAA合规性
-
100% 的数据泄露防护?不,关键在于风险和成本。
5. 硬件及我们的工作方式
你的电脑、显示器、鼠标、工作空间——你一天中大部分时间都在与这些东西互动。因此,在你的专业工具上投入一些资金是明智之举。
我们使用的工具:
-
高性能笔记本电脑和外接显示器。我用的是戴尔笔记本电脑,配置是 i7 处理器和 16GB 内存。
-
具有降噪功能的耳机,例如Bose Quiet Comfort,可以帮助更好地集中注意力。
-
我发现一天中部分时间站着工作对我的背部和颈部都很有好处。当然,整天站着工作可能会很辛苦,但是站着和坐着交替工作的效果非常好。
-
笔记本电脑与桌面之间留出空间。让新鲜空气进入笔记本电脑风扇。
-
Angular 中的热模块替换、自动页面刷新、自动导入、自动修复、保存时美化页面。所有这些功能都能提高开发速度并实现自动化。
-
避免分心。平均而言,重新进入最佳工作状态需要 10 分钟。关掉手机,将 Slack 和其他聊天应用设置为“勿扰模式”。对于一些开发者来说,音乐可以帮助他们长时间保持专注。尝试保持专注状态一小时,然后起身休息 5-10 分钟,看看社交网络,做些简单的运动或散散步,然后再继续工作。
6. 代码管理方面呢?
代码基本上就是你每天都在编写的东西,让我们看看如何改进这方面:
-
Git——如今必备工具
-
简洁的信息提交风格——向 Angular 团队学习
-
CI/CD——自动化集成和交付流程
-
VSCode的扩展程序,例如CodeMetrics/TSLint/Prettier——让我们保持代码简洁易读。
-
看看你所在环境中的最佳实践。这是一篇关于Angular的好文章。
-
别忘了github.com和npmjs.com上还有大量完整的解决方案。谨慎选择,查看贡献者列表、启动时间、问题、上次提交日期以及是否通过了测试徽章。
7. 你的商业形象如何?你的软技能如何?
我们首先致力于开发能够解决实际业务需求的产品,初期不会进行过多优化。只有当功能运行良好后,我们才能进行优化/重构、测试(如果您不使用测试驱动开发),并添加相关文档。
需要搭建落地页?或许一个在线网站配置工具就足够了,无需构建一个具备状态管理且测试覆盖率达到 100% 的单页应用 (SPA)。选择合适的工具来完成具体任务。
无论你多么聪明,都要友善对待拥有不同经历的人。有时候,把才华横溢的技术宅招进团队反而会适得其反。
8. 你的信息来源是什么?
随时关注行业动态。Angular 的新版本发布了吗?我们如何提高效率?这部分内容比较个人化,但我会分享我频道里的一些信息:
YouTube:
播客:
-
Codepen Radio
-
句法
中等的。
图书馆的书籍和官方文件
依我经验,这些资源往往被忽视了。
一篇关于软件开发人员“必备”书籍的非常好的文章
我还找到了https://www.goodreads.com/ 这个网站,你可以在上面整理你的阅读记录,还能看到你圈子里其他人都在读什么。
9. 服务器技术和数据库
尽管全栈开发越来越注重前端,并借助Firebase、Nhost(GraphQL)、AWS Lambda等工具,但了解后端知识仍然非常重要。以下是我们使用的工具:
-
后端语言和框架可以选择以下之一:Laravel/PHP、Node.js/Express、Python/Flask或.Net/Java,具体取决于您的技能和项目需求。
-
使用 PuTTY/终端通过 SSH 连接到远程服务器,并使用WinSCP进行文件传输。
-
SQL/NoSQL 数据库以及它们彼此使用的情况
-
Redis或Memcached
-
Unix基本命令/ crontab
-
Vim/Vi——用于文件编辑或高级编码 :w!
-
Git命令
-
用于通知的Telegram 机器人
-
虚拟机/ Docker容器
10. 保持开放的讨论态度
全栈开发是一个热门话题,每天都有新的库、扩展和最佳实践涌现。我诚邀您在下方评论区参与讨论,分享您的技巧、工具或心得体会。✌
附:
这是我第一次在这里写文章。
下一篇文章我想分享一下作为一名全栈开发者如何创建自己的创业公司,请大家多多点赞💖或分享——这真的是莫大的鼓励✌
文章来源:https://dev.to/skobe/10-insights-i-wish-i-had-known-as-a-junior-full-stack-developer-11kc