陈颂光
全栈工程师,承接从编译器到网站的各类软件开发与咨询,也可以聊历史哲学。
关注我的 GitHub

与web相关的博文目录

用OpenLayers设计地理信息网站

web

在网页上提供地理信息是一个常见的需求,例如连锁店的网站需要展示各门店的位置和前往路线。OpenLayers就是其中一个经常用于显示地图的Javascript库,可以让用户交互式地与各种地理信息打交道。

编写浏览器插件:适用于Chrome、Firefox、Edge和Opera

web

浏览器插件(或称扩展)可以修改浏览器的行为,比如可以屏蔽广告、防止跟踪、下载视频、翻译网页、增加搜索引擎等等。在过往不同浏览器有互不兼容的插件机制,但现在包括Chrome、Firefox、Edge和Opera在内的主流浏览器都在某程度上支持了WebExtensions API,因而我们能轻松地编写同时适用于多个浏览器的插件。

Spring框架初探

java web

Spring已经从在Java EE做依赖注入的框架发展为包罗AOP、MVC、数据持久化、消息传递、安全的Spring全家桶生态,甚至已经把魔掌伸向命令行程序和手机应用开发。以下我们就来说明一下怎么用Spring做点简单的事情。

用Solr打造定制的搜索引擎

java web

在数据分析、站内搜索等应用中,我们往往需要有自己的搜索服务。Apache Solr(用户包括Instagram、Netflix和Digg)和ElasticSearch(用户包括GitHub、Quora和eBay)就是目前最流行的开源搜索服务器软件,无独有偶,它们都基于用Java语言编写的搜索引擎Apache Lucene

怎样打造用户友好的软件

可用性 web

一个优秀的软件不仅要有用户需要的功能,还要让用户能用上它,否则只是徒劳。正如对于混乱的代码应该重写成干净代码,而不是加上大段注释一样。用户界面也应力求容易使用,最好是看一下就知道怎么用,而不是加上厚厚的使用手册或使人打瞌睡的培训课程。不要指责用户犯错,而要反思设计的不人性化。

用Jekyll在GitLab pages上搭建博客

web

虽然已经有很多可免费使用的博客平台,但对于不善交际的程序员来说,更多社交化功能还不如更大的自主权。仅就可以自由地运用JS这点,不仅可以渲染数学公式、高亮的代码和乐谱等,还可以分析页面流量。由于大家可能比较熟悉GitHub pages,这里就介绍一下GitLab pages。我们仍然用最流行Jekyll作静态生成器,但GitLab的持续集成完全容许你使用其它的静态生成器,甚至可以是自己发明的。

浅谈SEO

SEO web

搜索引擎已经成为网页流量的主要来源,因此争取更多人看到您的信息,就要让更多人通过搜索引擎发现你。在Google和百度等竞价排名搜索广告的费用远超你的负担能力的情况下,搜索引擎优化(SEO)就变得相当重要。我们不仅将简单介绍SEO最基本的原理和实践,而且还会始终立在更广阔的视野来看如何对用户友好,包括前端、后端的开发大员都应当知道的注意事项。即使你并不需要做推广,本文也能帮助你认清网络上某些乱像以便提防上当。

XML概览

xml web

XML(可扩展标记语言)是一种用于描述结构化信息的语言。作为SGML的一种简化,由W3组织维护。与用非XML格式相比,使用基于XML的格式有以下优点:

  • 由于已有现成的解析器等成熟的配套工具,容易可靠地处理
  • XML是经过深思熟虑的,可以避免不少常见问题
  • XML格式往往是自描述的,容易理解和排错

HTML5概览

html web

Hypertext Markup Language (HTML)是一种描述文档的语言,主要是网页的内容,外观和行为则分别由CSS和Javascript控制。这里主要介绍HTML5。

Javascript概览

javascript web 程序设计语言

Javascript(ECMAScript)是,除了作为客户端网页脚本的事实标准外,也逐渐在服务器端取得一些应用(如Node),还在个别其它地方用作脚本语言(如PDF)。JS是一种基于对象的动态类型语言,但并不基于类而基于原型。JS的对象可看作其它语言中的散列表,键值对即属性(键称为属性的名字,值称为属性的值)不区分方法和域,其中每个对象有一个prototype属性的值称为对象的原型。

CSS概览

css web

CSS(层叠样式表)用于指定外观,最常用于指定网页的外观,但也可用于指定图形用户界面的外观(如Java FX)等等。