《构建之法》第一次作业
| 這個作業要求在哪里 | |
| 我在這個課程的目標是 | 理解軟件開發流程,為以后的項目開發做好知識儲備 |
| 這個作業在哪個具體方面幫助我實現目標 | 通過大量的閱讀和查閱資料對專業有更深的認知,借鑒前輩們的經驗之談來更明確自己的想法 |
| 我的博客地址 | icjy |
1.建立博客,介紹自己
這是我的第一篇博客,而此時的我已經是一名軟件工程專業的大三學生了。雖說讀的是這個專業,但是過去的兩年時間里我并沒有花太多的時間在專業上,健身、娛樂、部門成了我生活的一部分。自認為做事也沒有達到持之以恒的程度(畢竟我距離上次健身已經一個月了)?,F在回想起堅持鍛煉的那段時間,會非常佩服當時的自己。無論如何,希望未來的兩年能帶著當初那股沒放棄的勁兒,在專業的路上拼搏下去吧。
2.閱讀與思考
(1)回想一下你初入大學時對你所在專業的暢想
當初你是如何做出選擇你所在專業的決定的?
大一的時候從經管院轉到計科院,當時無非就是覺得技術行業很吃香,畢竟現代社會的改革發展依賴于技術持續不斷的創新,所以當時的我覺得比起讀經濟學,軟件工程出身的可能才是未來人才市場上更需要的,而且當時也覺得玩技術是件挺有意思的事。
你認為過去一(兩)年中接觸到的課程是否符合你對你自己所在專業的期待,為什么?
從大一到大二,我慢慢地才明白這個專業實際上更多的需要自己不斷地向外延伸學習,學校教的都是非?;A的東西,僅靠學校的課程畢業以后混飯吃是不太現實的。所以一開始的我是有點失望的,因為學校能教給我們的東西確實太有限了。想要系統的對這個行業有更深的理解,需要的是通過長期的自學來構建自己的一套知識體系框架。
你覺得你所在的專業是你喜歡的領域嗎,它是你擅長的領域嗎?
我覺得計算機這個行業就是我想要從事的領域,雖然說現在的我依舊不擅長,依舊才疏學淺,但以后我肯定會沿著我追求的那個方向努力,到自己向往的高校讀研深造。
將來你會選擇從事和你專業相關的工作嗎?是的話給出你想去的城市、公司和崗位,否的話給出原因
肯定會呀,可能會去深圳或者杭州發展吧,這兩個城市都算是高科技行業的聚集地了,比起北上廣競爭壓力或許沒那么大。但是想要進好的公司肯定需要我更多的努力和準備。
(2)對照前人們走過的路和描述未來發展,現在的你
自我感覺你已經具備的專業知識、技能、能力有哪些?已經寫過的代碼量是多少?描述你做的最復雜的項目/作業。
在接觸過的C、C#、Java這些語言中,我最熟練的可能就只有Java,從大一到現在寫過的代碼量也就至少一萬+,寫過簡單的網頁及其基本的功能實現,但當時學到servlet和jsp就止步不前了。做過最難的項目應該就是這個暑期專業課的基于SpringBoot的項目開發了吧(笑),在最短的時間之內學會了最多的東西。就是在這個暑假才學會了使用springboot、maven、mybatis...做開發。
離成為一個合格的本科畢業生,在專業知識、技能、能力上還差距哪些?
我覺得現在的我與其他小伙伴相比,在專業上其實還有很大的差距,無論是專業知識、技術還是能力,過去我沉浸在專業課的時間確實太少,缺乏許多動手實踐的機會。無論是專業知識的基礎認識還是熟練使用,只有多花時間呆在電腦面前,多查多看多練,才有快速成長提高的效果。
(3)目前是一個人生選擇的十字路口,考研、工作、考公、出國,不同的選擇在大三就有不同的努力方向。而無論考研還是工作的每條路徑,也有許多不同的分支。
對照以上你閱讀的前人們的經歷,你的選擇是什么?在這種選擇下,你認為你相比其他同學來說有何優勢,有何劣勢?
從大一的時候就告訴自己一定會選擇考研,在大城市長大的我(坐標廣州)特別能感受到這個時代的行業競爭壓力之大。在北上廣深,除非你的能力真的特別優秀,光憑本科生的文憑是沒有進大廠的可能性的。但現在的我在技術方面下的功夫還不夠多,離我的那個理想目標還很遠吶,所以接下來的一年真的會讓自己完全沉浸在代碼的洪流之中。
針對你的選擇,你給自己的大三設定的規劃安排是什么?你對于實現自己的夢想已經做了或者計劃做什么樣的準備?
極限學習,朝著自己想要從事的方向前進。還有就是要向身邊的前輩們學習,交流學習經驗,更快速的提高自己的能力!剩余的時間要好好準備考研,為了想去的學校,想要的offer做充分準備!!
3.提有質量的問題
問題一:
第5章提到了軟件團隊的各種模式,那在一個企業的成長的過程中,是在團隊模式中進行不斷的轉換,(比如從瀑布模型轉換到原型模型,再轉換到漸進交付模型)從而摸索到最適合自己企業的模式,還是說在企業的不同項目組中使用不同的團隊模式?對于一個初步創業的小企業是否有經驗可取?
問題二:
書P116,提到對敏捷的團隊要求之一是”每個人能全面負責,自己搞定規格說明書,和別人溝通,同時自己搞定測試“。如果大家都自己搞定測試,那對于敏捷的團隊來說難道就不需要測試人員了?我覺得這對團隊人才的要求過高,而且如果項目龐大,個人花大量時間搞測試難免會拖慢整個項目進度。
問題三:
第6章敏捷流程中提到了Scrum Master,和第9章的Project Manager,百度后我發現是兩個不一樣的概念,Project Manager側重于管理整個項目和團隊,負責達成項目商業目標;而Scrum Master側重于引導,協助產品負責人,輔導團隊,跟進項目流程。那兩者之間到底如何才能進行良好的角色轉換呢?經查閱資料我還發現,現實中存在一些公司會讓同一個人承擔這兩種角色,他們認為沒有必要明確劃分這兩個角色,這種說法又是否合理呢?
問題四:
書P217,在功能說明書這一塊提到“盲目地套用最全面的模板,對項目有大的副作用“。我想了很久也沒弄清楚這里的副作用有什么?之前我們寫項目的時候,里面的功能說明書就是參考別人的模板寫的,包括我們這個暑假寫的Java項目,講課的老師也說網上有很多說明書的模板,可以直接拿來用。
問題五:
根據第13章提出的軟件測試的內容和方法,對于開發周期不同的項目是否應該選擇不同的測試方法?如果只是一個小型項目,比如我們要在第8周完成的項目,是否需要每個階段都進行單元測試,還是在開發的最后才進行測試;對于大型項目,使用TDD(書P117提到)是否能更高效的完成開發(據查閱很少企業使用TDD開發)?
4.源程序版本管理工具
1)Git
優點:
1、目前世界上最先進的分布式版本控制系統
2、速度快、靈活
3、支持離線工作
缺點:
1、學習時間長,難度高
2、代碼保密性較差
3、權限管理不方便,需要安裝插件
2)GitHub
優點:
1、項目可共享,還能讓其他開發者幫助你完成項目
2、項目不需要保存在本地或者服務器
3、可以隨時下載他人的開源代碼
4、分支功能強大
缺點:
1、網頁對中文不夠友好,不能很好解決GB2312/GBK
2、上手需要時間,需要多實踐
3、在代碼追蹤上仍有缺陷
3)Microsoft TFS
優點:
1、為開發,測試,發布各個流程提供了自動化工具,開發更簡便
2、代碼分支結構可視化
3、內置BUG管理工具,提高開發效率
缺點:
1、整個項目周期都需要聯機
2、學習成本高
3、代碼提交錯了會比較麻煩
轉載于:https://www.cnblogs.com/icjy/p/11488576.html
總結
以上是生活随笔為你收集整理的《构建之法》第一次作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常见的嵌入式操作系统
- 下一篇: 送你一招超级快速网站,系统搬家教程,上百