seminelee blog

Remember to look up at the stars

0%

TCP的构成

因特网有两个核心协议:IP和TCP。IP(Internet Protocol,因特网协议),负责联网主机之间的路由选择和寻址;TCP(Transmission Control Protocol,传输控制协议),负责在不可靠的传输信道之上提供可靠的抽象层。它向应用层隐藏了大多数网络通信的复杂细节,如丢包重发、按序发送、拥塞控制及避免、数据完整等。

阅读全文 »

准备

Koa是一种Web框架。
由Express原班人马打造的koa,致力于成为一个更小、更健壮、更富有表现力的Web框架。使用koa编写web应用,通过组合不同的generator,可以免除重复繁琐的回调函数嵌套,并极大地提升常用错误处理效率。Koa没有捆绑任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变得得心应手。

Koa is a new web framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and APIs. Through leveraging generators Koa allows you to ditch callbacks and greatly increase error-handling. Koa does not bundle any middleware within core, and provides an elegant suite of methods that make writing servers fast and enjoyable.

阅读全文 »

异步编程

我们知道,JavaScript语言的执行环境是“单线程”。这种模式的坏处是只要有一个任务耗时很长,后面的任务都必须排队等待。常见的浏览器无响应往往就是因为某一段JS代码长时间运行导致整个页面卡在这个地方,其他任务无法执行。

阅读全文 »

前言

经常用php写cgi,但是发现自己并不理解它的运行原理,所以学习一下。

PHP是什么

PHP是一种适用于Web开发的动态语言,是一个用C语言实现,包含大量组件的软件框架。

阅读全文 »

前言

之前居然一直没有学习过react,还是趁着周末学习一下这个流行的框架。虽然fb随时又可能不给我们用了?!= =但是学习一下这个框架的思想也是好的。
React是2014年f8大会上被提出的,能用来解决一个大型应用的数据变更的问题。它不是完整的MVC、MVVM框架,只负责view层。它实现的原理是虚拟DOM的机制,数据单向绑定,这使它能快速响应复杂的数据变更和交互。它推崇组件化开发,这也满足了复杂场景下的高性能要求。

阅读全文 »

PWA与AMP-移动Web的现在与未来

比起native app,移动web的优势有这些:

  1. 跨平台 reach更多的用户
  2. 即时更新 更灵活 有错误也可以补救
  3. native app要为不同平台设计与开发 移动web工作量小一点

如今在移动互联网中,手机流量远胜于Desktop,而且比起移动Web更集中于Apps,并且是Top3的App。如何尝试扭转这个趋势呢?

阅读全文 »

用rem作单位

rem是CSS3引进的一个新的单位。W3C关于rem的定义是:等于根元素上的font-size的计算值。比如,当html的font-size为16px时,1rem=16px。
它的兼容性也较高,支持的浏览器有iOS Safari9.3+、Android Browser4.4+、Chrome49+、Firefox52+、IE11等,符合一般项目的浏览器兼容要求。

阅读全文 »

webpack-dev-server

webpack-dev-server是一个小型的Node.js Express服务器,它使用webpack-dev-middleware来服务于webpack的包。在实际操作中,它将在localhost:8080(或其他端口)启动一个express静态资源web服务器,并且以监听模式自动运行webpack,并通过socket.io服务实时监听资源的变化并自动刷新页面(热更新)。

阅读全文 »

webpack简介

随着移动互联的浪潮到来,Webapp模式、SPA受到越来越多的关注。如何在开发环境中组织好碎片化、多格式的代码和资源,并保证他们在浏览器端快速、优雅地加载和更新需要一个模块化的系统。
Webpack就是这样的模块化系统。它有以下几个特点:

  • 分块传输,按需进行懒加载;
  • 各种格式的资源都是JavaScript模块,可以用require加载;
  • 对代码进行静态分析,分析各模块的类型和依赖关系并交给适合的加载器处理。
    阅读全文 »