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

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

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

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

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

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

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

大約是在2010年底,我第一次暫停了項(xiàng)目。另外創(chuàng)建了一個(gè)小工程,希望測(cè)試使用 NSView 做同樣效果。這種數(shù)據(jù)填充的程序自然而然想到了使用 NSTableView,況且我使用它也是最多的。接下來(lái)繪制TableCell,從這里開(kāi)始情況很快就變得復(fù)雜起來(lái)。繪制可變高度的表格很難實(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è)問(wèn)題的好方法。但卻卡在了 CALayer 的各種事件相應(yīng)上,不知道如何在 CALayer 上添加鼠標(biāo)點(diǎn)擊,鼠標(biāo)選擇,文本拷貝等等。無(wú)法實(shí)現(xiàn)表情圖片顯示, 不能點(diǎn)擊鏈接,這不就是殘廢么!我一下子望而卻步了。

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

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

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

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

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

本文系作者 連栩 授權(quán)鈦媒體發(fā)表,并經(jīng)鈦媒體編輯,轉(zhuǎn)載請(qǐng)注明出處、作者和本文鏈接。
本內(nèi)容來(lái)源于鈦媒體鈦度號(hào),文章內(nèi)容僅供參考、交流、學(xué)習(xí),不構(gòu)成投資建議。
想和千萬(wàn)鈦媒體用戶分享你的新奇觀點(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)

更多

2026-04-02 23:00

ST西發(fā):董事長(zhǎng)失聯(lián),副董事長(zhǎng)代行職責(zé)

2026-04-02 22:57

潮宏基遞表港交所

2026-04-02 22:56

消息稱伊朗、阿曼起草霍爾木茲海峽通行協(xié)議,市場(chǎng)大幅波動(dòng)

2026-04-02 22:54

小米集團(tuán)調(diào)整子公司股東,雷軍持股比例增加

2026-04-02 22:40

美股三大股指迅速轉(zhuǎn)漲

2026-04-02 22:39

國(guó)際原油價(jià)格快速走低,WTI原油漲幅收窄至7%以內(nèi)

2026-04-02 22:38

美股三大股指跌幅進(jìn)一步收窄

2026-04-02 22:32

美國(guó)上周EIA天然氣庫(kù)存360億立方英尺,預(yù)期340億立方英尺

2026-04-02 22:31

廣電總局電視劇司召開(kāi)電視劇健康審美座談會(huì)

2026-04-02 22:20

邁威生物通過(guò)港交所上市聆訊

2026-04-02 22:20

農(nóng)業(yè)農(nóng)村部:支持雄安新區(qū)打造農(nóng)業(yè)特色產(chǎn)業(yè)鏈,拓寬農(nóng)民就業(yè)增收渠道

2026-04-02 22:13

伊朗副外長(zhǎng):正研究對(duì)通過(guò)霍爾木茲海峽的船只收費(fèi)

2026-04-02 22:09

美股三大股指短線拉升

2026-04-02 22:07

潔美科技:MLCC離型膜正在逐步放量

2026-04-02 22:06

鈞達(dá)股份:經(jīng)驗(yàn)證公司鈣鈦礦疊層電池小面積轉(zhuǎn)換效率達(dá)到33.53%

2026-04-02 22:06

伊朗旅游部長(zhǎng):伊朗多處文化遺產(chǎn)受損,已啟動(dòng)修復(fù)與追責(zé)程序

2026-04-02 22:05

巨星農(nóng)牧:規(guī)劃今年商品肥豬完全成本目標(biāo)約為6元/斤

2026-04-02 22:05

鉑科新材:近期油價(jià)走高等能源安全問(wèn)題對(duì)公司新能源領(lǐng)域的影響整體偏正面

2026-04-02 22:04

伊朗回應(yīng)特朗普:憑250年歷史無(wú)法威脅6000年文明

2026-04-02 22:03

福特第一季度在美交付457315輛汽車,同比下降8.8%

掃描下載App