免费看在线a黄视频|99爽99操日韩毛片儿|91停婷在线无码观看|日韩三级片小视频|一级黄片免费播放|欧美成人视频网站导航|亚洲日韩欧美七区|国产视频在线观看91|人成视频免费在线播放|国产精品成人在线免费观看

Miao, Mac微博客戶端開發(fā)隨筆

我看著眾多微博客戶端開始出現(xiàn)在果粉視線里。WeiLark, Mint, Macbo, Weibo For Mac, Woob 我全部用過,也全部否定了。中國需要像 Tweetie 這樣能夠站在世界級(jí)別的 Mac 軟件出現(xiàn)。雖然這時(shí)候我還不敢保證什么,但是 Miao 絕對(duì)是帶著這樣的使命起步的。

我看著眾多微博客戶端開始出現(xiàn)在果粉視線里。WeiLark, Mint, Macbo, Weibo For Mac, Woob 我全部用過,也全部否定了。中國需要像 Tweetie 這樣能夠站在世界級(jí)別的 Mac 軟件出現(xiàn)。雖然這時(shí)候我還不敢保證什么,但是 Miao 絕對(duì)是帶著這樣的使命起步的。

大約從2010年開始,我就計(jì)劃開發(fā)一個(gè)自己的微博客戶端!開始命名為 iCloud,意思是云云,漫畫里對(duì)話框的泡泡??上Ш髞?2011年6月)這個(gè)名字讓Apple官方拿去用了,iCloud 改名成了 Miao。也沒什么好抱怨的,我并沒有注冊(cè)過這個(gè)名字,也沒做出東西。這里是關(guān)于做這個(gè)軟件的過程和背后的故事。

開始做這個(gè)微博客戶端以來,進(jìn)度總是進(jìn)進(jìn)退退的。其中最主要的原因就是在微博顯示部分選擇 WebView 還是 NSView 繪制數(shù)據(jù)。選擇webview開發(fā)簡(jiǎn)單,可以給用戶更大權(quán)限實(shí)現(xiàn)新的皮膚。但是與Mac OS原生繪制機(jī)制相比,webview實(shí)現(xiàn)方法內(nèi)存占用大,速度慢,而且有些關(guān)鍵的UI特性無法實(shí)現(xiàn)。

起初選擇WebView的原因很簡(jiǎn)單-開發(fā)進(jìn)度快。由于自己還算精通 html、css 所以根據(jù)微博數(shù)據(jù)構(gòu)造頁面非常迅速,還輕易的設(shè)計(jì)了換膚系統(tǒng)。但是隨著進(jìn)度深入,開始發(fā)現(xiàn)一些希望的特性難以實(shí)現(xiàn),例如其中之一:view 之間切換的動(dòng)畫。如果要做這個(gè)視覺回饋,需要多個(gè)webview。并且這個(gè)客戶端功能之一就是維護(hù)一個(gè)訪問微博頁面的棧,用戶可以在多個(gè)好友微博頁面間切換而不會(huì)打斷用戶瀏覽行為。對(duì)于這個(gè)功能,使用webview這樣大型的控件代價(jià)太高了( 每個(gè) webview 都會(huì)維護(hù)一套自己的 DOM Tree 和 Render tree ) 就好比開了好多瀏覽器標(biāo)簽。絕對(duì)沒人希望一個(gè)客戶端軟件運(yùn)行起來臃腫的像瀏覽器一樣。

大約是在2010年底,我第一次暫停了項(xiàng)目。另外創(chuàng)建了一個(gè)小工程,希望測(cè)試使用 NSView 做同樣效果。這種數(shù)據(jù)填充的程序自然而然想到了使用 NSTableView,況且我使用它也是最多的。接下來繪制TableCell,從這里開始情況很快就變得復(fù)雜起來。繪制可變高度的表格很難實(shí)現(xiàn),求定寬文本高度總是不夠準(zhǔn)確,簡(jiǎn)單的100條微博就讓 tableview 慢到不可理喻。更抓狂的是,我不知道如何在 tablecell 里繪制 gif 動(dòng)畫, 添加可以點(diǎn)擊的鏈接等等,添加 NSTextField 做點(diǎn)擊鏈接我到是會(huì),可是在 view 里再添加眾多 textfield 不會(huì)讓這個(gè)表格卡到死么!當(dāng)時(shí)還學(xué)習(xí)了 Core Animation 的部分,了解到 CALayer 利用 GPU 硬件繪制,而且滾動(dòng)時(shí)候不會(huì)出現(xiàn) cell 重繪情況,應(yīng)該是解決 tableview 慢這個(gè)問題的好方法。但卻卡在了 CALayer 的各種事件相應(yīng)上,不知道如何在 CALayer 上添加鼠標(biāo)點(diǎn)擊,鼠標(biāo)選擇,文本拷貝等等。無法實(shí)現(xiàn)表情圖片顯示, 不能點(diǎn)擊鏈接,這不就是殘廢么!我一下子望而卻步了。

在一頭撞到這么多堵石墻上之后,我又灰溜溜的返回到 webview 的老路上來。明知道墻后的風(fēng)景會(huì)很美,只能自嘆技術(shù)不行。于是我開始考慮控制 webview 數(shù)量,試著在單一 webview 里實(shí)多帳號(hào)多頁面和現(xiàn)切換動(dòng)畫。這確實(shí)有可能實(shí)現(xiàn),jQuery UI 我非常熟悉,做一些 fadeout、fadein 的動(dòng)畫很容易。很快一個(gè)支持分帳戶,分頁的 html 結(jié)構(gòu)做好了,jquery 實(shí)現(xiàn) fadein fadeout 的確可行。這時(shí)我發(fā)布了 iCloud 的內(nèi)測(cè)版本。也有很大一部分朋友用過我這個(gè) iCloud 版本。隨著測(cè)試進(jìn)度深入,發(fā)現(xiàn)這個(gè)解決方案代價(jià)也是很大的,首先 javascript,css 代碼占的比重迅速增加,其次 html 結(jié)構(gòu)過于復(fù)雜,所以 css 設(shè)計(jì)難度提高了很多。當(dāng)然這都是小問題,還有一些問題就像刺一樣,不要命卻總讓我心頭不爽,例如:滾動(dòng)條不夠平滑;插入新微博無法維持 webview 滾動(dòng)條位置,微博總會(huì)上下跳動(dòng)。最后一個(gè)要命的問題就是,內(nèi)存開銷還是和國內(nèi)房?jī)r(jià)一樣花花的往上漲。內(nèi)存就好比用戶手里每個(gè)月拿到的那點(diǎn)銀子,真的不好意思讓大家花著買房的錢看著 iCloud 辦著‘偷菜’的那點(diǎn)兒事。

2011年4月,我宣布停止內(nèi)測(cè)。再一次暫停了這個(gè)項(xiàng)目。開始研究 nsview,一個(gè)一個(gè)的解決問題。截止寫這篇文章,上面提到的技術(shù)壁壘都找到了突破口。這真的讓人很興奮,就好比你鑿開了哪面石墻,透過縫隙看到了對(duì)面鮮花遍野的山坡。雖然路還沒有打通,不過沒什么比這個(gè)更讓我寬心的了。

在這期間,我看著眾多微博客戶端開始出現(xiàn)在果粉視線里。WeiLark, Mint, Macbo, Weibo For Mac, Woob 我全部用過,也全部否定了。這些軟件作者大部分是業(yè)余時(shí)間開發(fā)的,并沒有什么報(bào)酬,做出來就已經(jīng)很好了。但是從我的眼光評(píng)價(jià),這些只能算是業(yè)余作品。中國需要像 Tweetie 這樣能夠站在世界級(jí)別的 Mac 軟件出現(xiàn)。雖然這時(shí)候我還不敢保證什么,但是 Miao 絕對(duì)是帶著這樣的使命起步的。

2012年初到4月份左右,我都忙在 iYY 的升級(jí)和改進(jìn)過程上。等再次拿起 iCloud 代碼,我不得不給它改名為 Miao。并且請(qǐng) Yidi 幫我重新設(shè)計(jì)了圖標(biāo),一個(gè)有著可愛粉色肉球的黑貓爪。開發(fā) Miao 過程中我特意在瀏覽窗口模式還保留了 Tweetie 的外觀,向這個(gè)開創(chuàng) Mac 新 UI 時(shí)代的軟件致敬!目前 Miao 1.0 beta 已經(jīng)發(fā)布,收到了果粉的好評(píng),還有朋友留言說,“Miao 絕對(duì)超過了 Twitter For Mac?!?真的沒有什么比自己的設(shè)計(jì)和程序得到用戶的肯定更讓人開心的了。

軟件開發(fā)其實(shí)就像寫文章一樣,需要作者斟酌各種問題。煩了、累了,我就會(huì)反復(fù)告誡自己:“不可因?yàn)橹鄙暇€銷售就胡亂趕進(jìn)度”。 坂田銀時(shí)不是說過么:“錢呢,心急的家伙是得不到的!”。所以對(duì)于我來說,還是決定克服各種技術(shù)壁壘認(rèn)真的開發(fā)更優(yōu)秀的軟件。 對(duì)于用戶來說,好的東西是值得等待的。

本文系作者 連栩 授權(quán)鈦媒體發(fā)表,并經(jīng)鈦媒體編輯,轉(zhuǎn)載請(qǐng)注明出處、作者和本文鏈接
本內(nèi)容來源于鈦媒體鈦度號(hào),文章內(nèi)容僅供參考、交流、學(xué)習(xí),不構(gòu)成投資建議。
想和千萬鈦媒體用戶分享你的新奇觀點(diǎn)和發(fā)現(xiàn),點(diǎn)擊這里投稿 。創(chuàng)業(yè)或融資尋求報(bào)道,點(diǎn)擊這里。

敬原創(chuàng),有鈦度,得贊賞

贊賞支持
發(fā)表評(píng)論
0 / 300

根據(jù)《網(wǎng)絡(luò)安全法》實(shí)名制要求,請(qǐng)綁定手機(jī)號(hào)后發(fā)表評(píng)論

請(qǐng) 登錄后輸入評(píng)論內(nèi)容

快報(bào)

更多

23:02

鮑威爾:長期通脹預(yù)期穩(wěn)固,暫不急于應(yīng)對(duì)能源沖擊

23:01

鮑威爾稱資產(chǎn)購買有助壓低利率,但效果存不確定性

23:00

鮑威爾:當(dāng)前美聯(lián)儲(chǔ)兩大目標(biāo)存在矛盾

22:57

東鵬飲料:2026年擬使用不超過150億元閑置自有資金進(jìn)行現(xiàn)金管理

22:47

中微半導(dǎo)體遞表港交所

22:46

美股內(nèi)存股下挫,內(nèi)存條市場(chǎng)現(xiàn)拋售行情

22:45

伊朗稱查獲139套“星鏈”設(shè)備

22:45

九號(hào)公司:2025年?duì)I收212.78億元,歸母凈利潤17.58億元

22:44

易方達(dá)、廣發(fā)兩公募巨頭2025年業(yè)績(jī)披露,各實(shí)現(xiàn)凈利潤38億、28億

22:42

中國神華:2025年度凈利潤528.49億元,同比下降5.3%

22:42

美元指數(shù)創(chuàng)去年5月以來新高

22:35

美國3月達(dá)拉斯聯(lián)儲(chǔ)商業(yè)活動(dòng)指數(shù)大幅低于預(yù)期

22:35

卡塔爾能源:美國Golden Pass LNG項(xiàng)目實(shí)現(xiàn)液化天然氣生產(chǎn)

22:32

寧波遠(yuǎn)洋:擬使用不超17億元投資建造集裝箱船

22:32

彩訊股份:擬以3.64億元收購基智智能100%股權(quán)

22:31

中國中鐵:2025年凈利潤228.92億元,同比下降17.91%

22:16

美聯(lián)儲(chǔ)理事米蘭:美聯(lián)儲(chǔ)可在一年內(nèi)逐步降息一個(gè)百分點(diǎn)

22:12

納斯達(dá)克“快速納入”指數(shù)新規(guī)5月1日生效

22:09

科創(chuàng)板迎多只AI及芯片設(shè)計(jì)ETF,近期將發(fā)行上市

22:09

歐盟延長對(duì)伊朗人權(quán)方面制裁至2027年

掃描下載App