2014年1月14日 星期二

好用的函式庫~jQuery~

之前網頁的動態語言是使用php,
要學習JavaScript時,遭受到了一點點的困難
語法方面當然是沒什麼問題,
像是變數是要用var預先命名之外
什麼if else,while,switch case都差不多
可是JavaScript的精髓當然是調用與變化網頁元素
這就多花不少時間了解

稍稍有點懂了之後,再去碰jQuery…
Easy啊~~~~,一堆原本寫一長串的東西,瞬間就變短不少
像是下面這樣:
//變數tabsT是從網頁文件中
//所有id命名為tabsT的元件裡取得元件tag為li的物件
var tabsT=document.getElementById('tabsT').getElementsByTagName('li');

//jQuery的寫法變成
var tabsT = $("#tabsT li");
而且理解之後,也很好閱讀(認知)。
開發這套函式庫的人,真的是太厲害啦!

拜jQuery所賜,原本家用記帳庫的部分
原本在JavaScript的應用只有分頁功能
現在又多了帳目表單未輸入(空白)檢知,與關鍵字的檢知與處理
而且原本程式碼很花(雜亂)的php程式碼
一瞬間也變的易讀很多,
//之前PHP寫法
include config.php;
$intA = 5;

function phpfunc($intA)
{
  /*中間一堆運算*/
  return $result;
}

/*中間一堆程式碼(函數)*/

//要插入JavaScript要這樣寫
echo "";

//要插入HTML要這樣寫
echo "
插入了一堆東西"; echo "插入了一堆東西"; $options = phpfunc($intA); echo ""; echo "
";

現在php函數可以獨立一區,JavaScript又獨立一區
HTML也是獨立一區
比起原本php函數裡面插了一堆echo產生HTML來得單純
還有較長的空檔的話,考慮整個改寫算了。

2014年1月2日 星期四

元旦出遊,日月潭半日行

隨著時間的變化,以前元旦是昇旗加慢跑,
現在元旦的重頭戲卻是前一天的跨年活動了
不過這樣也好
一大早出門就沒什麼車流與人潮
立即就決定規劃這一次的日月潭之遊,帶著全家出遊!

幾個必跑的景點決定是:向山遊客中心、三育基督書院與桃米紙教堂

2013年12月25日 星期三

撰寫Android NDK程式

一開始知道Android NDK時只覺得:好棒,可以用C/C++寫Android程式。
可是安裝與設定方式一直都沒看懂過。
只大概知道概略流程:
windows要裝cygwin的環境,然後用命令列或批次檔去編譯出.so檔
最後再與Android的專案做連結成為可用的程式。
後來工作繁重就也沒再深入了解,
最近買新電腦,自然又燃起重新切入的欲望。

現在新的NDK與套件已經變得既不用安裝cygwin,也不用進行太多的命令列執行
然而,也是要有對於JNI(Java Native Interface)的基本了解
進行上才會順利一些,不然就會像我一樣
一直搞不懂為什麼編譯明明顯示成功,在執行時還是會掛點
直到我開了logcat上網查才發現有地方不對
不過進度卡最兇的反而不是JNI的部分
以下是一點小小筆記

2013年12月20日 星期五

Nikita 300 後半年DIY保養心得


從上次發Nikita DIY文章之後又過了5個月左右
很高興之前提到DIY新項目又完成了3項
分別是:1、齒輪油更換。2、水箱水更換。3、傳動拆裝與清潔。
可以說完全照著進度來,接下來就是節流閥與拆齒輪箱(換培林)
這個可能要很晚了,說不定要到後年才有辦法,尤其是拆齒輪箱的部分。
不過沒差,齒輪箱的部分純改爽度大於實質,沒那麼重要。
而且目前工具還沒有預算能入手,等等吧!

這次這三項整個做下來,前兩項還好。
第三項就稱得上一波三折了,因為工具問題停了二次。
不過還好,在遇到問題停住時,還裝得回去,不至於發生要停駛的狀況。
要是東西硬拆下來,裝不回去事小,東西拆壞了可就頭痛啦!

2013年11月27日 星期三

使用Mingw-w64來編譯Ogre 1.8.1與Bullet 2.82

上次使用新的Mingw 4.8.1-4的版本編譯Ogre成功,但失敗在Bullet 2.81。
一直等待Mingw團隊Release 4.8.2的gcc來解決問題也不是辦法,
這期間就先使用Visual Studio 2010 Express來編寫Ogre+Bullet。
但是使用上很不習慣,還是想用回Code Blocks。
於是,花了好大的一番功夫,一一對照參數搞起來後。
卻又看到Mingw-W64計畫,反正新電腦編譯快,想說用用看。
就下載其中Mingw-builds Project的32位元版本下來測試
裡面有4.8.1與4.8.2當然是選擇4.8.2的版本,再選threads-win32裡SJLJ的版本
(i686-4.8.2-release-win32-sjlj-rt_v3-rev0.7z)
這下建立bullet沒問題了

OgreDeps到OgreMain一開始編譯也都OK,昨天發現其實不OK!
更正一下,使用Mingw-w64編譯官方的OgreDeps在libzzip的部分也有問題
在最後產生OgreMain時,連結libzzip會出現重複定義的問題
如官方討論區這篇(Compiling Ogre: zziplib - multiple definitions)所述

接下來就是是卡在RenderSystem_Direct3D9的部分…
好佳在,最後是有解決,不過這必須更改Ogre的原始碼
這就是亂用不是官方指定的缺點

2013年10月18日 星期五

在新電腦上面跑Ogre+Mingw與Bullet

買了這麼一台功能強大的新電腦,自然下一步就是要做的
就是自己想要做的事:
「寫計畫很久的程式,不論是Android還是PC上面的。」
在PC上面我需要用到Ogre與Bullet。
所以編譯他們,是測試這台電腦效能與實現計畫的第一步。
只是在使用最新的Mingw(GCC 4.8.1-4)去編譯時,
卡死在Bullet上,這邊做個記錄。


2013年10月11日 星期五

技嘉 P25K~人生第一台高級電腦~

擁有一台較高規格的電腦是從大學時代起的夢想之一,
不過在進社會接連湧出的新欲望下,實現順位一直被往下拉。
最近因為很多理由,決定購買人生第三台電腦,
一開始的構想是堪用的15吋筆電,而沒想要實現這個夢想。
誰知道加班的壓力下欲望爆炸(嗯,都是理由 XD),
最後選了這一台所謂電競筆電;電子(遊戲)競賽用筆記型電腦。
Gigabyte(技嘉)的P25K。
一台擁有第四代Intel i7 CPU、15吋Full HD螢幕、
Nvidia GTX 765顯示卡與藍光光碟機的高規格筆電。