[转帖]2019 简易Web开发指南
2019年即将到来,各位同学2018年辛苦了。 不管大家2018年过的怎么样,2019年还是要继续加油的! 在此我整理了个人认为在2019仍是或者将成为主流的技术与大家分享,包括前端、后端和全栈相关。
工具、软件
欲先攻其事必先利其器,用好工具是做好开发的基础。
- 编辑器/IDE: VSCode,Sublime Text,Atom
- 浏览器:Chrome,Firefox
- 设计/原型:Adobe XD,Photoshop,Sketch,Figma
- 命令行工具:Git Bash,WSL,iTerm2,Hyper
- 版本管理:Git
前端
前端我觉得是每个做web开发的同学都应该掌握的,就算是做后端开发的,基本的前端知识也是必不可少的。
HTML & CSS
响应式布局(Responsive Layout)
Sass
- Structured CSS
- Variables
- Nested CSS
- Mixins & Functions
- Inheritance
Javascript
- Data Types, functions, conditionals, loops, operators
- DOM操作,Events
- JSON
- Fetch API
- ES6+ (arrow function, promise, async / await, destructuring...)
HTML / CSS 框架
html/css将被逐渐弱化,但是掌握一两个流行框架还是有必要的。
JS框架
状态管理(state management)
后端渲染(server side rendering)
开发工具
移动端
有了前端的知识后,我们还可以开发手机app。
- React Native:使用react开发原生应用
- NativeScript:使用Angular/TypeScript/Javascript开发原生应用
- Ionic:使用html/css/js开发混合应用
- Flutter:使用Dart语言开发原生应用
- Xamarin:使用C#开发原生应用
桌面端
甚至桌面app!
- Electron:使用chromium和node.js,兼容windows,mac,linux
后端
语言
前端同学如果想成为全栈,学一门后端语言是必不可少。
- Node.Js:就算不做全栈,nodejs也将成为前端的必备技能
- Python:如果除了web开发想往人工智能、机器学习、数据分析方向扩展的同学,python更合适
- C#:个人很喜欢的语言,非常优雅和高效
- Go:越来越流行的语言,有很强大的标准库,减轻对第三方的依赖
- PHP:虽然很多人觉得shitty,但是不得不承认太多网站都是php写的,wordpress实在太流行了
后端框架
数据库
- 关系型:MySQL,PostgreSQL,MS SQL
- NoSQL:MongoDB,Couchbase
- 云存储:Firebase,AWS,Azure Cosmos DB
- 轻量级:SQLite,NeDB,Redis
CMS(Content Management System)
如果不想自己开发网站的时候,用个现成的CMS系统也是不错的。
运维基础
基本的运维知识也是需要的,不然自己写个网站搞不上线多着急。
- 注册域名:Namecheap,Google Domains
- FTP,SFTP文件上传:Filezilla,Cyberduck
- 部署:Linux,SSH,Git,web服务器(Nginx,Apache)
- 虚拟化:Docker,Vagrant
- 静态托管服务:Netlify,Github Pages
- 托管共享主机 & VPS:Inmotion,Hostgator, Bluehost
- 云平台:Digital Ocean,AWS,Heroku,Azure
其他
GraphQL & Apollo
GraphQL简而言之是一种API 查询语言(QL = query language),提供了一种革命性的API实现方式。GraphQL是一种规范(specification)而不是实现(implementation)。而Apollo是GraphQL最火的实现。更多请参考:Awesome GraphQL。
TypeScript
TypeScript诞生已经有好几年了,近两年变得很火,很多框架和工具都是typescript写的,比如vscode,angular,ant-design,更多请参考 github。对于想开发框架或者库的同学typescript很值得学,但是优先精通es6+babel的开发方式。
PWA (Progressive Web Apps)
用户体验是个永恒的话题,大家都想使用体验如原生应用的网站,所以PWA是个必然的趋势。更多请参考 github awesome PWA
WebAssembly
或许WebAssembly可能不会取代javascript,但是当所有人都开始谈论它的时候,为了好奇心也要学一下。。
[转帖]2019 简易Web开发指南的更多相关文章
- Django web 开发指南 no such table:
在学习django web开发指南时,发布新博客点击save后会有error提示:no such table balabalabala... 百度了一下说重新运行manage.py syncdb 就可 ...
- Django Web开发指南笔记
Django Web开发指南笔记 语句VS表达式 python代码由表达式和语句组成,由解释器负责执行. 主要区别:表达式是一个值,它的结果一定是一个python对象:如:12,1+2,int('12 ...
- [转帖]cocos2d-x 3.0rc开发指南:Windows下Android环境搭建
原文请看:http://blog.csdn.net/linzhengqun/article/details/21663341 鲜红字体请注意:文中红色字体乃是本文博主阳光下的蒲公英添加.红色字体部分造 ...
- HTML5移动Web开发指南-学习笔记(一)
一,浏览器引擎 浏览器的内核引擎,基本上是四分天下: Trident: IE 以Trident 作为内核引擎; Gecko: Firefox 是基于 Gecko 开发; WebKit: Safa ...
- django1.8.3搭建博客——2 django web 开发指南阅读笔记
一. django框架 1 .http封装web服务的整个过程.由请求(request)和响应(response)两部分组成. 请求的内容为URL (指向文档的路径). 响应主要为正文(body ...
- 测试同学动手搭个简易web开发项目
技术栈 node.js, vue.js, axios, python, django, orm, restful api, djangorestframework, mysql, nginx, jen ...
- 快速使用node.js进行web开发
首先关于node.js的学习,这里推荐一本比较好的教程,nodejs web开发指南,该书通俗易懂地将node.js语言特性讲解完之后,又从一个项目角度带领读者使用node.js学习web开发.相信这 ...
- IC卡读卡器web开发,支持IE,Chrome,Firefox,Safari,Opera等主流浏览 器
IC卡读卡器在web端的应用越来越多,但是早期发布的ocx技术只支持IE浏览器,使用受到了很多的限制.IC卡读卡器云服务的推 出,彻底解决了以上的局限,使得IC卡读卡器不仅可以应用在IE浏览器上,还可 ...
- 2019 Vue开发指南:你都需要学点啥?
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://dzone.com/articles/vue-development-in-2019 ...
随机推荐
- Python2.7-sched
sched 模块,实现了简单的事件按计划时间表执行的功能,缺点在于运行的时候会占用主线程,直到事件执行完毕,更好的方法是用 threading.Timer 类 创建实例方法: sched.schedu ...
- day72
今日内容: 1 创建多表模型(详情见代码) from django.db import models # Create your models here. class Publish(models.M ...
- C语言各种数据类型取值范围
速查表: char -128 ~ +127 1Byte -2^7 ~ 2^7-1 unsigned char 0 ~ 255 1Byte 0 ~ 2^8-1 short -32767 ~ + 3276 ...
- 20155308 《网络攻防》 Exp3 免杀原理与实践
20155308 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测 ...
- [Python]-pip-ReadTimeoutError: Read timed out 问题
问题描述 就是在安装Python包的时候,由于时间太长引起的超时问题 问题解决 第一个办法是更改源地址:在 ~/.pip/ 下创建文件 pip.conf(如果还没有的话), 模版如下: [global ...
- 20155331 丹增旦达 网络攻防 Exp2后门原理与实践
20155331 丹增旦达<网络攻防>Exp2后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...
- 在ListBoxItem的样式中的button传参,把当前选中项传递到命令的方法
原文:在ListBoxItem的样式中的button传参,把当前选中项传递到命令的方法 前端页面: <Style x:Key="ThumbItemStyle" TargetT ...
- PostgreSQL索引页
磨砺技术珠矶,践行数据之道,追求卓越价值 [作者 高健@博客园 luckyjackgao@gmail.com] 本页目的,是起到索引其他所有本人所写文档的作用: 分类一:PostgreSQL基础 ...
- MiZ702学习笔记11——如何使用vivado isim仿真
说到vivado的仿真确实是很有意思,不管是ISE还是Quartus都可以自己自动生成测试平台的完整构架,但是vivado不行,所有的测试代码自己写!(我反正是查了好久,都没发现vivado如何自动生 ...
- 汇编 ADD指令
知识点: 加法汇编指令ADD 一.加法指令 ADD(Addition) 格式 格式: ADD A,B //A=A+B; 功能: 两数相加 . OPRD1为任一通用寄存器或存储器操作数,可以是任意一个 ...