第一次做業:閱讀與準備做業

第一次閱讀和準備做業

這個做業屬於哪一個課程 | <課程的連接>

這個做業的要求在哪裏 | <做業要求的連接>

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

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

一丶 My Blog Introduce
--個人博客地址
--自我介紹
我是來自計算機科學與技術2018級的汪思朋,在寫這個做業以前我回顧了一下本身以前所學的課程和代碼量,我發現本身要完成這個做業是很是的吃力,至於爲何,後面會一一介紹。其實在上大學以前我沒有任何的愛好,本身惟一的閃光點可能就是可以在放學後按時回家,固然這是對於其餘孩子的家長來講的。
上了大學以後,出於各類機緣巧合發現本身喜歡跑馬拉松,打羽毛球,打打遊戲等等,其實談不上愛好吧,可是還比較喜歡。比較擅長的馬拉松(其實最多跑了半馬)從一開始的2KM,到5KM,10KM,21KM,怎麼說呢,就是一點點地堅持過來的,談不上有什麼不容易地地方。不過在未來,我會繼續堅持個人愛好,拉攏周圍的人一塊兒運動,並不斷提高本身。
二丶 Reading & Thinkinghtml

1.當初是如何作出選擇如今專業的決定的前端

我是從土建院轉專業過來的,原來的專業叫建築環境與能源應用工程,因家裏是作建築裝飾的,想着學這個可能有點優點,不過去了以後發現根本不喜歡。因而轉專業到了計算機科學與技術。
至於爲何轉到如今這個專業。
一是本身在高中常常鼓搗班上那臺電子白板,對它有着濃厚的興趣。
二是社會對計算機專業的評價都挺高的。

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

2.過去一年是否符合專業期待,爲何程序員

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

3.你以爲你所在的專業是你喜歡的領域嗎,它是你擅長的領域嗎?web

上一個問題已經回答了我如今確實喜歡這個專業,不過說擅長是不太可能的。一是計算機科學所包含的範圍太廣,二是本身所學的確實很少基礎不太紮實。算法

4.未來你會選擇從事和你專業相關的工做嗎?是的話給出你想去的城市、公司和崗位,否的話給出緣由數據庫

我選擇了這個專業就是奔着之後想要從事計算機相關工做來的,至少我如今是這麼想的,能作本身喜歡的工做的感受真是太棒了。
其實我很喜歡成都,若是畢業後能留在成都也是個很是不錯的選擇,我的傾向於去作web前端工程師,想去字節跳動這家公司,由於它開發出了我最喜歡的APP今日頭條。編程

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

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

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

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

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

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

8.在這種選擇下,你認爲你相比其餘同窗來講有何優點,有何劣勢?

熱愛並堅持去作,我想個人優點是堅持吧,畢竟半程馬拉松都跑下來了。劣勢就是本身的基礎薄弱

9.針對你的選擇,你給本身的大三設定的規劃安排是什麼?

我在大三的時候會好好規劃本身。爭取參加儘量多的比賽,得到好的名次,刷GPA。

10.你對於實現本身的夢想已經作了或者計劃作什麼樣的準備?

我如今所做的準備就是認真上課,認真完成每一次的做業。思考本身哪些作得不足須要改進。無論結果怎麼樣每個結局,我都能承受,不算破釜沉舟,但絕對盡心盡力
三丶My Question

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

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

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

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

Q3:那市面上有那麼多不完美的產品,軟件團隊爲何還要把這些不完美的軟件發佈出來呢?爲何不能等到它們完美以後再發布?

Q3來自於《現代軟件工程-構建之法》P15概論
A3:
我認爲問題的發現是相互的。世界上沒有一個事物是天衣無縫的。作一個完美的軟件,須要耗費大量的人力,物力和財力,在軟件行業突飛猛進的今天,時間是最能衡量一個團隊效率的指標,若是一個團隊作軟件作得好久,勢必不能很好的在市場上生存。
同時,一個不完美的軟件發佈出去,確定會獲得用戶的反饋,而後程序員根據反饋再來修改軟件的功能,BUG。由於他們雖然是軟件的第一用戶,可是很難發現本身軟件的問題,這就須要用戶的反饋了。一千我的裏有一千個哈姆雷特,就算已經有100個開發者認爲這個軟件已經改不出問題,也總會有101我的發現問題或者想出更好的方法,若是要十全十美再發布,不可能實現。

Q4:做爲軟件工程學習團隊,適合用什麼模式?

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

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

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

1.Microsoft TFS

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

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

2.Apple XCode

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

3.GitHub

優勢: 一、管理代碼歷史紀錄 二、能夠克隆筆記,搭建博客,我的網站,管理項目等等 缺點: 對初學者不太友好,學習門檻高。

相關文章
相關標籤/搜索