欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android 開(kāi)發(fā)與代碼無(wú)關(guān)技巧詳解

 更新時(shí)間:2022年12月29日 11:36:47   作者:我是綠色大米呀  
這篇文章主要為大家介紹了Android 開(kāi)發(fā)與代碼無(wú)關(guān)技巧詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

1.如何找到代碼

作為客戶(hù)端的開(kāi)發(fā),工作中經(jīng)常遇到,后端的同事來(lái)幫忙找接口詳情。產(chǎn)品經(jīng)理來(lái)詢(xún)問(wèn)之前的某些功能的業(yè)務(wù)邏輯,而這些代碼或者邏輯都是前人遺留下來(lái)的……沒(méi)有人知道在哪。那如何快速的找到你想找到的代碼位置呢?

(1)無(wú)敵搜索大法

雙擊shift鍵,頁(yè)面上有什么就在代碼中全局搜索什么,比如標(biāo)題,按鈕名字~找到資源文件布局文件,再進(jìn)一步搜索用到這些文件的代碼位置。

(2)log輸出大法

在不方便debug的時(shí)候,可以輸出一些log,通過(guò)查看log的輸出,可以明確的看出程序運(yùn)行時(shí)的運(yùn)行邏輯和變量值。

(3)profiler查看大法

我們要善于利用AndroidStudio提供的工具,比如profiler。在profiler中可以看到手機(jī)中正在運(yùn)行的Activity的名字,甚至能看到網(wǎng)絡(luò)請(qǐng)求的詳情等等,功能很強(qiáng)大!

(4)萬(wàn)能法找到頁(yè)面

在你的Application中注冊(cè)一個(gè)Activity的生命周期監(jiān)聽(tīng),

ActivityLifeCycle lifecycleCallbacks = new Application.ActivityLifecycleCallbacks();
registerActivityLifecycleCallbacks(lifecycleCallbacks);

在進(jìn)入到頁(yè)面的時(shí)候,直接輸出頁(yè)面路徑~

@Override
public void onActivityCreated(Activity activity, Bundle bundle) {
    Log.e(TAG, "onActivityCreated :" + getActivityName(activity));
}

2.如何解決bug

這里討論的是那些第一時(shí)間沒(méi)有思路不知道如何解決的bug。這些bug有的是因?yàn)殚_(kāi)發(fā)過(guò)程中粗心寫(xiě)錯(cuò)變量名,變量值,使用了錯(cuò)誤的方法,少執(zhí)行了方法,之前修改bug時(shí)某些地方被遺漏了,或者不小心把不應(yīng)該改動(dòng)的地方做了改動(dòng)。也可能是因?yàn)槭褂玫牡谌綆?kù)存在缺陷,也可能是數(shù)據(jù)問(wèn)題,接口返回的數(shù)據(jù)不正確,用戶(hù)做了意料之外的操作沒(méi)有被程序正確處理等等。

解決棘手的bug之前,首先要穩(wěn)定自己的心態(tài)。記住,心態(tài)很重要。無(wú)論這個(gè)bug已經(jīng)造成了線上多么大的影響,你的boss多么著急的催著你解決bug,要有一個(gè)平穩(wěn)的心態(tài)才能解決問(wèn)題,否者,慌慌忙忙緊緊張張的狀態(tài)下去解決bug,很可能會(huì)造成更多的bug!

(1)先看再想最后動(dòng)手

解決bug的第一步,當(dāng)然是穩(wěn)定的復(fù)現(xiàn)bug。根據(jù)我的經(jīng)驗(yàn),如果一個(gè)bug可以被穩(wěn)定的復(fù)現(xiàn),至少它就被解決了70%。

通過(guò)觀察bug的現(xiàn)象,就可以對(duì)bug做個(gè)大致的歸類(lèi)或者定位了。是因?yàn)閿?shù)據(jù)問(wèn)題?還是第三方庫(kù)的問(wèn)題?還或者是代碼的問(wèn)題?

接著就是debug,看日志等常規(guī)操作了~

如果經(jīng)過(guò)上面的操作,你還是一籌莫展,那么請(qǐng)往下看。

(2)改變現(xiàn)狀

如果你真的是一點(diǎn)思路也沒(méi)有,很可能某些可能造成bug的代碼也看不太懂。我建議你做一些改變現(xiàn)狀的操作,比如:注掉某些代碼,嘗試其他的輸入數(shù)據(jù)或者操作??偠灾?,就是讓bug的現(xiàn)象出現(xiàn)改變! 那么你做的這些操作肯定是對(duì)這個(gè)bug是有影響的?。?!然后再逐步恢復(fù)之前注掉的代碼,直到恢復(fù)某些注掉代碼之后,bug的現(xiàn)象恢復(fù)了。很有可能這里就是造成bug的位置。bug定位了之后,再去思考解決辦法。

(3)是技術(shù)問(wèn)題還是業(yè)務(wù)問(wèn)題

在實(shí)際的開(kāi)發(fā)過(guò)程中,很多問(wèn)題是通過(guò)技術(shù)手段解決不了的??赡苁菢I(yè)務(wù)邏輯就出現(xiàn)了矛盾,也有可能是是因?yàn)橐恍┢嫫婀止值耐醢说钠?股。這類(lèi)問(wèn)題要早點(diǎn)發(fā)現(xiàn),早點(diǎn)提出,才能早點(diǎn)解決。有些可能踩紅線的問(wèn)題,作為開(kāi)發(fā),不要試圖通過(guò)技術(shù)去解決?。?!否則可能要去踩縫紉機(jī)了~~~

(4)張張嘴遠(yuǎn)勝于動(dòng)動(dòng)手

我一直堅(jiān)信,世界上有更多能力比我強(qiáng)的人。我現(xiàn)在面對(duì)的bug也肯定不是只有我面對(duì)了。張張嘴問(wèn)問(wèn)周?chē)耐?,?wèn)問(wèn)網(wǎng)站上的大神,現(xiàn)在網(wǎng)絡(luò)這么發(fā)達(dá),只要?jiǎng)e人解決過(guò)的問(wèn)題,就不是問(wèn)題。

很多時(shí)候的bug可能只是因?yàn)槟銓?duì)某些領(lǐng)域不熟悉,去請(qǐng)教那些對(duì)這個(gè)領(lǐng)域熟悉的人,你的問(wèn)題對(duì)他們來(lái)說(shuō)可能不是問(wèn)題。

(5)bug解決不了,那就解決提出bug的人

有的時(shí)候的bug可能不是bug。提出bug的人可能只是對(duì)某些操作或者現(xiàn)象不理解,或者沒(méi)有達(dá)到他們的預(yù)期。他們就會(huì)提出來(lái),他們覺(jué)得現(xiàn)在的程序是有問(wèn)題的……這個(gè)時(shí)候可以去嘗試解決這個(gè)提出bug的人!讓他們覺(jué)得這不是一個(gè)bug。當(dāng)然你沒(méi)有這種“解決人”的能力的話(huà),就還是老老實(shí)實(shí)去解決bug吧~

(6)解決了bug之后

人的成長(zhǎng)在于,遇到了問(wèn)題,敢于直面問(wèn)題,解決問(wèn)題,并讓自己今后避免再出現(xiàn)類(lèi)似的問(wèn)題!

解決了bug,無(wú)論這個(gè)bug是自己造成的還是別人造成的。要善于總結(jié),避免日后自己再寫(xiě)出類(lèi)似的問(wèn)題。

3.如何實(shí)現(xiàn)不會(huì)的功能

(1)不要急著拒絕

遇到如何實(shí)現(xiàn)不會(huì)的功能,內(nèi)心首先不要著急抗拒。

人總要成長(zhǎng),開(kāi)發(fā)的技能如何成長(zhǎng)?總不是像流水線工人那樣做些一些“熟練”操作吧?總要走出自己的舒適圈,嘗試解決一些問(wèn)題,突破自己的上限吧~

你要知道,在Android開(kāi)發(fā)這個(gè)領(lǐng)域,其實(shí)沒(méi)有什么逾越不了技術(shù)壁壘!只要?jiǎng)e人家有的,你就可能有!別人家做出來(lái)的東西,你就能做出來(lái)。這種信心,至少要有的~

(2)大事化小小事化了

一個(gè)復(fù)雜的功能,通??梢苑纸獬梢恍┖?jiǎn)單功能,簡(jiǎn)單的功能就可以攻克!

那么當(dāng)你在面對(duì)要實(shí)現(xiàn)一個(gè)復(fù)雜功能或者沒(méi)有接觸過(guò)的功能開(kāi)發(fā)的時(shí)候,你所要做的其實(shí)就是分解這個(gè)功能,然后處理分解后的小功能,最后再把這些小功能組合回去!

心態(tài)要穩(wěn),天塌了有個(gè)高的頂著

遇到問(wèn)題,嘗試解決,實(shí)在不行,就要及時(shí)向上級(jí)反饋。作為你的上級(jí),他們有責(zé)任也有能力幫你解決問(wèn)題,或者至少給你提供解決問(wèn)題的一種思路。心態(tài)要穩(wěn),天塌了有個(gè)高的頂著。

以上就是Android 開(kāi)發(fā)與代碼無(wú)關(guān)技巧詳解的詳細(xì)內(nèi)容,更多關(guān)于Android 無(wú)關(guān)代碼開(kāi)發(fā)技巧的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論