Lexer:詞語分析

從 Writing a simple lexer in PHP 找到了一個很不錯的詞語分析教學,

實際上就是最近在做 Avane 正式版,然後需要分析模板標籤,

原本想說單純的 RegEx 就足夠了,但是看看之前寫的非正式版 Avane

螢幕快照 2016-01-23 下午6.29.48

好像還 .. 可以啦(?)

但是後來想說沒試過 Lexer,那就來試試看好了,畢竟現在不趕快摸,之後可沒有時間啊喂wwww

(按下閱讀更多來詳細閱讀)閱讀更多»

三個 Logo 更新— Tocas 和 Avane 和 Staend

亞凡芽

TeaMeow 開發基於 PHP 的模板引擎,Logo 由 Muli 轉換成 Comfortaa

Avane-Old
舊,Muli
Avane
新,Comfortaa

 

Staend

DNA 功能,S 由圓角轉為偏直角。之後可能會再調一下那個幾條線的角度。

Staend
舊,圓角 Muli
Staend-直角-01
新,偏直角 Muli

 

Tocas

TeaMeow 基於 SASS 和 CSS3 與 JavaScript 的元素設計,

字體由 Muli 轉換成全符號,之後可能還會變厚就是了。

Tocas-01
舊,帶有 Muli
Tocas-閃電S
新,全符號

亞凡芽.JS

2015-11-12 17-47-32 的螢幕擷圖

自從什麼都用過之後,就會什麼都想自己建立一個,

亞凡芽原本是在 PHP 上面的啦 .. 不過我摸過 AngularJS 跟 VueJS 之後,

我開始想 .. 如果亞凡芽也能再客戶端上面跑的話速度一定也很快,

所以我就花了半天的時間暫時生出這個基本能解析 {{ 變數 }} 標籤的骨架

2015-11-12 17-48-32 的螢幕擷圖

然後你上面看到的就是 AvaneJS 會在 Element 裏面所存的資料,

不過我也不是很萬能,如果遇到我不會的地方 .. 大概又完蛋了。

TeaMeow 怎麼傳遞新/舊貼文的?

螢幕快照 2015-08-05 下午10.17.20

其實很簡單就是 JSON 格式啦,很多網站都是,不過差別在於你接收到的資料是不一樣的

有的網站他們會回傳很多個 Object,然後到你電腦上在自己建立成 HTML

但是 TeaMeow 的方式跟 Twitter 很像,是在伺服器端建立好 HTML,才傳給你,

不過沒有 Twitter 這麼先進就是了(因為 Twitter 不只回傳 HTML,還有每篇文章的 Object):

螢幕快照 2015-08-05 下午10.21.58


如果你有興趣的話,這裡是 TeaMeow 從產生到回傳的流程:

  1. 透過 Tocas 去告訴伺服器要資料。
  2. 伺服器找資料然後丟給 Builder(建造者)。
  3. Builder 丟給 Teapot(茶葉系統)來做整理的動作。
  4. Teapot 丟給 Avane(模板系統)建立 HTML 內容。
  5. 最後將 Avane 回傳的內容跟一些其他的參數傳回客戶端。
  6. 客戶端(就是使用者)接收到資料後,透過 Tocas 來將資料顯示到螢幕上。

好啦,既然 TeaMeow 回傳的是 HTML,

那麼手機版跟 API 的部分該怎麼辦呢,

就這樣,熬夜的日子又要持續下去了。

兩個迴圈會比一個迴圈快嗎?探討 Avane 迴圈。

2015-07-27 20.55.04

Avane 是一個 TeaMeow 開發的模板引擎,這次又遇上了一個有趣的問題:

兩個迴圈,會比一個迴圈的效能還要快嗎?

也許你會想:「這什麼蠢問題,兩個怎麼可能比一個快」,但是基於我腦殘的實驗精神,

我決定來揭開我心中的這個心結,不過也許你開始發現了,這所謂的「兩個迴圈」一定是用在不同的地方,

沒錯,那麼就開始研究吧。閱讀更多»