日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

OO第二次作业总结

發(fā)布時(shí)間:2025/4/14 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OO第二次作业总结 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

第五次作業(yè):多線程電梯

?作業(yè)內(nèi)容:相比于前兩次電梯作業(yè),本次電梯作業(yè)新的變化是多電梯運(yùn)行。要想實(shí)現(xiàn)功能,便需要學(xué)會(huì)使用多線程機(jī)制,使三部電梯保持相互獨(dú)立的對(duì)分配的請(qǐng)求進(jìn)行處理。電梯能夠處理捎帶,且調(diào)度時(shí)采用運(yùn)動(dòng)量均衡策略去響應(yīng)樓層請(qǐng)求。

類(lèi)圖:

度量圖:

?

bug分析:存在兩個(gè)bug。在多線程電梯的調(diào)度過(guò)程中,經(jīng)過(guò)一系列的調(diào)度操作后,會(huì)出現(xiàn)電梯運(yùn)動(dòng)量疊加的錯(cuò)誤,原因在于在運(yùn)動(dòng)量進(jìn)行更新時(shí)的條件分支判斷上存在漏洞,在部分情況下會(huì)對(duì)于同時(shí)響應(yīng)完成的請(qǐng)求進(jìn)行重復(fù)計(jì)數(shù),導(dǎo)致整體運(yùn)動(dòng)量計(jì)算錯(cuò)誤。另外一點(diǎn)同樣是由于代碼邏輯層次的復(fù)雜性而導(dǎo)致的,在對(duì)于電梯判斷捎帶請(qǐng)求的分支中存在著FR后對(duì)ER的捎帶判斷漏洞。

?

分析評(píng)價(jià):從度量圖中,可以明顯的看出電梯對(duì)于入隊(duì)請(qǐng)求的處理的方法中,分支判斷條件太多,使得代碼復(fù)雜性上升,不利于維護(hù)。這也是由于設(shè)計(jì)上的缺陷導(dǎo)致,不能很有效的將分配機(jī)制完善以及其他一些機(jī)制進(jìn)行合并,導(dǎo)致代碼復(fù)雜性上升并且代碼數(shù)量也較多。

第六次作業(yè):IFTTT

作業(yè)內(nèi)容:本次作業(yè)是實(shí)現(xiàn)一個(gè)監(jiān)控程序,針對(duì)于給定范圍內(nèi)的文件屬性的變化,通過(guò)預(yù)先設(shè)定的觸發(fā)器的反應(yīng)從而執(zhí)行相應(yīng)操作。監(jiān)控的范圍限定為一顆目錄樹(shù)。

然而,在本次作業(yè)中,由于時(shí)間安排上的不合理以及對(duì)于代碼的理解還不夠深入,導(dǎo)致未在規(guī)定時(shí)間內(nèi)完成。在面對(duì)這種文件的監(jiān)控時(shí),并不能很好的實(shí)現(xiàn)對(duì)文件屬性的掃描、監(jiān)控。另外,由于個(gè)人原因?qū)е碌乃伎荚O(shè)計(jì)上的時(shí)間消耗過(guò)大,并存在部分不合理的設(shè)計(jì),從而使得無(wú)法正常實(shí)現(xiàn)題目所要求的具體功能。

?

第七次作業(yè):多線程出租車(chē)

作業(yè)內(nèi)容:本次作業(yè)模擬出租車(chē)的乘客呼叫與應(yīng)答系統(tǒng),開(kāi)發(fā)相應(yīng)的程序,繼續(xù)訓(xùn)練線程安全設(shè)計(jì)方法,同時(shí)應(yīng)用課堂所講授的面向?qū)ο蠓治龇椒ê驮O(shè)計(jì)原則來(lái)開(kāi)展分析和設(shè)計(jì)。

類(lèi)圖:

?

?

?

度量屬性:

?

?

?bug分析:bug一個(gè)。在乘客發(fā)出請(qǐng)求后的3s內(nèi),應(yīng)該對(duì)所有進(jìn)入乘客請(qǐng)求服務(wù)區(qū)間的空閑車(chē)輛進(jìn)行標(biāo)記,即搶單,但在此期間,若已進(jìn)行搶單的出租車(chē)響應(yīng)了另一請(qǐng)求并執(zhí)行,應(yīng)當(dāng)對(duì)其狀態(tài)進(jìn)行更新,以防止出現(xiàn)同時(shí)占用同一輛車(chē)的情況。然而,在代碼中,并未對(duì)該種情況進(jìn)行處理,導(dǎo)致有時(shí)會(huì)出現(xiàn)程序輸出錯(cuò)誤的情況。

分析設(shè)計(jì):在這次作業(yè)中,主要考察的是課上所講的SOLID設(shè)計(jì)原則以及各種設(shè)計(jì)的注意事項(xiàng),即對(duì)代碼的設(shè)計(jì)、代碼風(fēng)格的考察。

在本次設(shè)計(jì)中,層次化抽象原則體現(xiàn)在將本次出租車(chē)問(wèn)題抽象成為調(diào)度器類(lèi)、地圖類(lèi)、出租車(chē)類(lèi)、請(qǐng)求類(lèi)、請(qǐng)求隊(duì)列類(lèi)。而各個(gè)類(lèi)之間的方法均衡、分配上還是略有欠缺,部分方法的長(zhǎng)度略微大。并且,部分分支的判斷條件的部分使得代碼邏輯更難被讀懂。

?

心得體會(huì)

這一單元的三次作業(yè),難度都十分的大,都是對(duì)于多線程的設(shè)計(jì)與調(diào)試。由于課程中后期的代碼對(duì)于各個(gè)類(lèi)以及類(lèi)中方法的嚴(yán)密、均衡要求升高,因此,在真正開(kāi)始作業(yè)前,還是應(yīng)當(dāng)多花時(shí)間去對(duì)問(wèn)題進(jìn)行細(xì)致的分析,并考慮各種可能出現(xiàn)的情況以及哪些情況的判斷或功能的實(shí)現(xiàn)能夠進(jìn)行整合,以此避免bug的出現(xiàn)并使得代碼更為簡(jiǎn)潔。否則,將會(huì)出現(xiàn)由于設(shè)計(jì)上的漏洞而不得不耗費(fèi)大量時(shí)間重新設(shè)計(jì)的情況,致使時(shí)間被浪費(fèi)。除此之外,和同學(xué)的交流還是十分重要的,因?yàn)閷?duì)于一個(gè)人來(lái)說(shuō),作業(yè)設(shè)計(jì)上的一些要求容易出現(xiàn)理解上的偏差,如果能多與同學(xué)進(jìn)行交流,不僅能很好的發(fā)現(xiàn)、修改理解上存在的問(wèn)題,也能了解到其他人的設(shè)計(jì)方案,并將其與自己的設(shè)計(jì)方案進(jìn)行相互對(duì)照,找出自己設(shè)計(jì)上的不足,從而在之后的作業(yè)中加以改進(jìn)。

轉(zhuǎn)載于:https://www.cnblogs.com/98-0901/p/8978136.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專(zhuān)家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的OO第二次作业总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。