現(xiàn)學(xué)現(xiàn)賣—軟開基礎(chǔ)

昨天現(xiàn)學(xué)現(xiàn)賣,給組里同事培訓(xùn)了軟件開發(fā)的基本知識(shí)。培訓(xùn)時(shí)間比較緊張,而且準(zhǔn)備也不夠充分,有些地方?jīng)]講清楚。再多叨擾一下。寫著寫著就多了,索性擴(kuò)大傳播范圍吧。

1.昨天有提到研發(fā)使用的編程語言主要是c++和c#. 后來又補(bǔ)充了matlab.嚴(yán)格來講,matlab屬于開發(fā)工具,底層代碼還是c語言. 不過matlab中封裝了很多函數(shù),而且自帶GUI控件。對(duì)于做一些涉及矩陣運(yùn)算,曲線繪制的小工具開發(fā)很適用。

2.目前接觸到的主要軟件開發(fā)工具visio studio, 支持很多不同的編程語言,比如C/C++/C#/VB/F#等等。可以完成整個(gè)軟件開發(fā)生命周期,編程,調(diào)試(昨天沒講,這應(yīng)該是碼農(nóng)花費(fèi)最多時(shí)間的),編譯,測(cè)試等。

所用到的工具是這其中的一個(gè)功能模塊,添加相應(yīng)的tfs服務(wù)器即可使用??梢怨芾硇枨?,傳遞文檔。此外,測(cè)試的童鞋還會(huì)使用到MTM工具編寫測(cè)試用例。

現(xiàn)在vs的功能愈發(fā)強(qiáng)大,可以與GitHub連接,進(jìn)行編譯和發(fā)布。

3.c++是大家都熟悉的面向?qū)ο缶幊陶Z言。而大多數(shù)人都學(xué)過的c語言則是面向過程的。這兩者區(qū)別是啥呢?

面向?qū)ο蟮木幊谭绞街饕獦?gòu)成模塊是對(duì)象(不是lover),也就是類??梢越o類定義屬性或者方法。這種編程的過程中不關(guān)心最終實(shí)現(xiàn)了什么結(jié)果,而是關(guān)心每一個(gè)對(duì)象有哪些操作。比如要建造一個(gè)房子,進(jìn)行布局和平面設(shè)計(jì)的時(shí)候就類似面向?qū)ο缶幊獭D睦镉袕N房,那里是客廳,分別是什么裝修風(fēng)格。

而面向過程的編程主要構(gòu)成模塊是算法,通過函數(shù)實(shí)現(xiàn)算法。關(guān)心的是實(shí)現(xiàn)某個(gè)步驟的每一步和前后順序。比如設(shè)計(jì)好房子后,開始建造和裝修。打地基,建造,封頂,貼瓷磚,裝水電,刷墻,貼瓷磚,進(jìn)家具等等步驟。

再舉一個(gè)簡單粗暴的例子。把大象裝進(jìn)冰箱需要幾步(開門,放大象,關(guān)門)就是典型的面向過程。而定義大象(鉆進(jìn)冰箱,呆在原地),冰箱(開門,關(guān)門)就是面向?qū)ο蟆?/p>

經(jīng)過以上比較,我們基本可以看出,前端開發(fā)童鞋主要是進(jìn)行面向?qū)ο缶幊蹋驗(yàn)椴煌缑娌煌丶加凶约旱囊恍┨匦?,響?yīng)方式。沒有嚴(yán)格的先后順序。而算法童鞋則主要是面向過程,因?yàn)橛忻鞔_的輸入輸出和運(yùn)行順序。

4.對(duì)于初學(xué)者和自學(xué)者,比較推薦python.主要是因?yàn)檎娴南鄬?duì)簡單,非常接近自然語言。很多產(chǎn)品工程師自己上手開發(fā)都從python入手。對(duì)于數(shù)據(jù)挖掘,爬取也比較適用。python支持面向?qū)ο蠡蛎嫦蜻^程。

但是編程簡單對(duì)學(xué)習(xí)者有利,但是帶來的不好之處就是人看了好懂,計(jì)算機(jī)就該撓頭了,雞同鴨講。所以python運(yùn)行時(shí)需要有解釋器先把它翻譯成編譯語言,然后計(jì)算機(jī)再繼續(xù)編譯。而c++等則沒有此過程。因此,python寫代碼容易,運(yùn)行效率低。而c++則相反。

好了,如果你也想學(xué)習(xí)的話,可以就從身邊做起。如果想直接從C++入手,此處應(yīng)該有硬廣,哈哈哈~~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容