首页>问答区>Web前端报班好还是自学好?

Web前端报班好还是自学好?

  • 1回答
  • 155浏览

请问大家学习web是报班好,还是自学好?我想自学可以吗?

展开
收起
廖**先生2021-06-18

最佳答案

凌**老师 2021-06-18回答

网络前端学习报班好还是自学好?多年来IT从业人员,用清晰的思路为大家分析一下这个老生常谈的问题。

 

首先培训和自学哪个靠谱。先听我下面的分析,然后感觉是培训靠谱还是自学靠谱。

 

第一类:假设你是一个已经在社会上工作的人(年龄在24-30岁之间),不管你是从事电子、机械、建筑等工作,总之,你是觉得现在工资低,以后也涨不了多少,只能养活自己的人。

1.第一种学习心态。

你们受够了现在的工作状况和收入状况,你们下定决心一定要转行,无论多么困难,你们都必须转行成功,虽然现在做IT的人很多,但你们必须分一杯羹,如果你们是这样的心态,我建议你们一定要去培训,不要想着自学这条路。

理由如下:

既然你有这么大的决心,选择条件好的学习方法学习,训练可以使你的学习条件更好,成功的概率大幅度增加,老师教你,有专业的课程。

 

2.第二种学习心态。

尽管你对现在的工作不满意,但你患得患失,不想失去收入,但又想改变,但你的勇气并不大,看着身边的朋友做IT很赚钱你很羡慕,但还没有勇气,这种情况,抱着试一试的心态,我建议你在网上自学。

理由如下:

当你没有下定决心学习IT技术时,你不应该选择培训,因为你的动力不强。网上自学对你的损失最小。

 image.png

第二类人:你是毕业生,但是因为之前大学四年都荒废了,现在你很恐慌,意识到没有技术没有工作的痛苦。

如果你认准学习Web前端技术,那就是为了以后能有一份高薪的工作,而且你对自己学习Web前端还是很有信心的,我建议你去培训。由于您对工作的迫切需求,您肯定不会像大学那样贪玩不学习,您会非常认真。假如你是这样的情况,不要自学,自学是时间很长的人才所做的事,对于那些迫在眉睫的刚毕业的人来说,不要这样想天开,浪费时间。

2. 如果你是那种学习和尝试的人,如果你能成功学习,如果你不成功,你可以随便找一份其他工作,那么你可以自学。

 

第三类:假设你是学校的学生,现在是大一、大二、大三、大四的阶段。

我完全建议你利用在学校的时间自学,我也上过大学,因为大学学习的课程一般都,学的很多,但是说到找工作,基本没有这样的能力。所以在大三的时候找到一个方向是极其重要的。

Web前端技术应该是一个日积月累的学习过程,了解的时间越长,你的技术就越熟练,如果条件还可以的话,可以选择报名参加网上培训课。条件一般,就要脚踏实地地地利用没毕业的阶段好好学习技术,学一年半载,除非你没有用心,否则找不到工作。

 

不管是自学还是培训,我的指导建议如下:

第一,你要正视一个问题,训练不等于有了工作,训练只是一个让你有更好条件去学习的地方,所以去训练的人要放平心态。如果你明白了,你是在学习,而非完成某项任务。学习永远是你自己的事,不要依赖别人,不管是训练还是自学,都需要你自己主动去学习,最终的结果往往取决于平时的训练结果,运动员都是这样,谁训练刻苦,最终谁赢。平常养成良好的学习习惯,你可以学得更好的东西。

 

不管是什么专业,你都要明白,多和专业人士沟通,不懂得沟通的人,你永远不会进步,包括以后的工作,多沟通是你进步的主要手段之一。

 

因此我对这个问题的回答就是这样,不管是自学还是培训,哪一个都不可靠,主要是你自己适合什么,你是什么样的人群决定了你是应该培训还是自学。

热门问答

程序员如何高效提升保持学习动力?
  • 1回答
  • 28122浏览
喜欢的同学记得添加小渡呦!一起进入前端学习 [attach]372038[/attach]
现在直接学vue3.0,还是需要先学vue2.0?
  • 1回答
  • 318浏览
如今开始学习,理论当然是直接上手3。但目前3还不推荐用于生产项目,周边生态还需要时间来完善。实际上现在开始学习2、基础知识、组件这些,学习扎实。接着3也差不多了。这是一个更好的方法。而这种学习也可以激发你的思考,3提供了什么新的变化,为什么要弄组合api,这样对理解3更有好处。事实上,基本语法基本上没有什么变化,所以,新学vue的人,更建议先把2的基础学好,然后对比3的升级,不同的地方,一起学习。等你学好了可以做项目,3也可以用在项目上。刚开始学习的时候用angular1.x,当时Angular2刚进beta版。使用一年后,许多开源UI库向2迁移,旧版本不支持新功能。但由于当时已经用1.x建立了几个独立的系统,没有足够的人力重构。但是由于1.x版本本本身的性能问题,必须投入更多的人力进行优化。这是一个深坑。前阵子在新团队开个新坑,考虑了这个问题。最后在vue2和vue3之间选择了react+antd。主要的考虑的点是,团队人力不足,只能在现成的框架上进行开发;vue3刚发布,而新的组件库还需要一段时间才能跟进;选择vue2后续没有精力跟进更新,选择vue3前期踩坑避免不了。< img class="cto- img" src="https://s2.51cto.com/images/20210720/1626752488173270.jpg" title="1626752488173270.jpg" style="display:block;margin:auto;" alt="4.jpg"/>以我经验,编程真的是需要不断写,才能领悟。同样的逻辑,你会边写边思考,重复了的地方,你写烦了就知道思考优化,深入研究。而目前用2加生态可以在实战项目中去学习,3目前可能就自己先玩玩。
Web前端的自学学习计划如何制定?
  • 1回答
  • 179浏览
随着互联网的快速发展,越来越多的人投身于互联网前端的学习,那么如何规划自学前端的学习呢?学到的技能包括什么方面?对于HTML5新手来说,我有一些关于HTML5方法的建议,希望对想要学习HTML5的同学有所帮助。 自学的前端,首先要知道前端是什么学习的内容是什么?每天能抽多少时间。 < img class="cto- img" src="https://s2.51cto.com/images/20210618/1624007147645841.png" title="1624007147645841.png" style="display:block;margin:auto;" alt="image.png"/>介绍网络前端开发中应掌握的技术1、理解HTML非常简单,基本上掌握div、formtable、Ulli、p、span、字体等标签,这些标签经常被使用,特别是DIV和表、DIV、表可以用于布局,但不灵活,也可以用于处理基本表。 2、学习CSS,CSS不包括CSS3Web前端开发技术人员,可以使用HTML或CSS+CSS+DIV的接口布局,因此CSS用于协助HTML的布局和显示,被称为CSS风格,为什么DIV+CSSdiv说HTML主要用于布局,div是这个东西的核心!CSS必须掌握浮动、位置、宽度和高度,大值和小值,100%溢出、边缘、填充等。这些都是与布局有关的样式。 3、接下来是JS的学习。开始JS的时候很简单,不需要太多东西,只需要根据ID或者名字DOM,或者风格或者价值,然后使用ID或者名字元标签,或者在HTML中添加数据,这和数据的操作有关,然后数据逻辑的影响,不外乎是跳转、弹出框、隐藏什么,这些都是其他应用的组合,代码一点也不难,整合这些基本的JS。百度的其他东西很好。再多看看,没什么大不了的。 4.学习jQuery相当于包装JS插件的JS。目标是使操作更加方便,编写的代码更少,jQuery目非常简单。这就是切点,学JS,只需要修改JQ代码。其馀的就像百度。 5.最好指出java、php等背景语言。为什么?因为我们是前台接口数据,所以从后台到积分,如果是后台代码的话,就知道如何与后台数据进行互动,这是很好的,节省了时间,也可以使前台代码更加规范。否则,你回来的数据可能无法忍受,前端代码可能会重写。 6.学习CSS3+HTML5,为什么迟到?现在企业喜欢前端人员、复合型人才和提高能力的人,所以打算进入专业领域,学习会更好。 以上6点基本上是网络前端开发技术人员掌握的技术,对于初学者白来说,掌握以上技能基本上可以进入网络前端。 以上是小编今天共享的关于如何制定网络前端的自学学习计划的文章,希望这篇文章能对学习网络前端知识的伙伴们有所帮助,最后希望伙伴们工作顺利。
前端小白如何学习Web前端技术?
  • 1回答
  • 164浏览
随着网络前端的快速发展,越来越多的人学习网络前端。在移动互联网时代,我相信我们每个人的手机都有几十个应用程序。这些应用程序的开发实际上与当前流行的网络前端开发密切相关。那怎样零基础学习网络前端呢? 一、开发网络前端所需的知识技能和学习路径。1.HTML5+CSS3+JavaScript。在网络开发的基础上,HTML负责网页结构,CSS负责网页风格,JS负责逻辑交互。前者更像是标记语言,没有逻辑,JS是前端最重要的。大多数HTML5新技术需要与JS相结合。每个人的学习进度可能不一样。这个阶段主要是模仿站,熟悉基础,尝试用CSS写响应页面,了解JS的深度知识,比如原型链,封闭包,设计模式等等。,需要更多的积累,逐步理解和掌握。 2.JQuery+BootStrap+Ajax+Json。JQuery是JS的应用库,可以提高本地JS开发的效率。Bootstrap是一个响应框架,更容易实现手机/平板/PC多台设备的页面支持。Ajax技术用于异步交互,可以在不刷新页面的情况下更新数据,比如地图应用。Json是一种数据格式,广泛应用于各种编程语言。jQuery和bootstrap可以简化大量编写的代码,使用起来非常愉快,但对于基础不太扎实的人来说,建议使用较少。Ajax和json通常用于后端交互,也经常用于实际业务。 3.Git/SVN。版本管理工具主要用于避免团队开发中的文件冲突和归档。前端建议学习Git。 4.Nodejs+Mysql/MongoDB(可选)JavaScript在服务器上运行。Express是其MVC框架的扩展。在这些网站中,nodejs最常用的是npm包管理器,无需从各个网站下载资源包。学习数据库可以选择MongoDB或MySQL。前者与Nodejs匹配程度较好,但目前大部分网站都是PHP+Mysql的组合。如果你打算学习PHP,你可以先学习Mysql。 5.ECMAScript6。JavaScript语言标准 6.angular/React/Vue。头三个主要框架,各有各的生态系统,根据需要自己选择学习。目前企业需求最大的还是Angular,但从最近的趋势来看,react和vue更受欢迎。因为前端技术的发展过于突飞猛进,工具和框架的更新速度都比翻书快,所以建议学习还是阅读文比较好。在学习过程中也会遇到很多使用各种建筑工具的情况。 7.其他常用工具。它还可以根据需要自行选择学习。现在比较常用的是Webpack,它可以包装各种不同编程风格的文件,如ES6/AMD/CMD等模块化文件,可以识别和编译成浏览器可运行的文件。Sass/Less,CSS预编译框架,CSS代码可以通过逻辑方式编写。Gulp/Grunt构建工具可自动压缩和合并代码。 8.其他后端编程语言。现在,市场基本上需要PHP/JAVA/Nodejs/Python等后端语言。学习编程最重要的是练习,多敲代码,多尝试。要有独立解决问题的能力,要有探索和研究的精神。感兴趣的人也可以建立自己的技术博客,向github上传一些开源项目,这些都是很好的加分点。优秀的程序员,不仅仅是程序员。 < img class="cto- img" src="https://s2.51cto.com/images/20210618/1624010763940467.png" title="1624010763940467.png" style="display:block;margin:auto;" alt="image.png"/>二是前端学习注意事项。第一,打好基础。无论做什么,都要有扎实的基础,参加网络前端培训也不例外。只有坚实的基础,才能更深入的学习新技能。作为一名初级网络前端工程师,你必须具备最基本的技术要素:HTML、CSS、JavaScript。作为一名网络前端工程师,这是必须的。网络前端的入门门槛其实很低。相对于其他语言,他是一个先快后慢的过程。所以在早期的学习过程中,你会很容易掌握它的基本技能。随着HTML5技术的广泛应用,网络前端的学习会变得更容易。 第二,注重细节。常言道细节决定成败,许多网络前端开发人员为了追求工作过程中的速度,忽略了一些细节。例如对代码进行注释,代码命名规范,代码简单等。这看起来并不重要,但实际上严重影响了项目的进度和自身能力的提高。适当添加注释可以加深对技术点的印象,也方便以后在修改过程中快速搜索;标准化的代码命名可以方便团队间的交流,提高工作效率;简单的代码可以直观地显示某一代码的功能。 第三,不断加强学习。优秀的网络前端工程师之所以优秀,不是因为他们有多长时间的工作,而是因为他们有快速学习的能力。网络前端开发是一项特殊的工作,涵盖了广泛的知识,网络行业的技术更新非常快。没有快速学习的能力,很难跟上时代的步伐。因此,作为网络前端工程师,我们必须不断学习和提高技能。 以上是今天分享的关于如何零基础学习网络前端技术的文章,希望对从事网络前端工作的朋友有所帮助。
Web前端是什么?如何入门Web前端?
  • 1回答
  • 158浏览
什么是网络前端?网络前端应该如何开始?让我们看看我下面的答案。我希望这对大家有帮助。 一、什么是网络前端?工作流程是从UI获得原型图和效果图,在项目(站点、微信号公共编号、小程序、WEBAPP)中恢复图像效果,与后台交流各种数据。目前,前端市场整体处于快速发展期,市场对前端的需求也一直很大。市场对中高级前端工程师的需求更加迫切,即使进入前端门,也要不断提高自己,无论是学院派还是训练派,还是自学派,都要有很强的学习意识。 < img class="cto- img" src="https://s2.51cto.com/images/20210618/1624006587218458.png" title="1624006587218458.png" style="display:block;margin:auto;" alt="image.png"/>二、目前入门前端的人群分类。1、计算机相关专业出身。系统通过计算机的理论基础,如计算机组成原理、操作系统原理、计算机网络、算法数据结构、设计模式,至少使用了2门以上的编程语言(强型+弱型)。优点:理论、结构牢固,有整体计算机思维,内功好,外功学快。缺点:有些人,前端细节技术不牢固,但花时间很快就能处理。2、非计算机出身自学(包括计算机专业不学习)理论基础薄弱,后来由于个人兴趣和职业需求,自学前端开发技能。优点:自学能力强,可以根据自己的兴趣计划学习内容。缺点:有些人对前端没有整体的学习框架,属于东一片,西一片,没有系统,有些人的计算机没有整体的思考,建议系统整理前端的知识系统结构,应该补充。 三、入门前端时的一些困境。1.由于一些基本算法和数据结构理论不牢固,一些编程思维难以理解。例如,如果原型链明确了数据结构中的链表结构,那么很难理解这一点,例如哈希值,如果知道数据结构中的哈希值,哈希值也会解决。2.计算机系统结构、操作系统理论、网络理论不牢固,后期难以理解。例如,从前端学习开始,学习node开发的学生在I/O、程序、程序、IPC、程序锁方面很难理解概念,不能很好地使用node的api。3.前端整体系统结构没有深入思考。使用方便,但不知道为什么使用,另一个有什么区别。4.学习环境中没有名人。没有专家能指导自己进入下一个水平。5、有意识但没有行动。我的网盘收集了很多资料和录像,之后就没有了。 四、如何快速开始前端。1、学习东西,自学是一种方法,但在自学过程中,很多人处于不知道自己的状态。2、还有一种就是跟着高手,开阔视野,达到知己知彼的境界,从而有方向,在短时间内进入新境界,节省时间成本。 以上是小编今天分享的网络前端是什么?网络前端应该如何入门的文章,希望这篇文章能对从事网络前端工作的伙伴们有所帮助,最后希望伙伴们工作顺利,成为优秀的网络前端工程师。
Web前端报班好还是自学好?
  • 1回答
  • 154浏览
网络前端学习报班好还是自学好?多年来IT从业人员,用清晰的思路为大家分析一下这个老生常谈的问题。 首先培训和自学哪个靠谱。先听我下面的分析,然后感觉是培训靠谱还是自学靠谱。 第一类:假设你是一个已经在社会上工作的人(年龄在24-30岁之间),不管你是从事电子、机械、建筑等工作,总之,你是觉得现在工资低,以后也涨不了多少,只能养活自己的人。1.第一种学习心态。你们受够了现在的工作状况和收入状况,你们下定决心一定要转行,无论多么困难,你们都必须转行成功,虽然现在做IT的人很多,但你们必须分一杯羹,如果你们是这样的心态,我建议你们一定要去培训,不要想着自学这条路。理由如下:既然你有这么大的决心,选择条件好的学习方法学习,训练可以使你的学习条件更好,成功的概率大幅度增加,老师教你,有专业的课程。 2.第二种学习心态。尽管你对现在的工作不满意,但你患得患失,不想失去收入,但又想改变,但你的勇气并不大,看着身边的朋友做IT很赚钱你很羡慕,但还没有勇气,这种情况,抱着试一试的心态,我建议你在网上自学。理由如下:当你没有下定决心学习IT技术时,你不应该选择培训,因为你的动力不强。网上自学对你的损失最小。 < img class="cto- img" src="https://s2.51cto.com/images/20210618/1624008429494833.png" title="1624008429494833.png" style="display:block;margin:auto;" alt="image.png"/>第二类人:你是毕业生,但是因为之前大学四年都荒废了,现在你很恐慌,意识到没有技术没有工作的痛苦。如果你认准学习Web前端技术,那就是为了以后能有一份高薪的工作,而且你对自己学习Web前端还是很有信心的,我建议你去培训。由于您对工作的迫切需求,您肯定不会像大学那样贪玩不学习,您会非常认真。假如你是这样的情况,不要自学,自学是时间很长的人才所做的事,对于那些迫在眉睫的刚毕业的人来说,不要这样想天开,浪费时间。2. 如果你是那种学习和尝试的人,如果你能成功学习,如果你不成功,你可以随便找一份其他工作,那么你可以自学。 第三类:假设你是学校的学生,现在是大一、大二、大三、大四的阶段。我完全建议你利用在学校的时间自学,我也上过大学,因为大学学习的课程一般都,学的很多,但是说到找工作,基本没有这样的能力。所以在大三的时候找到一个方向是极其重要的。Web前端技术应该是一个日积月累的学习过程,了解的时间越长,你的技术就越熟练,如果条件还可以的话,可以选择报名参加网上培训课。条件一般,就要脚踏实地地地利用没毕业的阶段好好学习技术,学一年半载,除非你没有用心,否则找不到工作。 不管是自学还是培训,我的指导建议如下:第一,你要正视一个问题,训练不等于有了工作,训练只是一个让你有更好条件去学习的地方,所以去训练的人要放平心态。如果你明白了,你是在学习,而非完成某项任务。学习永远是你自己的事,不要依赖别人,不管是训练还是自学,都需要你自己主动去学习,最终的结果往往取决于平时的训练结果,运动员都是这样,谁训练刻苦,最终谁赢。平常养成良好的学习习惯,你可以学得更好的东西。 不管是什么专业,你都要明白,多和专业人士沟通,不懂得沟通的人,你永远不会进步,包括以后的工作,多沟通是你进步的主要手段之一。 因此我对这个问题的回答就是这样,不管是自学还是培训,哪一个都不可靠,主要是你自己适合什么,你是什么样的人群决定了你是应该培训还是自学。
Web前端开发,零基础应该怎么去学?
  • 1回答
  • 135浏览
零基础学网络前端开发如何学习?首先要学习html、css、JavaScript的基础知识。HTML是内容,CSS是表现,JavaScript是行为。前端开发的门槛其实很低。与服务器语言先慢后快的学习曲线相比,前端开发的学习曲线先慢后慢。以下是前端学习路线的总结,供参考。 < img class="cto- img" src="https://s2.51cto.com/images/20210618/1624010266510653.png" title="1624010266510653.png" style="display:block;margin:auto;" alt="image.png"/>1、css和html。刚入门的朋友,应该着重学习css和html的基础知识。CSS(3)需要了解网络标准、HTML相关概念、HTML标签、路径相关概念、锚点及其他、表格标签、表格标签、综合案例、注册页面、CSS选择、CSS字体样本、CSS外观属性、调整、CSS复合选择器、标签显示模式、CSS背景、CSS三个特性等。一般来说,CSS和HTML的学习很简单。 2、JavaScript。JavaScript一直是前端工程师进步的基石,JavaScript的理解深度决定了前端开发者的职业发展。JavaScript的学习内容包括浏览器执行js过程、js变量、数据类型、计算符、流程控制句(ifelse、三元表达式、switch)、循环(for、while、dowhile)、数组、泡沫排序、函数、作用域、预解析、对象、内置对象、简单类型和复杂类型等。只有熟悉JavaScript的基本语法,才能继续深入学习前端开发技术。 3.仓库工具。我们常用的库工具有JQuery、underScore、zepto、Moment等。JQuery:降低开发人员操作DOM的复杂性UnderScore:提供实用函数Zepto:JQuery简化版Moment:日期和时间操作库。这些仓库给我们带来了极大的便利,节省了我们写相关方法的时间,我们的程序更加稳定——我们自己写的方法在某些情况下可能会出错。当然,这些库不仅需要知道API,还需要学习其源代码。看看自己写的方法是否也想到了这个方法。这些仓库工具也是很好的学习工具,不容忽视。 4、Node和Ajax。学习内容包括node环境安装、node模块化、gulp使用、服务器和http协议、Ajax函数封装、同源战略、JSONP、CORS、jQuery中Aajx方法的使用、Ajax补充内容。完成这部分学习路线的内容,可以基本掌握前后端数据互动、前后端分离模式、传统模式开发的工作。具备企业基本用户标准,可以达到初级前端开发工程师的水平。 5.vue。vue的优点是模板和渲染函数的弹性选择简单的语法和项目配置更快的渲染速度和更小的体积。关于这一部分,我们必须学习Vue命令、修饰符、风格结合、vmodel基本原理、计算属性、过滤器、侦听器、vue组件、Promise、Fetch、axios、vue路由、前端工程化和模块化等。学习以上内容,大家可以实现基于Vue技术栈项目的开发能力,基本上可以达到中级前端开发师的水平。 以上是小编今天共享的零基础学网络前端开发应如何学习的答案,相信大家对如何学习前端有一定的理解。
掌握了哪些技术才能成为高端PHP工程师?
  • 1回答
  • 124浏览
现如今,PHP开发语言是一种很受欢迎的开发语言,社会上每年都会有很多新的PHP开发相关的从业者,都被称为PHP开发工程师。PHP工程师的竞争压力是很大的,没有掌握高端的技术,自己的竞争力就会不足。那么,要想成为一名高端的PHP工程师,我们需要掌握哪些知识和技术呢? linux 除常规操作和性能监控跟踪外,Linux下还可以使用许多高级、复杂的命令(watch/tcpdump/starce/ldd/ar等); 就shell脚本而言,可以编写复杂的shell脚本(超过500行),帮助完成很多shell,包括备份、自动处理、监控等。 像awk/sed/perl这样的应用已经成熟,可以随意操作控制处理文本统计分析各种复杂格式的数据 了解Linux的内部机制,关于内核模块加载和启动错误处理的基础知识;以及NFS、磁盘管理等其他相关知识。 MySQL/MongoDB 对于MySQL应用程序,除了之前的SQL基础优化,还可以进行一些复杂的操作,如批量导入数据、修改在线大量数据的表结构、增删索引字段等。 除了安装配置,还可以处理更复杂的MySQL问题,如各种问题的跟踪,主要从同步延迟问题的解决方案、跨机房同步数据解决方案、MySQL高可用架构等。 在MySQL的应用层面,熟悉MySQL的核心关键技术,如事务处理机制(隔离级、锁等)。),对接触、分区等技术有一定的了解和应用。 PHP< img class="cto- img" src="https://s2.51cto.com/images/20210617/1623909911783860.png" title="1623909911783860.png" style="display:block;margin:auto;" alt="1.1.png"/>在基本代码应用中,可以解决95%的PHP开发问题,了解大多数PHP技巧;可以在一天内使用大部分PHP框架,了解各种主流PHP框架的优缺点,在项目开发过程中快速方便地选择技术; 在配置方面,要学习一些偏门配置选项(phpauto_prepend_fytec/auto_append_fytec),其中包括扩展中一些复杂的高级配置和原理。 比较了解php的工作机制,包括php-fpm工作机制(如php-fpm在不同配置机器下启动过程的数量计算和原理)、zend引擎的基本知识(vm/gc/stream处理)、基本PHP内核源代码(或阅读相关文章)、PHP内部机制的大部分核心数据结构(基本类型/array/objytype)、核心基础结构(zval/hashable/gc)。 c/c++ 可以深入学习C/C++语言,完成中小型C/C++系统的开发;除了C/C++基本语法和数据结构的第二阶段,还可以了解一些特殊的数据结构(b-tree/rb-tree/lsm-tree/triltree等)。),以满足特殊工作中的需求; 关于系统编程,熟悉多个过程,多个线程编程;了解多个过程中大多数过程之间的通信方式,可以灵活选择(如共享内存/信号量/管道等。 多线程序编程可以解决锁冲突问题,开发和调试多线程序;同时,熟悉网络编程,了解多进程模型/多线程/异步网络IO模型的区别和选择,熟悉不同异步网络IO模型的原理和区别(select/poll/epoll/iocp等)。),熟悉常见的异步框架(ACE/ICE/liv/libent/libuv/boot.ASIO等。)和使用,有空也可以看看国内自己开发的一些库(比如muduo); 可以同时设计高并发程序架构(如leader-follow/master-world等);了解大部分C/C++后端服务器开发中的问题(内存管理、日志打印、高并发、前后端通信协议、服务监控),了解各种后端服务RPC通信问题(如huct/htp/thirft/htobuf等)。 前端 对HTTP协议进行深入研究(包括各种详细的协议专用协议代码,以及302静态文件缓存、502nginx后php等背后的原因);除端各种框架应用的整合能力。 掌握了这些知识和技术,最后还能够在实际使用中得心应手,成为一名高端的PHP工程师就很容易了。
为什么前端没人讨论angular?
  • 1回答
  • 123浏览
兄弟,我之前提到的问题(React16.x前后渲染机制的差异)不知道多久没有一个答案了,后来直接删了,自己去捣鼓了。根据我的观察,Vue的源代码解读是最多的,可以说是汗牛充栋,也有很少有人说得好,原因大家也知道Vue的实现确实比较简单,更新也不频繁,到目前为止也就是2500+的commits,Angular和React更新太频繁,10000左右的commits,发布也很频繁。在国内使用Vue的实在太多了,看看Vue话题的关注度就明白了,包括百度指数。概括起来,Vue的原因就是实现简单(门槛低才解读多),受众多(在天朝算是第一前端框架)。其次是React。事实上,React的解读大多集中在16.0之前。说实话,React源代码解读的平均质量低得吓人。我怀疑很多人不理解就强行解读,直接罗列代码加几行注释也算解读。我个人猜测React内部细节太多,30000行代码量,解读者被众多细节淹没,解读这类细节的众多代码才考验功底,要懂得选择,解读Vue这一精简框架反而容易,这可能是React源码解读质量低下的原因。而许多React轻量级实现不过2000-3000行隐藏了许多细节,解读Preact的文章大多是可以的。至于16.x之后的React,只有@司徒正美发系列文章解读过,还有其它一些罗列代码的"解读"就不太值得看了,不过加入了Fiber后,底层彻底重写,React的解读成本又高了不少,而且现在底层源码各种TODO,变动太频繁了,过几天有些函数就直接变样了,我还见过一个长达1200行的函数(真是见鬼了),反正16.x的React是『不可读』的状态,等17.x后再看吧,解读更别提了。< img class="cto- img" src="https://s2.51cto.com/images/20210802/1627873743403223.jpg" title="1627873743403223.jpg" style="display:block;margin:auto;" alt="11.jpg"/>Angular的解读是最少的,我虽然没深度实践过Angular,但是之前想看一看优化性能后的『脏检测』长什么样,去搜索相关的解读和源码分析,发现大多数是Angularjs的解读,Angular时代的解读几乎绝迹,真是欲哭无泪。虽然在国外Angular是仅次于React的存在,不过在天朝实在是不受欢迎(请查看cnpm下载量,有数量级差距了),其中的实现细节我就不知道了,不过听人说实现比较复杂,那就更蛋疼了,本来在天朝手中较少,加之高门槛,没人解读也不意外。
PHP有哪些优点与缺点?
  • 1回答
  • 107浏览
PHP开发语言的强大性能完全可以满足站点构建的不同需求。近几年PHP得到了更新和优化,它的功能也越来越强大,百度等大型网站都采用PHP开发,充分说明PHP的强大之处。 < img class="cto- img" src="https://s2.51cto.com/images/20210617/1623920627913132.png" title="1623920627913132.png" style="display:block;margin:auto;" alt="11.png"/>PHP语言的优点:持续更新,不断的优惠,看一门语言是否在不远的将来还存在,看看他是否不断更新。php运行模式在不断改进,效率也在提高,加上发布的php7版本,性能得到了质的飞跃。毋庸置疑,对于PHP语言来说,它的安全性是比较好的,其中一个重要因素是采用了一种比whatsServer安全得多得多的lux服务器。在PHP上开发网站通常使用mysql数据库和hux系统,因为它是免费开放源代码的,具有开源型的东西,肯定会被大家喜爱,肯定有很多支持他的团体来贡献给他。许多扩展都是写出来的,拿到自己就可以使用,提高了效率。PHP语言入门简单,相对来说并不复杂,因此,学习PHP程序开发的人很多,人多费用自然相对较低。PHP语言的缺点:初学者容易学,初学者要求不高,因此导致初学者泛滥,代码质量低下,高级程序员缺乏。就桌面而言,php也没问题,有专门的设计,就是比较复杂,很少用,以后肯定会改进和简化。编程人员对框架的依赖程度很高,这影响了php原始编程的某些方面的进展,限制了程序员的思维。编程这一块,随着经验和技术的提高,工作将会不断改进,但现在许多公司的要求并没有那么高,有些人给的薪水偏高,做网站,不仅要编程,还要考虑很多方面:安全、效率、绩效等等。因此,随着你的经验,工资将逐渐增加。PHP这一行业是看能力来决定地位高低的,只要你的技术到位,经验老道,工资就不可能会低的。要想在一行业取得成就,不断的学习才是最优的选择。