光陰的迅速,一眨眼就過去了,很快就要開展新的工作了,來為今后的學(xué)習(xí)制定一份計劃。優(yōu)秀的計劃都具備一些什么特點呢?又該怎么寫呢?下面是小編整理的個人今后的計劃范文,歡迎閱讀分享,希望對大家有所幫助。
程序員工作計劃能力程序員工作計劃和發(fā)展思路篇一
工作任務(wù)分步計劃實施。
1、首先做好一級界面和二級界面的優(yōu)化和功能跳轉(zhuǎn)實現(xiàn)。
2、其次完成新增頁面和功能的融合和運行。
3、添加新的接口。
4、實現(xiàn)首頁面附屬業(yè)務(wù)的功能以及美化。
5、調(diào)試軟件中出現(xiàn)的大小bug。
1、對于一級界面和二級界面的優(yōu)化方面,在做好的基礎(chǔ)上,根據(jù) 美工提供的配色方案和界面調(diào)整,實時的修改和變化,做到確保和web和ios端一致。
2、新增加的頁面和功能這塊,是不可避免的。為了適應(yīng)客戶的需求肯定會有新的功能和頁面,如果有新的需求,我們會根據(jù)要求第一時間努力的做出相應(yīng)的界面和功能,保證軟件的剛性需求。
3、新接口這塊,在和java這方面技術(shù)人員協(xié)助的前提下,及時的做好溝通,實現(xiàn)接口的穩(wěn)定實現(xiàn)。
4、對于軟件首頁面顯示和需要實現(xiàn)的其他附屬功能,比如說:牛奶、報紙、交話費、物業(yè)費等方面的功能實現(xiàn),我們會努力的去實現(xiàn)完成,在后期的工作當(dāng)中作為比較重要的一部分去著手開發(fā)。
5、軟件制作的后期,我們會對軟件中出現(xiàn)的大小bug進(jìn)行系統(tǒng)的調(diào)試,這是一項大工程,需要細(xì)心和耐心,但是我會客服種種困難,努力的解決掉這一部分的問題。 由于工作內(nèi)容和工作量都比較大,我會根據(jù)技術(shù)項目的難易程度進(jìn)行有序的調(diào)整,合理的利用工作時間,配合同事陳柯完成該做的工作內(nèi)容。由于我還是剛剛畢業(yè),技術(shù)和經(jīng)驗方面還存在很大部分的欠缺,一個優(yōu)秀軟件開發(fā)人員,應(yīng)當(dāng)具備大量的技術(shù)知識和開發(fā)經(jīng)驗,這些目前我都還沒有,但是我會在工作上虛心請教同事,多查閱網(wǎng)上資料,來補充自己再技術(shù)經(jīng)驗方面的欠缺,多配合我的同事,做好項目工作的完成。 除此之外,我會增強團(tuán)隊意識,眾人拾材火焰高,在團(tuán)隊精神的作用下,我們“戰(zhàn)友”之間才會產(chǎn)生相互關(guān)心和幫助的交互, 體現(xiàn)出關(guān)心公司和團(tuán)隊的責(zé)任感,在工作當(dāng)中能夠積極主動的為團(tuán)隊服務(wù),在加強團(tuán)隊意識的同時我也不會喪失自我主見意識,有問題和想法會及時的和大家溝通,充分的發(fā)揮自己再團(tuán)隊中的作用。
以上是我對自己20xx年第一季度做出的工作計劃,我會努力的去實現(xiàn)自己的計劃,努力學(xué)習(xí)新技術(shù),年管理提高自己的個人能力、為以后能夠更好的工作更順利的工作奠定基礎(chǔ)。
我也希望通過自己的進(jìn)步和努力,能更好的融合到我們的團(tuán)隊當(dāng)中,能為公司的發(fā)展做出自己最大能力的貢獻(xiàn)。體現(xiàn)出自己最大的價值。
程序員工作計劃能力程序員工作計劃和發(fā)展思路篇二
都說逝者如斯夫,不舍晝夜!轉(zhuǎn)眼間,自己在xx網(wǎng)里參加工作已經(jīng)有一年有余了。回首即將逝去的20xx年,可以說是平淡而不普通的一年,發(fā)現(xiàn)自己在各方面都比上一年有所進(jìn)步、提高。一年的結(jié)束孕育著新一年的到來,新的一年意味著新的起點、新的挑戰(zhàn)。昂首期待未來,總結(jié)以往經(jīng)驗。在新一年來臨之際,我現(xiàn)把這一年的工作總結(jié)一下以及將新一年計劃列一下。
在大概3月份左右,xxxxapp第一期基本開發(fā)完成比較穩(wěn)定的版本。在此之前,我主要負(fù)責(zé)參考xxxxapp的android客戶端的開發(fā)工作。xxxx第一期開發(fā)的難度系數(shù)相對比較低,開發(fā)起來還是相對的容易,所學(xué)到的基礎(chǔ)知識基本上可以開發(fā)出來。我個人認(rèn)為當(dāng)時的開發(fā)效率還是比較低的,這里說的是整個項目的開發(fā)效率,不是個人負(fù)責(zé)工作的完成效率,換句話來說是團(tuán)隊的整體開發(fā)效率不高,沒有達(dá)到高效。這個也許是團(tuán)隊協(xié)調(diào)與溝通交流還存在不足的地方。xxxx app實際上基本可以滿足用戶的使用(表面),但是項目的代碼管理(本質(zhì))比較雜亂、擴(kuò)展性差、健壯性也不錯、兼容性也不算好。這無疑導(dǎo)致開發(fā)的工作量大大的增加。產(chǎn)生這些問題的原因有團(tuán)隊的項目開發(fā)經(jīng)驗缺乏,有自己個人的開發(fā)水平有限、技能不足。簡言之,我的專業(yè)技能還不夠強。
在3月份之前,公司聘請了外包團(tuán)隊與我們的團(tuán)隊一起開發(fā)問答app。公司的目的培訓(xùn)公司的團(tuán)隊,讓我們學(xué)習(xí)外包團(tuán)隊的技能。在外包團(tuán)隊的參與和指導(dǎo)下問答app開發(fā)工作相當(dāng)順利,團(tuán)隊的分工清晰、交流充分、協(xié)調(diào)都比較好。問答app的工作接近尾聲,意味著xxx 的重構(gòu)工作要緊張的展開。xxx app的重構(gòu)外包團(tuán)隊主要負(fù)責(zé)聊天模塊和其他協(xié)調(diào)工作,剩下的工作由我們的團(tuán)隊負(fù)責(zé)。 xxx 的開發(fā)難度系數(shù)相當(dāng)來說還是有點高的。在參與xxx 的開發(fā)過程中,讓我增了好多的知識、經(jīng)驗、專業(yè)技能,讓我明白了要不斷地提高自身的能力,讓我找到了自己的學(xué)習(xí)的方式,讓我明白了團(tuán)隊的協(xié)作的重要性。總得來說,我的各方面都有所進(jìn)步了。
本人在公司里,我在工作中具有良好的職業(yè)道德和工作態(tài)度,在同事中起到一定的作用,和同事相處融洽,團(tuán)結(jié)友善,配合順利,并尊重領(lǐng)導(dǎo)意見,服從安排,積極完成各項指示。在同事與領(lǐng)導(dǎo)之間,得到大部分的好評。工作中,我一直嚴(yán)格要求自己盡可能認(rèn)真快速地完成自己的每一項任務(wù),有不明白的地方虛心向他人請教,并著重自身的發(fā)展和提高。我的社交能力、思維邏輯能力還存在不足,需要進(jìn)一步的改善。
在接下來,我說一下我的工作計劃和個人的成長計劃。我的工作主要是負(fù)責(zé)xxx 的開發(fā)。所以我的工作計劃主要圍繞xxx app展開:第一,積極主動修復(fù)發(fā)現(xiàn)xxx 的漏洞,主動參與xxx 的后期的版本的迭代、更新以及維護(hù)。第二,優(yōu)化xxx app的即時通信模塊,提高xxx app的高并發(fā)性,增加更好的動畫效果,以提高app的體驗性。第三,協(xié)調(diào)好跨部門的交流討論相關(guān)xxx 的開發(fā)方案。第四,做好編碼的規(guī)范以及做好代碼的注釋工作,增加代碼的健壯性。新的一年,我的個人成長計劃是android學(xué)習(xí)路線:如何成長為高級工程師。所以要做到以下幾點:第一,拼命學(xué)習(xí),拼命提高自己的技術(shù)實力,使自己的能力變強。第二, 平時在公司認(rèn)真做項目,積極主動,一切以學(xué)知識為目標(biāo),多做項目。同時學(xué)習(xí)公司內(nèi)部的高級工程師、架構(gòu)師寫的代碼,加以理解變成自己的東西。第三,努力,逼著自己去學(xué)習(xí)。
程序員工作計劃能力程序員工作計劃和發(fā)展思路篇三
當(dāng)你感覺生活被網(wǎng)絡(luò)束縛,所得漸漸變少時,請嘗試對線下生活(例如烹飪、天文和木工)多投入一些精力,可能有意想不到的收獲。
2. 保持健康
程序員時常久坐,這讓我們?nèi)菀资艿揭恍┨赜械慕】祮栴}困擾,卻又往往視而不見。用一個月時間養(yǎng)成一項健身習(xí)慣,也別忽視身體的警告。
3. 擁抱不適
在我二十出頭時,曾經(jīng)研究年長者為何有人不斷進(jìn)步,有人停滯不前?答案是“舒適”。我們習(xí)慣找到一個適合自己的系統(tǒng)就不再改變,但技術(shù)不是這樣。
4. 學(xué)門新編程語言
只會一門編程語言將限制自己解決問題的范圍,職業(yè)生涯也會少了一些選擇。用一個月時間學(xué)一門新語言(如racket、haskell、ocaml)或新的編程范式吧。
5.自動化
程序員身上最沒有充分發(fā)揮的潛力是像在虛擬世界那樣,讓真實世界也實現(xiàn)自動化。試著用一個月的時間研究下機器人、arduino,以及類似insteon的系統(tǒng)是件有意思的事。
6. 學(xué)習(xí)數(shù)學(xué)
計算機科學(xué)的核心是數(shù)學(xué)法則,更好的數(shù)學(xué)技有助于成為更優(yōu)秀的程序員。嘗試系統(tǒng)學(xué)習(xí)一下邏輯、離散數(shù)學(xué)和統(tǒng)計學(xué)。
7. 關(guān)注安全
很少有程序員養(yǎng)成了良好的安全習(xí)慣,試著用密碼管理器保存和生成密碼,研究一年中影響最大的安全事故是怎樣發(fā)生的。
8. 備份數(shù)據(jù)
每年都用一段時間檢驗?zāi)愕膫浞莶呗?,研究如何讓這套系統(tǒng)成本更低,使用更便捷。對于關(guān)鍵文件要使用版本管理系統(tǒng)。
9. 學(xué)習(xí)新軟件
為自己開發(fā)的軟件增加創(chuàng)意的一個方式是,學(xué)習(xí)其他新軟件。如果你沒嘗試過3d建模,那么可以學(xué)blender;若你不會latex,很值得嘗試。
10. 完成一個個人項目
倘若你一直在為別人開發(fā)軟件,那何不為自己也寫一個呢?花一個月的時間完成它,然后把它開源。
程序員工作計劃能力程序員工作計劃和發(fā)展思路篇四
新年伊始,萬象更新。自從xx年年底將工作的重心放在企業(yè)erp系統(tǒng)實施的工作中時,在公司領(lǐng)導(dǎo)的關(guān)懷和指導(dǎo)下,在公司部分同事的大力支持下,對erp相關(guān)工作作出了初步的整理。
20xx年公司全面壯大,各項規(guī)章制度逐步健全,尤其是x月份城陽總部的成立,給公司員工提供了優(yōu)質(zhì)的工作環(huán)境和廣泛的發(fā)展空間。俗話說的好: “笨鳥先飛!”想要在20xx年新的一年工作有條不紊、順利的完成,就應(yīng)該先行一步,做好年度工作計劃。自身建設(shè)方面:由于自己參見工作時間比較短,自身經(jīng)驗和處事能力、人際關(guān)系方面都需要全面提高。一方面,自己認(rèn)真努力完成工作,并對自己的工作進(jìn)行自查,自我監(jiān)督。另一方面,離不開公司領(lǐng)導(dǎo)的關(guān)懷指導(dǎo)和公司同事的幫助?!叭诵斜赜形?guī)煛?,我會虛心向領(lǐng)導(dǎo)和各位同事請教相關(guān)問題。
提升業(yè)務(wù)能力:一是提升寫作能力。加強理論學(xué)習(xí),注重平時公文寫作中的鍛煉,注意辦公室其他同志撰寫材料的學(xué)習(xí),能較好完成交辦的新文件擬稿任務(wù)。二是提升語言表達(dá)能力。加強說話訓(xùn)練,做到匯報工作準(zhǔn)確、簡潔、清楚。三是提升辦事能力。準(zhǔn)確領(lǐng)會工作內(nèi)容,勤于思考,能按照工作職責(zé)或領(lǐng)導(dǎo)交辦事項要求,較好的完成任務(wù)。
新學(xué)期開始了,保育工作是幼兒教育重要的組成部分。保育目標(biāo)是促進(jìn)幼兒身體發(fā)育,增進(jìn)幼兒對環(huán)境的認(rèn)識,培養(yǎng)自信等良好個性心理品質(zhì)和行為習(xí)慣。保育工作對幼兒的健康成長以及日后發(fā)展有不可嘀咕的影響。為把保教相結(jié)適應(yīng)新趨勢發(fā)展,我們在上級領(lǐng)導(dǎo)及園長的帶領(lǐng)下,以幼兒為中心,轉(zhuǎn)變以往的觀念,實行保育工作與教育相結(jié)合的原則,結(jié)合本人的工作,特制定了本學(xué)期的工作計劃。
一、公司erp的現(xiàn)實狀況。對于我們公司來說,erpddk3系統(tǒng),還是一個比較新鮮的事務(wù),雖然我們每天都在說k3,但是,現(xiàn)在k3系統(tǒng)在我們公司運行上線還處在初步的階段。目前,只有倉儲部dd倉存模塊和財務(wù)部dd總賬模塊、應(yīng)收應(yīng)付和存貨核算,對系統(tǒng)實施了比較全面的應(yīng)用,第一期計劃范圍內(nèi)的公司供應(yīng)鏈中的銷售模塊和采購模塊,還只是用了一些皮毛,公司其他部門還沒有實現(xiàn)信息化。另外,公司現(xiàn)行的k3系統(tǒng)編碼方案規(guī)則不合理,存在中文、英文、字母和希臘文字共同組成的編碼以及重碼。編碼權(quán)限下放,造成編碼規(guī)則不能很好的執(zhí)行,編碼混亂。公司試用一段時間的條形碼也不是國際通用,給人造成產(chǎn)品不入流的假象。還有,因這是一期遺留項目問題,我個人對k3的相關(guān)經(jīng)驗不是很多,實施起來需要金蝶公司的配合。但目前看來,配合還是有些問題需要協(xié)調(diào)。
二、三月份工作計劃的安排。針對上述公司erp運作方面出現(xiàn)的公司現(xiàn)實存在的狀況,整個三月份,擬計劃三月底完成公司k3系統(tǒng)物料編碼的調(diào)整工作,實現(xiàn)新舊代碼的轉(zhuǎn)換以及一期項目中的銷售模塊和采購模塊的培訓(xùn),實施和上線后相關(guān)問題的解決維護(hù)。
1.物料編碼的調(diào)整:因年前相關(guān)工作的調(diào)整,物料編碼的調(diào)整推遲了一個月,中間舊的物料編碼又新增了很多,給這一塊的工作造成了一定的難度。整個物料編碼的相關(guān)工作會貫穿整個三月。這中間需要相關(guān)部門的配合。我個人這方面同時做新舊代碼對照和新代碼審核及每天新增編碼的修改,工作內(nèi)容、工作量比較大,需要增加短期配合工作的工作人員和我一塊工作。另外,因為本人一直從事公司辦公室、后勤等相關(guān)工作,對公司的生產(chǎn)線、產(chǎn)品不甚熟悉,中間可能有很多產(chǎn)品物料編碼方面的問題需要和相關(guān)部門同事進(jìn)行溝通交流,希望本著為了公司的長足發(fā)展,能夠得到領(lǐng)導(dǎo)和同事的配合。
2.銷售和采購模塊的實施:通過與金蝶相關(guān)實施人員的協(xié)調(diào)聯(lián)系,在三月份訂出時間,請實施人員過來對我們這兩個模塊的相關(guān)使用做一下培訓(xùn)并跟蹤指導(dǎo),同時對我們的物料編碼工作進(jìn)行指導(dǎo)配合。上線實施后,相關(guān)軟件操作、運行方面出現(xiàn)的問題進(jìn)行跟蹤解決和系統(tǒng)維護(hù)。
1.定期做好k3系統(tǒng)服務(wù)器的維護(hù)、備份工作。保障k3系統(tǒng)的正常運行。針對單機用戶使用k3系統(tǒng)出現(xiàn)的問題,進(jìn)行處理。
2.針對公司戰(zhàn)略決策中的時間安排對20xx年內(nèi)需要實現(xiàn)信息化的部門進(jìn)行調(diào)研。將第二期計劃中需要上線的系統(tǒng)模塊分四部實施:首先,與系統(tǒng)上線運作相關(guān)部門組成相關(guān)的項目小組,對項目進(jìn)行分析、調(diào)研,把相關(guān)的業(yè)務(wù)需求整理并確認(rèn)實施方案。其次,將系統(tǒng)能夠?qū)崿F(xiàn)的相關(guān)業(yè)務(wù)需求,對業(yè)務(wù)流程進(jìn)行梳理、微調(diào)(企管部、相關(guān)部門配合),并對系統(tǒng)上線模塊進(jìn)行培訓(xùn)和技術(shù)指導(dǎo)。在次,對上線相關(guān)模塊進(jìn)行測試運行,出現(xiàn)的相關(guān)問題有針對行的解決和完善。最后,系統(tǒng)正式上線運行期的維護(hù)以及運行期問題的反饋和總結(jié),給以后系統(tǒng)實施提供寶貴的工作意見和經(jīng)驗。
1.配合人力資源部把玉舟人力資源系統(tǒng)全面運行上線,實現(xiàn)系統(tǒng)最大最優(yōu)化發(fā)展。
不斷加強學(xué)習(xí),把學(xué)習(xí)做為一項政治任務(wù)來對待,做到經(jīng)常學(xué)、學(xué)經(jīng)常,積極參加機關(guān)內(nèi)組織的各種政治學(xué)習(xí)活動,進(jìn)一步凈化自已的心靈,樹立良好的人生觀、世界觀、價值觀、團(tuán)隊觀、集體觀,強化廉潔自律的自覺意識,增強自身拒腐防變的能力。在工作閑睱之時,自覺學(xué)習(xí)《河北省計劃生育條例》及其細(xì)則,《社會撫養(yǎng)費征收管理辦法》《河北省農(nóng)村部分計劃生育家庭獎勵扶助對象確認(rèn)條件的具體規(guī)定(試行)》等,工作中,要經(jīng)常向有工作經(jīng)驗和工作能力的各科室的業(yè)務(wù)骨干、老計生工作者學(xué)習(xí),學(xué)習(xí)他們的工作經(jīng)驗,工作方法等,通過學(xué)習(xí),去充實自已的頭腦,進(jìn)一步去豐富自已、提高自已、完善自己。
戶型方案完成,與設(shè)計院確認(rèn)出圖時間,施工圖設(shè)計工作步入正軌。總體規(guī)劃重新調(diào)整,配合部一直繼續(xù)進(jìn)行總平規(guī)劃調(diào)整。
2.配合網(wǎng)管對公司的辦公自動化系統(tǒng)和郵件服務(wù)器擬定計劃,實施。
3.公司的網(wǎng)站進(jìn)行頁面的更新維護(hù)和公司的網(wǎng)站服務(wù)器的建立。
4.領(lǐng)導(dǎo)交辦的其他工作。
在日紅公司工作的兩年時間里,對公司也有一定的了解,下面就公司的相關(guān)工作提出自己的意見和建議。因為搞物料編碼的原因,就前期對物料編碼的調(diào)研發(fā)現(xiàn)的問題總結(jié)如下:公司現(xiàn)在的編碼比較混亂,研發(fā)部門有自己的成品編碼,業(yè)務(wù)部門下定單的時候,有客戶訂單號和貨號,生產(chǎn)有自己的配件編碼,鍍一種顏色,就會有一種編碼,模具有自己的模具編碼,k3系統(tǒng)有自己的k3編碼。一款產(chǎn)品,會有幾個編碼,好幾個名字,到了一個部門,可能編碼就有變化,需要編碼對照,才有可能指導(dǎo)自己和兄弟部門可能其實是用的一個東西,只是叫法不同。這樣,很不方便。建議公司成立編碼部門或者小組,對公司所有的編碼進(jìn)行整合,有必要的話,可以抹去客戶相關(guān)編碼,從訂單到我們業(yè)務(wù)員手里,業(yè)務(wù)員生產(chǎn)下單,公司一律走自己的編碼,出廠后(發(fā)貨),由倉儲部(物流)在使用客戶相關(guān)編碼對照發(fā)貨。這樣切斷的好處有:跟客戶打交道的只有相關(guān)接口部門,這樣我們公司的相關(guān)技術(shù)信息也不會外露,以后公司發(fā)展壯大后有自己的品牌以后,公司的相關(guān)編碼,條形碼和進(jìn)銷存流程也比較順暢,避免到時再整合物料編碼帶來的諸多麻煩。
另外,建議成立公司的it部門,便于協(xié)同工作。在這個信息化加速的時代,這項舉措尤為重要。以后,相關(guān)系統(tǒng)上全之后,針對k3系統(tǒng)使用中,不利于我們工作的方面,可以對k3系統(tǒng)進(jìn)行個性化模塊設(shè)計和定制,編出適合公司口味的相關(guān)表單和流程,實現(xiàn)公司人力資源的最優(yōu)化節(jié)省。以上,是我在20xx年度的工作計劃,感謝領(lǐng)導(dǎo)審閱及批評指正。祝我們?nèi)占t公司在20xx年里與時俱進(jìn),勇創(chuàng)輝煌!
程序員工作計劃能力程序員工作計劃和發(fā)展思路篇五
這個話題老生長談了,在面試中必然考核的能力中,我個人認(rèn)為解決問題能力是排第一位的,比學(xué)習(xí)能力優(yōu)先級更高。解決問題的能力既能看出程序員的思維能力,應(yīng)變能力,探索能力等,又可以看出他的經(jīng)驗。如果解決問題能力不佳是無法通過面試的。
這里舉個例子,假如我執(zhí)行了一個php的腳本,如php ,預(yù)期是可以返回一個字符串。但執(zhí)行后沒有任何信息輸出,這時候通過什么方法能知道程序錯在哪里?這里可以將解決問題能力分為8個等級,越到后面的表示能力越強。
程序沒有達(dá)到預(yù)期效果,證明代碼出錯了,看php的錯誤信息是第一步。如果直接忽略錯誤信息,表明這個人不適合擔(dān)任專業(yè)的程序員崗位。有些情況下配置中關(guān)閉了錯誤顯示,需要修改打開錯誤信息,或者錯誤信息被導(dǎo)出到了日志文件,這種情況可以直接tailf 來看錯誤信息。
拿到錯誤信息后直接定位到程序代碼問題,或者到google/百度搜索,即可解決問題。
注:打開錯誤顯示的方法是
中error_reporting 設(shè)置為e_all
php代碼中設(shè)置error_reporting(e_all)
存在多個版本的php,懂得通過which php來看是哪個php,或者加絕對路徑制定php版本。表示此phper通過了此層級的50%考驗。
另外一個情況就是php-cli與php-fpm得到的執(zhí)行情況不一樣,如在web瀏覽器中執(zhí)行是對的,cli下執(zhí)行是錯的。這時候可能是2個環(huán)境加載的不同所致。cli下通過php -i |grep 得到加載了哪個。而fpm下通過phpinfo()的絕對路徑。
這是慣用的程序調(diào)試手段,也是最簡單粗暴有效的解決問題方法。高級一點的手段是使用php的trace類/日志類,花哨一點的可以借助phpstorm+xdebug在ide工具里進(jìn)行debug。
trace工具還可以分析腳本的耗時,進(jìn)行php程序的性能優(yōu)化。
這3個考驗全部通過,表明此程序員已經(jīng)具備了專業(yè)php程序員應(yīng)該有的解決問題能力了。php程序員只要過了這個等級,就足以應(yīng)多大部分情況,在中小型網(wǎng)站中毫無壓力。
strace可以用來查看系統(tǒng)調(diào)用的執(zhí)行,使用strace php ,或者strace -p 進(jìn)程id。strace就可以幫助你透過現(xiàn)象看本質(zhì),掌握程序執(zhí)行的過程。這個手段是在大型網(wǎng)站,大公司里最常用的。如果沒掌握strace,這里只能說抱歉了,我們不接受不會strace的phper。
strace其實也是對程序員基礎(chǔ)的考驗,如果不懂操作操作系統(tǒng),完全不懂底層,肯定也達(dá)不到會用strace的程度。當(dāng)然strace對于php代碼里的死循環(huán)是解決不了的。比如你發(fā)現(xiàn)一個php-fpm進(jìn)程cpu100%了,strace恐怕是解決不了的。因為strace是看系統(tǒng)調(diào)用,一般都是io類操作,既然是io密集,那cpu一定不可能是100%。
tcpdump可以抓到網(wǎng)卡的數(shù)據(jù)通信過程,甚至數(shù)據(jù)內(nèi)容也可以抓到。使用tcpdump可以看到網(wǎng)絡(luò)通信過程是什么樣的,如何時發(fā)起了tcp syn3次握手,何時發(fā)送fin包,何時發(fā)送rst包。這是一個基本功,如果不懂tcpdump,證明不具備網(wǎng)絡(luò)問題解決能力。
使用xhporf/xdebug導(dǎo)出php請求的.調(diào)用過程,然后分析每個函數(shù)調(diào)用的過程和耗時。能夠分析php程序的性能瓶頸,找出可以優(yōu)化的點。
另外一個對于網(wǎng)絡(luò)服務(wù)的調(diào)用,如mysql查詢,curl,其他api調(diào)用等,通過記錄起始和結(jié)束時microtime,返回的是不是false,可以得到調(diào)用是否成功,耗時多少。如果可以匯總數(shù)據(jù),整理出調(diào)用的成功率,失敗率,平均延時,證明此程序員對接口質(zhì)量敏感,有大型網(wǎng)站項目經(jīng)驗。
gdb是c/c++調(diào)試程序的利器,需要具備一定c/c++功底的程序員才會能熟練使用gdb。上面說的strace無法跟蹤php程序cpu100%,而gdb是可以跟蹤的。另外gdb也可以解決php程序core dump的問題。
通過gdb -p 進(jìn)程id,t zbacktrace等工具,可以很方便地跟蹤php程序的執(zhí)行。像上面的cpu100%往往是php程序中發(fā)生死循環(huán)了,gdb進(jìn)行多次查看,就大致可以得到死循環(huán)的位置。具備gdb解決問題能力的php程序員少之又少。如果能使用gdb解決php問題,這個phper百分之百可以通過面試,并且可以拿到較高的技術(shù)評級。
如果能熟悉php內(nèi)核和擴(kuò)展的源碼,遇到php程序中最復(fù)雜的內(nèi)存錯誤,也可以有解決的能力。這類php程序員就是鳳毛麟角了。配合gdb工具和對php源碼的熟悉,可以查看opcode的信息,execute_data的內(nèi)存,全局變量的狀態(tài)等。