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 & CSSHTML5CSS3Flexbox (简易教程),CSS Grid (简易教程)CSS Variables (Custom Properties)响应式布局(Responsive Layout)设置ViewportMedia queryrem-based layoutMobile First DesignSassStructured CSSVariablesNested CSSMixins & FunctionsInheritanceJavascriptData Types, functions, conditionals, loops, operatorsDOM操作,EventsJSONFetch APIES6+ (arrow function, promise, async / await, destructuring…)HTML / CSS 框架html/css将被逐渐弱化,但是掌握一两个流行框架还是有必要的。BootstrapMaterializeBulmaJS框架React:目前最流行Vue:简单易用,越来越多人用Angular:曾经很流行,现在有点衰退状态管理(state management)ReduxVueXNgRxApollo (GraphQL Client)后端渲染(server side rendering)Next.js (React)Nuxt.js (Vue)Angular Universal (Angular)开发工具依赖管理:NPM,Yarn应用打包:Webpack,Parcel任务管理:Gulp,Grunt编辑器扩展:ESLint,Live Server,Prettier移动端有了前端的知识后,我们还可以开发手机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实在太流行了后端框架Node.js:Express,Koa,AdonisPython:Django,FlaskC#:ASP.NETPHP:Laravel,Symfony数据库关系型:MySQL,PostgreSQL,MS SQLNoSQL:MongoDB,Couchbase云存储:Firebase,AWS,Azure Cosmos DB轻量级:SQLite,NeDB,RedisCMS(Content Management System)如果不想自己开发网站的时候,用个现成的CMS系统也是不错的。PHP:WordPress,DrupalJS:Ghost,KeyStonePython:Mezzazine.NET:Piranha,Orchard CMS运维基础基本的运维知识也是需要的,不然自己写个网站搞不上线多着急。注册域名:Namecheap,Google DomainsFTP,SFTP文件上传:Filezilla,Cyberduck部署:Linux,SSH,Git,web服务器(Nginx,Apache)虚拟化:Docker,Vagrant静态托管服务:Netlify,Github Pages托管共享主机 & VPS:Inmotion,Hostgator, Bluehost云平台:Digital Ocean,AWS,Heroku,Azure其他GraphQL & ApolloGraphQL简而言之是一种API 查询语言(QL = query language),提供了一种革命性的API实现方式。GraphQL是一种规范(specification)而不是实现(implementation)。而Apollo是GraphQL最火的实现。更多请参考:Awesome GraphQL。TypeScriptTypeScript诞生已经有好几年了,近两年变得很火,很多框架和工具都是typescript写的,比如vscode,angular,ant-design,更多请参考 github。对于想开发框架或者库的同学typescript很值得学,但是优先精通es6+babel的开发方式。PWA (Progressive Web Apps)用户体验是个永恒的话题,大家都想使用体验如原生应用的网站,所以PWA是个必然的趋势。更多请参考 github awesome PWAWebAssembly或许WebAssembly可能不会取代javascript,但是当所有人都开始谈论它的时候,为了好奇心也要学一下。。