0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

做軟件工程師必須要知道的20個(gè)問(wèn)題

工程師人生 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:工程師吳畏 ? 2018-10-17 10:38 ? 次閱讀

1,針對(duì)面向?qū)ο蟮脑O(shè)計(jì)與分析:為了讓軟件有更好的可維護(hù)性,重用性以及快速開(kāi)發(fā), 簡(jiǎn)短的OOAD與它的SOLID原則對(duì)于每一個(gè)軟件工程師來(lái)說(shuō)都是該牢記的。

2,軟件品質(zhì)因素:軟件工程的好壞與軟件的品質(zhì)因素是絕對(duì)關(guān)聯(lián)的。請(qǐng)?jiān)陂_(kāi)發(fā)過(guò)程中深 刻的理解這一點(diǎn)。

3,數(shù)據(jù)結(jié)構(gòu)與算法:深刻理解像數(shù)組,列表,棧,樹(shù),圖,集合等這樣的基本數(shù)據(jù)結(jié)構(gòu) ,并在軟件開(kāi)發(fā)過(guò)程的關(guān)鍵部分使用好的算法。這樣整個(gè)軟件邏輯就會(huì)很清晰了。

4,Big-O符號(hào)來(lái)標(biāo)記算法復(fù)雜度:在開(kāi)發(fā)過(guò)程中,請(qǐng)務(wù)必使用 Big-O 符號(hào)來(lái)比較兩個(gè)代 碼段或者不同算法所消耗的時(shí)間復(fù)雜度,這在開(kāi)發(fā)高性能軟件項(xiàng)目中是非常重要的。

5,UML圖:UML圖已經(jīng)是一個(gè)通用的軟件設(shè)計(jì)與分析的語(yǔ)言。如果你們?cè)陂_(kāi)發(fā)軟件的過(guò)程 中還沒(méi)有做UML圖,那么給人的感覺(jué)就是這壓根就不是軟件工程。

6,正確的衡量軟件開(kāi)發(fā)進(jìn)度。

7,設(shè)計(jì)模式:設(shè)計(jì)模式是前人在解決各種各樣問(wèn)題的過(guò)程中總結(jié)出來(lái)的一套標(biāo)準(zhǔn)對(duì)策, 在絕大部分情況下,使用這些模式肯定是利大于弊的。如果你不想在開(kāi)發(fā)過(guò)程中重新造 輪子,那么就直接使用它吧。

8,理解操作系統(tǒng)的基本原理:因?yàn)樗械膽?yīng)用程序都是直接運(yùn)行在操作系統(tǒng)這個(gè)層級(jí)的 ,學(xué)習(xí)操作系統(tǒng)的基本原理能讓我們對(duì)應(yīng)用程序的底層以及性能有更好的把握。

9,學(xué)習(xí)計(jì)算機(jī)組成原理:幾乎所有的應(yīng)用程序甚至是OS都需要與物理硬件打交道的,所 以學(xué)習(xí)計(jì)算機(jī)組成原理與理解操作系統(tǒng)原理一樣都可以讓你對(duì)于應(yīng)用程序有更深刻的理 解。

10,網(wǎng)絡(luò)基礎(chǔ):網(wǎng)絡(luò)與計(jì)算機(jī)組成,操作系統(tǒng)以及傳輸流程都是緊密關(guān)聯(lián)的,理解網(wǎng)絡(luò)基礎(chǔ) 能讓你在開(kāi)發(fā)過(guò)程中得心應(yīng)手。

11,需求分析:對(duì)于軟件工程來(lái)說(shuō),需求分析是項(xiàng)目的起點(diǎn),也是整個(gè)項(xiàng)目最最重要的 部分。如果這玩意你搞錯(cuò)了,整個(gè)項(xiàng)目的方向也就錯(cuò)了。

12,軟件測(cè)試:在軟件工程中,測(cè)試也是非常重要的。單元測(cè)試,黑盒測(cè)試,白盒測(cè)試,TDD,集成測(cè)試等等都是我們必須知道的。

13,獨(dú)立管理:主要是說(shuō)類庫(kù)(JAR,DLL等等)的管理,熟悉使用一些類似Maven,Ant,lvy這樣的知名工具對(duì)于大型項(xiàng)目的類庫(kù)管理是非常有用的。

14,持續(xù)化集成:持續(xù)化集成能讓測(cè)試大型模塊與組件更加簡(jiǎn)單與自動(dòng)化,關(guān)于這一點(diǎn),你可以去了解 Hudson 這個(gè)工具。

15,ORM:了解Hibernate這種將對(duì)象與數(shù)據(jù)庫(kù)表映射工具是非常有好處的,它可以減少你的代碼量并節(jié)省你的代碼維護(hù)時(shí)間。

16,DI(獨(dú)立注入):DI或者IoC(Inversion of Control)的具體實(shí)現(xiàn)框架Spring能讓你創(chuàng)建對(duì)象時(shí)更加輕松,對(duì)于大型企業(yè)級(jí)項(xiàng)目更是如此。

17,版本控制系統(tǒng):VSC工具(SVN,TFS,CVS等)對(duì)于團(tuán)隊(duì)合作開(kāi)發(fā)以及版本控制都是非常重要的。熟練使用這類工具算得上是必備技能。

18,國(guó)際化:通過(guò)i18n來(lái)將不同語(yǔ)種的字符串存儲(chǔ)在其他文件是讓軟件支持多語(yǔ)種最好的方法。所以i18n在不同的IDE上使用的方法我們應(yīng)該了解。

19,架構(gòu)模式:理解類似MVC,MVP,MVVM這樣的架構(gòu)模式非常關(guān)鍵,這能讓你寫(xiě)出易維護(hù),簡(jiǎn)潔以及方便測(cè)試的代碼。

20,編寫(xiě)干凈的代碼:你的代碼僅僅只是能夠正常運(yùn)行是遠(yuǎn)遠(yuǎn)不夠的,它必須讓編程人員輕易看懂來(lái)方便后續(xù)維護(hù),所以,代碼格式以及編寫(xiě)易讀的代碼技術(shù)都是我們需要了解的關(guān)鍵點(diǎn)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 軟件工程師
    +關(guān)注

    關(guān)注

    8

    文章

    217

    瀏覽量

    21109
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    硬件工程師如何元器件變更的決策

    硬件工程師如何元器件變更的決策某產(chǎn)品在從研發(fā)轉(zhuǎn)規(guī)模生產(chǎn)階段,采購(gòu)部門給硬件工程師推薦了新的MOSFET(稱為A),該物料比該產(chǎn)品研發(fā)階段使用的MOSFET(稱為B)價(jià)格更低,且供貨渠道更友好。作為
    的頭像 發(fā)表于 07-06 08:17 ?367次閱讀
    硬件<b class='flag-5'>工程師</b>如何<b class='flag-5'>做</b>元器件變更的決策

    嵌入式軟件工程師如何提升自己?

    嵌入式軟件工程師如何提升自己? 作為一名嵌入式軟件工程師,在這個(gè)充滿機(jī)遇和挑戰(zhàn)的領(lǐng)域里,如何提升自己顯得非常重要,它決定了你未來(lái)的發(fā)展方向和成就。接下來(lái),我們一起探討一下。 1.奠定扎實(shí)
    發(fā)表于 06-12 11:20

    索尼誠(chéng)邀軟件工程師參與PS免費(fèi)手游平臺(tái)設(shè)計(jì)

    據(jù)悉,近日,澳大利亞知名媒體TweakTown發(fā)現(xiàn),索尼互動(dòng)娛樂(lè)正在為其旗下的PlayStation Studios Mobile招募一名資深的軟件工程師,負(fù)責(zé)設(shè)計(jì)PlayStation的免費(fèi)手機(jī)游戲平臺(tái)。
    的頭像 發(fā)表于 05-23 17:08 ?653次閱讀

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師軟件開(kāi)發(fā)領(lǐng)域中的一種專業(yè)工程師
    發(fā)表于 05-16 11:00

    如何入門硬件工程師

    想跨行業(yè)硬件設(shè)計(jì)工程師,應(yīng)該如何學(xué)習(xí)規(guī)劃呢
    發(fā)表于 03-17 21:49

    Cognition發(fā)布首款A(yù)I軟件工程師Devin

    據(jù)報(bào)道,Cognition公司今日公布了其首款人工智能軟件工程師——Devin,掀起了打造軟件模式變革的序幕。該產(chǎn)品在SWE-bench代碼測(cè)驗(yàn)中展現(xiàn)出卓越表現(xiàn),甚至超過(guò)了部分頂級(jí)人類工程師的水準(zhǔn)。
    的頭像 發(fā)表于 03-13 10:57 ?563次閱讀

    如何搞崩一個(gè)硬件工程師心態(tài)?試試對(duì)ta說(shuō)這幾句

    硬件工程師
    揚(yáng)興科技
    發(fā)布于 :2024年02月20日 18:05:49

    為什么要做自動(dòng)化測(cè)試?測(cè)試工程師存在的必然性

    軟件測(cè)試這個(gè)過(guò)程的實(shí)施主體就是測(cè)試工程師。那么多少個(gè)測(cè)試工程師比較合適呢,或者換句話說(shuō)如上的事情必須要測(cè)試
    的頭像 發(fā)表于 01-16 11:32 ?836次閱讀

    嵌入式軟件工程師常用的

    最近我換工作了,看見(jiàn)不同嵌入式軟件工程師用的平臺(tái)都不一樣,所以我整理了一下。PlatformIO:多平臺(tái)支持:PlatformIO支持多種嵌入式平臺(tái),包括Arduino、ESP8266、ESP32
    的頭像 發(fā)表于 12-24 08:00 ?594次閱讀
    嵌入式<b class='flag-5'>軟件工程師</b>常用的

    自動(dòng)化工程師必須掌握的六大知識(shí)面

    對(duì)于電氣工程師來(lái)講,圖紙是相當(dāng)重要的,所以制圖軟件必須要掌握的,這是毫無(wú)疑問(wèn)的。而且電路設(shè)計(jì)和電氣識(shí)圖這兩個(gè)知識(shí)點(diǎn)是相互關(guān)聯(lián)的,會(huì)畫(huà)電氣圖肯定看得懂電氣圖,電氣圖看多了,也能設(shè)計(jì)電氣
    的頭像 發(fā)表于 12-07 09:31 ?1282次閱讀
    自動(dòng)化<b class='flag-5'>工程師</b><b class='flag-5'>必須</b>掌握的六大知識(shí)面

    嵌入式硬件和軟件哪個(gè)好?

    ,如復(fù)位電路、常用濾波器電路、功放電路、高速信號(hào)傳輸線的匹配電路等;故障定位、解決問(wèn)題的能力;設(shè)計(jì)文檔的組織編寫(xiě)技能! 那對(duì)于嵌入式軟件工程師來(lái)說(shuō): 嵌入式軟件工程師領(lǐng)域較新,他的發(fā)展也是很快的,像
    發(fā)表于 12-05 15:17

    硬件工程師需要了解主機(jī)廠的標(biāo)準(zhǔn)嗎?

    公司最近購(gòu)買了GMW14082-2010通用汽車的標(biāo)準(zhǔn),要求硬件工程師進(jìn)行閱讀。我有點(diǎn)不清楚這個(gè)標(biāo)準(zhǔn)的作用對(duì)于我們來(lái)說(shuō)有什么用,里面的內(nèi)容需要全部都掌握嗎?還是只要知道其中一些關(guān)鍵點(diǎn)就行?
    發(fā)表于 11-23 15:03

    FPGA工程師需要具備哪些技能?

    上獲取。此外,他們還需要知道如何使用現(xiàn)成的PCB和其他電路板,以進(jìn)行各種通信協(xié)議的測(cè)試和驗(yàn)證。 六、測(cè)試驗(yàn)證 測(cè)試驗(yàn)證是FPGA設(shè)計(jì)中非常關(guān)鍵的一個(gè)環(huán)節(jié)。FPGA工程師需要利用各種工具
    發(fā)表于 11-09 11:03

    工程師知道的50個(gè)路由器知識(shí)要點(diǎn)

    電子發(fā)燒友網(wǎng)站提供《工程師知道的50個(gè)路由器知識(shí)要點(diǎn).pdf》資料免費(fèi)下載
    發(fā)表于 11-02 09:38 ?1次下載
    <b class='flag-5'>工程師</b>需<b class='flag-5'>知道</b>的50<b class='flag-5'>個(gè)</b>路由器知識(shí)要點(diǎn)