第一次作業:閱讀與准備作業


第一次閱讀和准備作業

這個作業屬於哪個課程 | <課程的鏈接>

這個作業的要求在哪里 | <作業要求的鏈接>

我在這個課程的目標是 | <更好地理解軟件工程這個專業>

這個作業在哪個具體方面幫助我實現目標 | <讓我改變了之前的一些想法>

一丶 My Blog Introduce
--我的博客地址
--自我介紹
我是來自計算機科學與技術2018級的汪思朋,在寫這個作業之前我回顧了一下自己之前所學的課程和代碼量,我發現自己要完成這個作業是非常的吃力,至於為什么,后面會一一介紹。其實在上大學之前我沒有任何的愛好,自己唯一的閃光點可能就是能夠在放學后按時回家,當然這是對於其他孩子的家長來說的。
上了大學之后,出於各種機緣巧合發現自己喜歡跑馬拉松,打羽毛球,打打游戲等等,其實談不上愛好吧,但是還比較喜歡。比較擅長的馬拉松(其實最多跑了半馬)從一開始的2KM,到5KM,10KM,21KM,怎么說呢,就是一點點地堅持過來的,談不上有什么不容易地地方。不過在將來,我會繼續堅持我的愛好,拉攏周圍的人一起運動,並不斷提升自己。
二丶 Reading & Thinking

1.當初是如何做出選擇現在專業的決定的

我是從土建院轉專業過來的,原來的專業叫建築環境與能源應用工程,因家里是做建築裝飾的,想着學這個可能有點優勢,不過去了之后發現根本不喜歡。於是轉專業到了計算機科學與技術。
至於為什么轉到現在這個專業。
一是自己在高中經常鼓搗班上那台電子白板,對它有着濃厚的興趣。
二是社會對計算機專業的評價都挺高的。

基於以上兩點,我來到了現在的專業,寫着這篇博客。

2.過去一年是否符合專業期待,為什么

說到這個,我想先分享一下我在微博上看到的一個故事。一個朝氣蓬勃的高中生高考后進入了他喜歡的網絡安全專業,他興致勃勃的想要創造網上那些網絡安全神話,不過四年后他仍然碌碌無為,他這時恍然大悟,原來自己感興趣的不是網絡安全專業,而是網絡安全故事。
對比這個故事和所學的知識,我發現我感興趣的其實不是計算機專業敲代碼開發軟件,而是在於用計算機的軟件所帶來的快樂。我相信大部分人都有這樣的專業認識偏差。
不過后來能看着自己寫代碼的在編譯器上通過編譯運行,這就像是自己在和計算機對話,讓他跟隨自己的指令做事,也讓我慢慢地愛上了這個專業。

3.你覺得你所在的專業是你喜歡的領域嗎,它是你擅長的領域嗎?

上一個問題已經回答了我現在確實喜歡這個專業,不過說擅長是不太可能的。一是計算機科學所包含的范圍太廣,二是自己所學的確實不多基礎不太扎實。

4.將來你會選擇從事和你專業相關的工作嗎?是的話給出你想去的城市、公司和崗位,否的話給出原因

我選擇了這個專業就是奔着以后想要從事計算機相關工作來的,至少我現在是這么想的,能做自己喜歡的工作的感覺真是太棒了。
其實我很喜歡成都,如果畢業后能留在成都也是個非常不錯的選擇,個人傾向於去做web前端工程師,想去字節跳動這家公司,因為它開發出了我最喜歡的APP今日頭條。

5.自我感覺你已經具備的專業知識、技能、能力有哪些?已經寫過的代碼量是多少?描述你做的最復雜的項目/作業。

數據結構、編譯原理、操作系統、匯編語言、計算機原理、計算機系統結構、離散數學、概率論、計算機網絡、數據庫、單片機、算法設計、數理統計、高級語言程序設計、面向對象程序設計這些計算機專業必學課程到現在只學了幾門,也不太精通,寫過不超過一萬行代碼,寫過最復雜的作業就是程序設計實踐做貪吃蛇游戲,我還得多加練習。

6.離成為一個合格的本科畢業生,在專業知識、技能、能力上還差距哪些?

離成為一個合格的本科生至少在學齡上有差距。專業知識沒有學完,沒有專一穩定的技能,能力還有待提升。

7.對照以上你閱讀的前人們的經歷,你的選擇是什么?

說到選擇,我對上面有篇文章的那句話很有感觸最讓一個人感到最有成就的事情,不是他做成了什么,而是他選擇了什么
在《對程序員職業的一些建議》這篇文章中,提出了這樣一個質疑:當你在想要付出努力提出類似於“你能推薦幾本書么?”丶“有易學易懂的視頻么?”,能不能穩住,問問自己,我真的熱愛編程,我真的熱愛學習么?科班的,非科班的選擇匯聚到計算機這個行業,我想大概都是因為熱愛。所以我的選擇就是熱愛並去做。

8.在這種選擇下,你認為你相比其他同學來說有何優勢,有何劣勢?

熱愛並堅持去做,我想我的優勢是堅持吧,畢竟半程馬拉松都跑下來了。劣勢就是自己的基礎薄弱

9.針對你的選擇,你給自己的大三設定的規划安排是什么?

我在大三的時候會好好規划自己。爭取參加盡可能多的比賽,獲得好的名次,刷GPA。

10.你對於實現自己的夢想已經做了或者計划做什么樣的准備?

我現在所作的准備就是認真上課,認真完成每一次的作業。思考自己哪些做得不足需要改進。不管結果怎么樣每一個結局,我都能承受,不算破釜沉舟,但絕對全力以赴
三丶My Question

Q1:各個需求和任務之間是有種種復雜的依賴關系的,除了優先級之外,還要考慮相互的依賴關系,怎樣在計划中體現依賴關系呢?

Q1來自於《現代軟件工程-構建之法》P111敏捷流程
A1:
活動之間的依賴關系取決於實際工作的要求,不同活動之間的依賴關系決定了活動的優先順序及其重要性。活動依賴關系是確定項目關鍵路徑和活動浮動時間的必要條件,定義活動間依賴關系的目的是確定每一項活動所需的輸入、輸出關系。我認為我們應該從任務的規模丶復雜程度丶緊急性丶對任務的細節掌握程度等方面下手來在計划中體現相互依賴的關系。小項目應采用簡單的進度計划方法,大項目為了保證按期按質達到項目目標,就需考慮用較復雜的進度計划方法。如果項目進行過程中有一、兩項活動需要花費很長時間,而這期間可把其他准備工作都安排好,那么對其他工作就不必編制詳細復雜的進度計划了。

Q2:有了好的想法,偉大的創新就會緊隨其后嗎?

Q2來自於《現代軟件工程-構建之法》P340IT行業的創新
A2:
相信大家在學高中化學的時候都讀過苯環是由凱庫勒做夢發現的,我感覺他的運氣真好,做個夢就能解決難題。其實我原來也都一只是這么想的,只要有了一個好的點子,你就是創新型人才。如果盧瑟福不用a粒子攻擊金箔,那他會發現中子嗎?如果法拉第不用銅線圈,那他會發現電磁感應嗎?這看起來好像是他們都有不錯的點子,然后創造了創世紀的發現,我自己也有很多不錯的點子,那為什么我不能成為他們那樣的人呢?看了這本書,慢慢思考才發現原來這些科學巨人在頓悟之前已經在相關學科打下了深厚的基礎,同時他們也對這些問題進行了長時間的思考,那些看似神奇的時刻才會光顧他們!所以我們有了好的想法,還要去做,才能由偉大的創新。

Q3:那市面上有那么多不完美的產品,軟件團隊為什么還要把這些不完美的軟件發布出來呢?為什么不能等到它們完美之后再發布?

Q3來自於《現代軟件工程-構建之法》P15概論
A3:
我認為問題的發現是相互的。世界上沒有一個事物是完美無缺的。做一個完美的軟件,需要耗費大量的人力,物力和財力,在軟件行業日新月異的今天,時間是最能衡量一個團隊效率的指標,如果一個團隊做軟件做得很久,勢必不能很好的在市場上生存。
同時,一個不完美的軟件發布出去,肯定會得到用戶的反饋,然后程序員根據反饋再來修改軟件的功能,BUG。因為他們雖然是軟件的第一用戶,但是很難發現自己軟件的問題,這就需要用戶的反饋了。一千個人里有一千個哈姆雷特,就算已經有100個開發者認為這個軟件已經改不出問題,也總會有101個人發現問題或者想出更好的方法,如果要十全十美再發布,不可能實現。

Q4:作為軟件工程學習團隊,適合用什么模式?

Q4來自於《現代軟件工程-構建之法》P91團隊和流程
A4:
首先要明確什么是團隊。團隊主要包含有以下特征:
1.團隊成員有一致的目標
2.團隊成員各有各的分工,互相依賴,相互合作,共同完成任務。
我認為作為學生學習,最好的模式是窩蜂(Chaos Team),這是一個歡樂而隨意的模式,但這種模式最開始有點混亂,,不過隨着團隊的成熟和環境的變化,團隊會逐漸演變成其他的模式。

Q5:計算機科學和軟件工程有什么區別?

Q5來自於自己思考
A5:
一丶計算機科學與技術和軟件工程區別為:涉及領域不同、軟硬件不同、就業領域不同
1、計算機科學與技術:涉及大數據技術導論、數據采集與處理實踐(Python)、Web前/后端開發、統計與數據分析、機器學習、高級數據庫系統、數據可視化、雲計算技術、人工智能、自然語言處理、媒體大數據案例分析、網絡空間安全、計算機網絡、數據結構、軟件工程、操作系統等方面
2、軟件工程:涉及程序設計語言、數據庫、軟件開發工具、系統平台、標准、設計模式等方面
二、軟硬件不同
1、計算機科學與技術:既有軟件技術,也包括硬件技術。
2、軟件工程:偏向軟件技術
四丶Source program version management tools

1.Microsoft TFS

優點:
1.任務版上能將需求、項目進度一覽無余,對於小團隊而言,比甘特圖更有用
2.集成了項目管理、版本控制、BUG 跟蹤,能有效實現 SCRUM
3.能與 VS 無縫接合

缺點:
搭建、維護tfs比較復雜,硬件要求也比較高。

2.Apple XCode

優點:
更快捷的使用如rename這樣的功能。
缺點:
不直接列出ERROR,不便於在編譯時發現問題。

3.GitHub

優點:
1、管理代碼歷史紀錄
2、可以克隆筆記,搭建博客,個人網站,管理項目等等
缺點:
對初學者不太友好,學習門檻高。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM