当前位置: 首页 > 科技观察

2019-Web开发技术指南和趋势

时间:2023-03-13 23:15:14 科技观察

这是一份让你在2019年成为前端、后端或全栈开发者的进阶指南:1.你不需要学习所有的技术成为Web开发者2.本指南只是列出了技术optionsbysimpleclassification3.我会根据我的经验和参考资料给出建议4.***我们会介绍常识,***介绍2019年Web的一些趋势1.前端开发基础1.1最基础的知识HTML&CSS:SemanticHTMLelement-basedCSS语法Flexbox&GridCSS变量浏览器开发者工具1.2响应式布局响应式设计将不再是网页的加分项,必须设置viewport非定宽媒体查询使用rem代替px移动优先,柱状显示1.3基本部署工作学习如何将静态网站部署到服务器注册域名(NameCheap、GoogleDomains)管理共享主机或虚拟机(Inmotion、Hostgator、Bluehost)FTP、SFTP文件上传(Filezilla、Cyber??duck)静态页面托管(Netlify、GithubPages)1.4SASS预处理器不是必须的,但建议学习,基础知识很简单掌握结构化CSS变量嵌套样式表Minxins&函数继承1.5NativeJavaScript语法不使用任何框架和库区学习原生JS语法数据类型、函数、条件判断、循环、聚合DOM操作和事件JSONFetchES6+(箭头函数、Promise、async/await、解构)1.6满足基本前端开发需求条件构建静态站点构建UI布局(可以使用HTML/CSS还原设计)添加一些交互功能部署和维护站点现在你可以找到最先进的Web开发工作,但这远远不够......2.一个成熟的前端开发者2.1HTML&CSS框架HTML/CSS框架没有以前那么有意义了,但还是介意你选一个学(这里作者想暗示的是,在jquery时代,HTML/CSS框架工作学习是必须的)。博otStrapMaterialiseBulma2.2Git和其他工作流工具Git绝对是每个web开发者必须掌握的工具,这里给其他工作流工具一些建议。基本命令行(touch、cd、mkdir等必须会,命令行会在以下工具中使用)Git(版本控制)NPM或Yarn(包管理)Webpack或Parcel(打包工具)Gulp或Grunt(任务管理和构建工具)编辑器插件(ESLint、Prettier、LiveServer等)2.3前端框架学习前端框架是当前前端开发的必修课。在大公司的开发中很受欢迎。更多的交互&有趣的UI组件组件化&前端代码模块化,有利于团队。2.4使用状态管理对于框架的大型前端项目,你可能需要使用状态管理工具来管理你的应用级状态Redux(ContextAPI)Apollo(GraphQLClient)VuexNgRx2.5满足条件成熟的前端开发人员,流畅构建优秀的前端应用稳定的前端工作流程和多人开发&熟练使用Git请求后端API&前端数据响应满足以上条件,就可以顺利找到前端的工作,好好干~3.全栈开发工程师3.1学一门课程后端语言要成为全栈工程师或软件工程师,你需要学习一门服务端语言及相关技术学习顺序:基本后端语言语法数据结构和工作流包管理HTTP/路由3.2server-sideframework不重复轮子,学习一个框架构建更好更快的应用数据库会用到,这里是some选项:关系数据库(MySQL、PostgreSQL、MSSQL)非关系数据库(MongoDB、Couchbase)云服务(Firebase、AWS,Azure,DocumentDB)Lightweight(SQLite,NeDB,Redis)3.4服务器端渲染React,Vue,Angular端框架都可以进行服务器端渲染Next.js(React)Nuxt(Vue)AngularUniversal(Angular)3.5内容管理系统内容管理系统允许快速开发并为您的客户提供更新内容的能力。当您需要快速开发网站时,它们非常有用。特别是对于自由开发者。基于PHP(Wordpress、Drupal)基于JS(Ghost、Keystone)基于Python(Mezzazine)基于.Net(Piranha、OrchardCMS)3.6DevOps和部署学习语言和框架是一回事,但安装环境,testinganddeploying是另一个Deployment(Linux,SSH,Git,Nginx,Apache)Platform(DigitalOcean,AWS,Heroku,Azure)Visualization(Docker,Vagrant)Test(UnitTest,IntegrationTest,FunctionalTest,SystemTest)3.7满足全栈工程师需求条件设置全栈开发环境和工作流程构建后端服务API和微服务数据库操作可独立开发应用(前端和服务端)部署到云端(SSH、Git,Servers等)4,2019技术趋势及其他4.1原生应用开发ReactNative(使用React构建原生应用)NativeScript(Angular,Typescript,JavaScript)Ionic(HTML/CSS/JS实现混合应用)Flutter(使用Dart语言开发opmobileSDKfornativeapplications)Xamarin(在C#Mobileapplications中开发)4.2使用Electron开发桌面应用程序Electron是一个使用JavaScript构建跨平台桌面应用程序的工具。它使用Chromium内核和Node.js,兼容Windows、Mac和Linux崩溃报告、调试和性能分析分析4.3GraphQL&ApolloGraphQl是一种革命性的API新方法。查询语言比标准RESET严格得多。只查询你想要的。前后端可以更顺畅的配合。查询语句非常简单,看起来像一个JSON语句。Apollo是一个使用Gatsby静态站点生成器向GraphQL发送请求的客户端4.4TypeScriptTypeScript是JavaScript的超集,它添加了静态类型和许多其他功能。变量、函数等类型类等ES6特性在Angular中使用,也可在React和Vue4.5ServerlessArchitecture中使用无需创建和管理自己的服务器使用第三方服务来执行诸如“无服务器功能”之类的作为AWS、Netify&Firebase流行的Gatsby静态站点生成器ServerlessFramework4.6AI和机器学习AI和机器学习已经广泛应用于所有程序和技术,甚至在Web开发中。机器学习可以让Web应用程序随着时间的推移进行调整。虽然人工智能还有很长的路要走,但我们会看到它会在网络上得到更多的应用。虽然目前大部分都是用Python写的,但也有Tensorflow.js、Brain.js等JS库。4.7区块链技术现在很多公司都使用区块链技术进行数字交易,因为它更安全、更高效。Solidity(智能合约的编程语言)Mist(以太坊开发的用于发送交易和合约的浏览器)BitcoinAPI(可以构建应用程序并集成比特币4.8PWAProgressiveWebApps是一种网络应用程序,但它是一种为用户带来原生应用在功能和风格上的体验。Responsive也可以在离线环境下提供服务。App-like交互HTTPS可靠,更快,更好4.9WebAssembly-like编译后的二进制代码可以被浏览器执行。可以这样写在C/C++、Rust等高级语言中,比JavaScript强制浏览器同源和安全协议开放&可调试更快更安全