首页 > 网站 > WEB开发 > 正文

入行一年浅谈

2024-04-27 15:07:51
字体:
来源:转载
供稿:网友

刚进前端一年,做过移动混合app开发,做过普通web pc端。  移动端是用bootstrap做的,没用过js框架  知道angular.js   也知道vue.js 关于javascript 只用过jquery。做过java 数据库方面  对于mvc 也是半知半解  而且java的基础很薄弱 直接上框架半年。ssm框架  也了解过php基础  做过了很多 项目也开发了很多,最后还是发现对前端很感兴趣  当初学习的时候 听别人讲到html  CSS  js 时  说前端只包括这些,可是逐渐在入门 发现前端的知识量 已经不局限于这些了。

在我总结的这个知识框架中,首先第一层我划分为:理论知识,类库框架,编码开发,运行环境。

 理论知识

理论知识包括硬知识和软知识

软知识就是平时我们在学校也好,自学也罢 学习的东西,面向对象,算法,数据结构等   包括js html css 所有的类基础知识。

所谓“软”的就是能在各个程序开发中都用到的,算是基本功、内功,例如数据结构、算法、设计模式、面向对象等等;所谓“硬”的就是能直接用于本程序开发的。用C语言你就得学C语言语法,此时学java没用。我们web前端开发所需要的硬知识其实都包含在三个标准里面:http标准、W3C标准和ECMAScript标准;

硬知识有三个标准:http标准、W3C标准和ECMAScript标准。

  为什么做web前端要了解http标准?——因为浏览器要从服务端获取网页,网页也可能将信息再提交给服务器,这其中都有http的连接。web系统既然和http链接有瓜葛,你就必须去了解它。

      如果说你只知道web前端的一个标准,估计肯定是W3C标准了(据我了解,貌似大部分人真的都只知道这一个标准)。它的内容非常多,看看www.w3.org/TR/这个页面。

     有些人可能只知道Javascript,而不知道ES——其实,js是在ES的基础上,为web浏览器做了一部分封装(增加了DOM操作、BOM操作等)。

 框架和类库

浏览器方面1. css框架   bootstrap   还有一些框架 类似于 腾讯 阿里的 css样式框架 基本都差不多。2   js库       jquery3   js框架  angular.js    vue.js  4   图标 fontAwesome是全世界最强大的图标系统。相比于css制作图标来说,这个要好很多倍,不管是开发、效率还是维护上。icomoon.io能让我自定义选择自己的图标文件。5 requirejs和seajs这种模块定义系统,也一定是你系统中不可或缺的。我曾经看过一个教程,讲师就说:requirejs带来了既jquery之后的第二次前端技术变革。其他的,backbone、angular、react这些也慢慢的开始发挥了他们的价值,此处精力有限就不再赘述了——但是,他们很重要——你至少要试着去了解它们。node.js方面(待续)

编码开发

如果你专门做web前端,就不要在用vs了,当然要选择sublime。写html语句还用手动一条一条写吗?你得需要zencoding的协助,否则效率太差了。     本人用的是webstorm。 以上两个软件必须要知道所有的开发快捷键 有助于开发。开发者工具Chrome控制台  firebug这个和上面同等重要~巧妙运用F12.另外,针对html、css、js的压缩、合并、语法检查,文件的清除、复制这些操作,你还要手动去做吗?——你需要grunt或者gulp的帮助。

 如果你的系统中有比较多的js代码或者文件,请选择一个合适的模块定义规范——CMD / AMD

  请用git来帮助你做文件版本管理,最简单的就是使用github。还有svn

  调试、测试,也都有专门的工具,都是需要学的……

运行环境

浏览器方面浏览器兼容性  csshack

javascript事件系统

相应式布局

web安全

性能优化

node方面

其他

  以上这些是全部的知识体系。如果你想成为一名合格的、让leader喜欢的程序猿,你除了知道这些知识之外,我觉得还需要以下几点:

要了解敏捷软件开发流程(如SCRUM)和项目管理知识(如考取PMP),这也属于一种“软”知识吧;要学会在网上和别人交流(博客、QQ群、开源项目),交流能让自己看到自己的不足;要学会自我反省和自我学习。就像我现在一样,试着自己总结一下属于自己的东西,随时反省随时进步。工作一年的前端 最起码需要掌握的知识就是  软知识   css基本框架  js库  js基本框架  并且了解后台mvc 懂得和后台配合 善于调整前台兼容


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表