近期总结

回顾

半年前

半年前,接触了前端一年多(工作半年)的我了解的东西只有下面这些。因为在公司里的工作就是切静态页,捣鼓CMS。

  • HTML (比较简洁的编写HTML)
  • CSS/CSS3 (PC兼容IE6+,FF,Chrome | WAP兼容各种安卓浏览器)
  • Javascript (基础比较扎实,不懂得写插件,不懂得设计模式,完全面向过程)
  • jQuery (各种DOM操作)

当时我以为前端就这些东西了,听说过NodeJS,但觉得那是很遥远的东西,我应该还没到能学习它的程度。

工作中一些工作经验差不多的同事,很爱在网上搬一些插件来用,

但我觉得自己入行,应该自己多打点代码,所以坚持了半年多纯手打各种代码。

轮播,拖曳之类的,最后自己写了一些方便自己使用的插件。

Less有听说过,但是也没有主动去用。

由于工作中多数都是写静态页,所以工作了大半年,唯一让我感受得到在进步的就是「兼容性」;

ajax几乎没用到,就更加谈不上用模版引擎了。

git也没有用到,开发流程非常的乱,用邮件,直接丢静态页面代码的形式。很多修改直接用ftp修改线上的。


换工作后

当时的知识面很窄,后来我加入到了新公司,来了2个和同届毕业的学生。而且都不是计算机专业。

可能由于他们之前所在的公司开发流程比较规范,他们眼界更开阔,或者学习更努力。他们貌似比我懂得更多的知识。

但基础感觉也差不多。作为计算机专业的我感到好大压力。

随后我认识到,这是深度和广度的问题。我可能更加注重在一个知识上面深度去学习(虽然也没有多深),

然而他们更乐于去了解更多的新技术新想法。

我当时的状态来说,我觉得我应该多去了解一些新知识才是。


现在

随后我就学习并了解了以下相关知识

(并不能全部融会贯通,但我知道他们是干什么的,知道如何去使用。

有的甚至在学习的过程中遇到一些莫名的因素导致放弃了学习该知识)。

因为没有做到相关的项目,所以都是自己在捣鼓,发现不了很多的坑,有些东西也没用到精髓。算是拓宽了知识面吧。

接下来我就粗略的说一下近半年来接触到的这些技术。以我自己的理解,比较浅的谈一下。希望大神们指导指导,指条明路。

顺便也梳理记录一下。


细说新接触的技术

Git

Git,版本管理工具。

用这个东西几个月了,没什么好说的,就是修改代码,提交代码,推送。 方便多人合作。
这个自己可以看一下网上的教程,了解一下每个操作的概念。具体的还得在实际工作中,看下团队的需要,才能知道具体需要用到哪些。

Less

Less是一种动态样式语言,属于CSS预处理语言的一种,和Sass是一个意思。就是通过一些嵌套,mixin,变量等。编译出你需要的CSS。让你自己写的样式更少些。

例如:

base.less

#box{
@color1: red;
@color2: blue;
span{
background: @color1;
}
a{
color: @color2;
}
}

编译后的CSS为

base.css

#box span { background: red; }
#box a { color: blue; }

附: Less教程


CreateJS

CreateJS是一个js库,是一款为HTML5游戏开发的引擎,用于操作。

其中包含五款工具:

EaselJS:用于 Sprites、动画、向量和位图的绘制,创建 HTML5 Canvas 上的交互体验(包含多点触控),同时提供 Flash 中的“显示列表”功能。

TweenJS:一个简单的用于制作类似 Flash 中“补间动画”的引擎,可生成数字或非数字的连续变化效果。

SoundJS:一个音频播放引擎,能够根据浏览器性能选择音频播放方式。将音频文件作为模块,可随时加载和卸载。

PrloadJS:帮助你简化网站资源预加载工作,无论加载内容是图形、视频、声音、JS、数据……

PxLoadr:一款用于网站资源预加载的 JavaScript 库,可加载图片、音频等任何类型的文件。PxLoader 除了可以帮你对资源加载的进度进行监测,捕捉“加载完成”事件外,还可以帮你指定资源加载的顺序。你甚至还可以按照优先级分组加载资源。

我本人只用到了EaselJs和SoundJS。

EaselJs是写了个小demo体验了一下,SoundJs是做一个H5的时候用到。

CreateJS没有中文版的文档,也找不到教程,看起来相当吃力。有一个类似的库,lufylegend,有中文的,我还没去了解,有兴趣可以看一下。


Markdown

很早之前就听说过markdown了,一直都没去了解。一般用来写文档吧。感觉还挺实用的。而且看起来好像挺装逼的样子。

这篇文章就是今天刚看了一下markdown的语法。试用一下,写个总结。

附: Markdown 语法 | Markdown编辑器


Angular

AngularJs是MVVM的模式。Model,View,ViewModel。

就是Model的数据发生改变时,View层的表现也会同时发生变化。

View层的数据发生改变时,Model里的数据也会随之改变。

不需要写任何的事件操作。只需要绑定一下模型。

这个跟着看了一遍文档教程,跟着视频走了一遍,Demo写了一些。

附: Angular文档教程 | Angular视频教程


requireJs

RequireJS的目标是鼓励代码的模块化,它使用了不同于传统script标签的脚本加载步骤。

可以用它来加速、优化代码,但其主要目的还是为了代码的模块化。它鼓励在使用脚本时以module ID替代URL地址。

附: requireJs 中文教程


Underscore.js

之所以学这个是因为想学习一下Backbone,然后Backbone强制依赖于这个库,就过了一遍。

这是一个函数库,里面都是一些功能函数。非常好懂。

附: Underscore.js 中文文档


Backbone

Backbone 这个东西,从头看到尾都懂,但是看一下demo,就不懂了。T _ T

寻求backbone视频教程.

附: Backbone API文档


设计模式

设计模式我是看纸质书的,感觉非常有用。开发模式可以让你写的代码更容易维护。

我们可以根据自己的需要,采取不同的模式

具体的模式如下:

【晚点补上】

模版引擎

  • handlebars.js
  • template.js

这里的模版引擎仅仅是为了"不拼字符串"。具体的操作也没什么好说的。

附: handlebars文档


NodeJS

主要是用了Node的一些插件。

大概了解Node建站的流程。(看了大漠老师的视频教程

附: NodeJS菜鸟教程 | Node建站视频教程

Gulp

和grunt和Fis一样,是自动化构建工具,实现前端项目工程化就需要它了。

我用到的它的功能有下面几个:

  • Livereload
  • 编译Less/Sass
  • 合并/压缩样式
  • 混淆JS
  • 压缩图片/拼接图片
  • 打包文件

以下几个接触过,知道怎么用,但是没有深入的去了解和实践。

Bower

开发包管理工具。

Jade

模版引擎,Node建站时通过请求数据来渲染页面。

Express

web应用开发框架(在windows下面会有一些奇奇怪怪的问题,建议用linux)

MongoDB

非关系型数据库


前端开发 | 尝试用Markdown写一下近几个月的总结的更多相关文章

  1. 尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框

    尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框 近期正在逐步摸索学习React的用法,尝试着写几个通用型的组件,整体项目还是根据webpack+react+css-me ...

  2. 尝试用 Python 写了个病毒传播模拟程序

    病毒扩散仿真程序,用 python 也可以. 概述 事情是这样的,B 站 UP 主 @ele 实验室,写了一个简单的疫情传播仿真程序,告诉大家在家待着的重要性,视频相信大家都看过了,并且 UP 主也放 ...

  3. 尝试用canvas写小游戏

    还是习惯直接开门见山,这个游戏是有一个老师抓作弊的学生,老师背身,点学生开始加分,老师会不定时回头,如果老师回头还在点学生在,就会被抓住,游戏game over. 1.写游戏首先是loading条,于 ...

  4. 尝试 Markdown 写测试用例

    我的原帖https://testerhome.com/topics/9412 大家都知道我们社区的帖子提倡用Markdown格式编写,正好项目进入稳定期,尝试用Markdown写下测试用例.有几个目的 ...

  5. 记录一下第一次用markdown写博客回滚过程

    前面写博客,一直用的是博客园的TinyMCE编辑器, 今天不知道哪根筋搭牢了,想试试用Markdown写. 于是在“选项”里面把默认编辑器修改为“Markdown”,鉴于本人有一定的Markdown基 ...

  6. gulp+sass+react前端开发,环境搭建

    由于前端技术的发展与市场需求的提高,前端开发已经不仅仅是写几个页面那么简单.如何有效的开发.管理一个越来越庞大.越来越复杂的前端项目,成为互联网团队必须要面对的难题. 各种js库.ui库曾经火极一时. ...

  7. 【记录】尝试用QEMU模拟ARM开发板去加载并运行Uboot,kernel,rootfs【转】

    转自:https://www.crifan.com/try_use_qemu_emulate_arm_board_to_load_and_run_uboot_kernel_rootfs/ [背景] 手 ...

  8. 学web前端开发写给新手的建议,超实用!

    01 前面的话 如今我们使用的互联网,客户端与服务器端的交互无时无刻不在发生.比如我们在浏览器打开网页,浏览器就是客户端,将网页数据发过来的也就是服务器.其实服务器,并没有什么特别的,也就是一台昼夜不 ...

  9. 前端开发:如何写一手漂亮的 Vue

    前几日听到一句生猛与激励并存,可怕与尴尬同在,最无奈也无解的话:"90后,你的中年危机已经杀到".这令我很受触动.显然,这有些夸张了,但就目前这日复一日的庸碌下去,眨眼的功夫,那情 ...

随机推荐

  1. Orcal nvl函数

    NVL(E1, E2)的功能为:如果E1为NULL,则函数返回E2,否则返回E1本身.但此函数有一定局限,所以就有了NVL2函数. 拓展:NVL2函数:Oracle/PLSQL中的一个函数,Oracl ...

  2. openerp学习笔记 视图中字段只变化(on_change)联动其他字段值、选择和过滤

    1.修改产品数量时,自动计算产品销售金额.销售成本和销售利润<field name="num" on_change="on_change_product(produ ...

  3. C++学习 之 初识命名空间

    声明:            本人自学C++, 没有计算机基础,在学习的过程难免会出现理解错误,出现风马牛不相及的现象,甚至有可能会贻笑大方. 如果有幸C++大牛能够扫到本人的博客,诚心希望大牛能给予 ...

  4. Dev中GridView——背景颜色改变

    DevExpress.XtraGrid.Views 设置指定行的背景颜色 1.事件:CustomDrawCell2.示例: private void gridView1_CustomDrawCell( ...

  5. Mongdb、Mysql、Redis、Memcache场景

    个人的一点理解,不确定一定准确,有不对处欢迎指出 全部数据使用mysql存储,确保安全.准确和持久 大数据.非安全性数据使用Mongodb 小数据.结构丰富.持久化(主从数据)使用redis 小数据. ...

  6. jenkins凭证与新建任务

    一.凭证介绍 有许多第三方网站和应用程序可以与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等. 此类应用程序的系统管理员可以在应用程序中配置凭证以专供 Jenkins 使用.通常通过 ...

  7. Spring MVC整合fastjson、EasyUI乱码问题

    一.框架版本 Spring MVC:spring-webmvc-4.0.0.RELEASE fastjson:fastjson-1.2.45 EasyUI:1.5 二.乱码现象 Controller调 ...

  8. 使用Navicat为Oracle导入函数后函数显示红叉

    上图是plsql中的截图 有可能是Navicat没有缓存过程,刷新试一试,不行的话,对导入的函数进行重新编译即可. 还发现一个问题是,Navicat导出的脚本里面,函数部分竟然没有参数和返回值,让我很 ...

  9. Python爬虫学习==>第七章:urllib库的基本使用方法

    学习目的: urllib提供了url解析函数,所以需要学习正式步骤 Step1:什么是urllib urllib库是Python自带模块,是Python内置的HTTP请求库 包含4个模块: >& ...

  10. 直方图匹配原理与python、matlab实现

    直方图匹配本质上是让两幅图像的累积直方图尽量相似,累积直方图相似了,直方图也就相似了. 把原图像img的直方图匹配到参考图像ref的直方图,包括以下几个步骤: 1. 求出原图像img的累积直方图img ...