? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 聊天系統(tǒng)項(xiàng)目總結(jié)
做項(xiàng)目的日子總是艱苦的但又是非常充實(shí)的,每天一到教室就開始碼自己的代碼和修改錯(cuò)誤,在這當(dāng)中也是覺得時(shí)間過的最快的時(shí)候,從這幾天的項(xiàng)目當(dāng)中也有自己的一些收獲和感想。
剛拿到這個(gè)項(xiàng)目的時(shí)候也是構(gòu)思了大半天的,大概的想了想我要實(shí)現(xiàn)的功能的代碼,到第二天的時(shí)候我才開始根據(jù)我想的去寫,不過想象總是美好的,現(xiàn)實(shí)卻是殘酷的,在一寫到群聊的時(shí)候就發(fā)現(xiàn)問題了,字符串的拆分我跟不不會,而一旦字符串的拆分不能完成我就無法對我想要發(fā)送信息的人發(fā)送信息,瞬間就懵逼了,想了很久只能先擱那兒,去實(shí)現(xiàn)其他的,后來我才去找了找關(guān)于字符串拆分的問題,結(jié)果都沒有找到我所需要的,去找老師他也只是給了我一個(gè)函數(shù),但我研究了一下好像是不能完成拆分的,不過我沒有放棄,我根據(jù)我所知道的拆分函數(shù)sscanf函數(shù)和strstr函數(shù)去另外編寫代碼去驗(yàn)證,最后終于被我給弄出來了,那時(shí)候,我心里還是非常激動的,也有一些成就感吧,畢竟是根據(jù)自己的辦法來實(shí)現(xiàn)拆分的,解決了這一個(gè)問題,實(shí)現(xiàn)簡單的聊天功能也就比較容易了,至于大概的實(shí)現(xiàn),服務(wù)器我用的是select來監(jiān)聽連接的客戶端,客戶端用的是一個(gè)線程來寫數(shù)據(jù)和一個(gè)while死循環(huán)來讀數(shù)據(jù)。
寫項(xiàng)目對我來說不是一件容易的事,我中午也都基本沒怎么休息,去吃飯的時(shí)候我都在想我的代碼接著應(yīng)該怎么寫或是在想我的錯(cuò)誤出在了哪里,特別是星期四那天還熬夜寫到1點(diǎn),終于在星期五完成了答辯。寫項(xiàng)目越寫越覺得自己的知識非常欠缺,很多地方自己想添加功能卻又不知道怎么實(shí)現(xiàn),老師所講的很多消息傳遞的方式想用卻又不知道怎么添加進(jìn)去而又不會造成阻塞,也就造成自己實(shí)現(xiàn)的功能比較少,對所學(xué)知識的運(yùn)用也就比較少了。
最后,我一直覺得做一件事就要堅(jiān)持到底,不要半途而廢,遇到困難要平下心來解決,反正就是要堅(jiān)持吧,我也一直在堅(jiān)持著。