女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

盤點初級開發人員常犯的編程錯誤,增加更多的面試機會

如意 ? 來源:讀芯術微信公眾號 ? 作者:讀芯術微信公眾號 ? 2020-10-19 15:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

想要找到編程類工作,首先你需要擁有Git存儲庫,這是招聘者首先要考慮的問題之一。為了擁有一個看起來不錯的存儲庫,你應該有定期操作,提供可用項目的實時版本,并且只顯示你引以為傲的幾個項目,而不是編寫過的每一行代碼。

這些是存儲庫維護的基礎知識,遲早會有人查看你的代碼,以檢查你是否適合該公司。招聘者會在幾分鐘內決定邀請你參加面試是否值得。這既是好消息,也是壞消息。

壞消息是一個明顯的錯誤會讓你失去找到工作的機會;好消息是人們并不想深入研究你的代碼。他們希望對你的代碼和體系結構有一個大概的了解,你不必聰明絕頂,只要能很好地完成任務即可。

下面是一些初級開發人員常犯的錯誤。如果能避免犯這些錯誤,你將獲得更多的面試機會。

過時的注釋

程序員對注釋的看法不一。我們難以就是否或何時對代碼進行注釋達成一致,但是大家都贊同一件事:如果你注釋了,它應與你的代碼對應。

注釋是用來解釋代碼的。當你編寫了一些復雜或不清楚的代碼時,注釋可以幫助讀者理解它們。但要記住,如果你修改了代碼,就要相應修改注釋。否則注釋將不會幫助人理解而是使人產生誤解,沒有比誤導更糟糕的編程錯誤了。一個錯誤的注釋比沒有注釋更糟糕。

更糟糕的是,代碼中的注釋非常突出?,F代IDE賦予注釋不同于其他代碼的顏色,并且注釋更容易被發現。添加注釋,代碼中就會添加“自述”符號。所以,注釋和代碼之間的任何差異都很容易被發現。明智地選擇你的注釋,記住隨著代碼的更新也要更新它們。

使用相同的用例結合庫和語言

在我第一次面試之前,我需要先完成一個招聘任務。那是一個簡單的web應用程序,所以我編寫了一些代碼,在google上搜索了對于一些更棘手部分的解決辦法,然后就完成了應用程序的編寫。

在面試中,招聘者問我為什么在代碼中混用jQuery代碼和純JavaScript代碼,我無從作答。事實是,我粘貼了一些的代碼片段,沒有多加思考,看到代碼正常運作后,我就繼續下一步任務了。

這種錯誤在初級開發人員中很常見。我們太專注于解決任務,以至于沒有花時間去考慮我們正在做的內容。不要掉進這個新手陷阱,記得檢查每一行代碼來確保你知道為什么要把它放在那里。

重復代碼

不要寫重復的代碼(DRY)是編程的法則。為重復碼創建抽象機制是編程的本質。但剛開始的時候,這往往很有挑戰性。你想解決問題,所以盡你所能去做。然后繼續執行其他任務,就會一直編寫重復代碼。相信我,你可以做得更好。

盡早養成好習慣。每當你完成一個功能時,重新閱讀代碼,思考是否有機會重構某些東西。記住,代碼的第一個版本是有缺陷的,你需要去改進它。

另外,當你在處理其他功能時,請花時間分析重復代碼。你幾乎發現總能有重寫它的余地(例如,使用一個循環或創建一個新函數)。如果每次都這樣自我改進,你會編寫出更穩健、更優雅的代碼。

沒有錯誤處理

幾乎不可能構建任何有意義且總能完美地運行的應用程序。無論是將數據放入數據庫還是進行API調用,都會發生錯誤。未經處理的錯誤不僅會阻止單個函數的執行,甚至會使整個應用程序崩潰。

對可能出現的錯誤的預期是一個稱職程序員的標志。只要在訪問或更新一些外部數據,就必須為最壞的情況做好準備。處理潛在的錯誤可以使你的應用程序更強大,同時也使未來的開發人員(可能是你自己)快速發現錯誤。這向招聘者展示了你對代碼的整體考慮。

缺乏一致性

一致性是優秀軟件的標志。它使代碼更易于閱讀和維護。統一的代碼更容易預測,也更容易推理,所以你應該盡可能地做到這一點。在更高級別的抽象機制上,一致性很難實現。掌握它需要很多年,你應該盡早開始學習。

記住,只用一種語言來命名事物。通常是英語,但在個人項目中,你可以用任何想要的語言命名變量和函數,只要保證它一直是同一種語言即可。

如果你使用的是制表符或空格都沒關系,只要保持一致的即可。因為使用駱駝案或蛇案都是一樣的。這兩個都很棒,但你得選一個。你需要創建或選擇一個風格指南并一直堅持使用下去。你也應該使用像Prettier這樣的工具,這是專業環境中的一個標準,這使保持一致的代碼格式易于管理。

無論使用什么工具和風格,都要讓它們成為你的第二天性。即使是錯誤千篇一律的代碼通常也比不一致的正確代碼好,因為它更容易修復。

缺乏對工具的了解

在典型的項目中,需要相當快地使用一些外部庫。許多程序員幾乎自動安裝一些庫,因為它們在每個項目中都使用。

外部庫之所以很棒,是因為它們用行之有效的方法解決反復出現的問題。然而,初級開發人員通常不了解他們正在使用的庫,最終將一個庫堆疊在另一個庫上,或者重新實現一些現有功能。

對于現代web開發,最常見的誤解可能是在每個React項目中都使用Redux。盡管Redux有一些用例,但在大多數小項目中,使用React就足夠了。

每次在項目中安裝庫時,請閱讀或者瀏覽文檔。檢查可以使用的方法和屬性,確保你了解庫可以解決哪些問題,哪些問題需要不同的工具。這樣你就可以為工作選擇合適的工具,并證明你的選擇是正確的。

避開這些新手陷阱,能讓你的面試入選率大幅提升。
責編AJX

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編程
    +關注

    關注

    88

    文章

    3686

    瀏覽量

    95044
  • 匯編語言
    +關注

    關注

    14

    文章

    410

    瀏覽量

    36723
  • 源代碼
    +關注

    關注

    96

    文章

    2953

    瀏覽量

    68131
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    芯科科技助力藍牙Mesh設備開發

    藍牙Mesh 1.1是藍牙技術聯盟(Bluetooth SIG)發布的最新標準版本,Silicon Labs(芯科科技)作為開發和實施藍牙Mesh標準的主要貢獻者之一,特別制作了藍牙Mesh開發流程頁面,以幫助開發人員快速了解新
    的頭像 發表于 05-16 13:51 ?362次閱讀
    芯科科技助力藍牙Mesh設備<b class='flag-5'>開發</b>

    Thingy:91 X 為開發人員提供了一個經過全球認證的、多傳感器、電池供電的蜂窩物聯網原型平臺

    Thingy:91 X 為開發人員提供了一個經過全球認證的、多傳感器、電池供電的蜂窩物聯網原型平臺 挪威奧斯陸 – 2024年12月10日 – 全球領先的低功耗無線連接解決方案提供商Nordic
    的頭像 發表于 05-08 17:41 ?714次閱讀

    NanoEdge AI Studio 面向STM32開發人員機器學習(ML)技術

    NanoEdge? AI Studio*(NanoEdgeAIStudio)是一種新型機器學習(ML)技術,可以讓終端用戶輕松享有真正的創新成果。只需幾步,開發人員便可基于最少量的數據為其項目創建
    的頭像 發表于 04-22 11:09 ?534次閱讀
    NanoEdge AI Studio 面向STM32<b class='flag-5'>開發人員</b>機器學習(ML)技術

    基于RV1126開發板的人員檢測算法開發

    在RV1126上開發人員檢測AI算法組件
    的頭像 發表于 04-14 13:56 ?284次閱讀
    基于RV1126<b class='flag-5'>開發</b>板的<b class='flag-5'>人員</b>檢測算法<b class='flag-5'>開發</b>

    英特爾FPGA AI套件軟件2024.3版本的主要亮點

    FPGA AI 套件軟件 2024.3 版全新發布,其提供諸多增強功能,旨在改善開發人員開發體驗。為幫助開發人員應對在實際應用中面臨的挑戰,此次更新也增加了多項新功能,從提高性能到提
    的頭像 發表于 03-07 14:07 ?652次閱讀

    GoPoint嵌入式開發平臺 釋放i.MX潛力 簡化Linux開發

    GoPoint是一個以用戶為中心的平臺,旨在釋放恩智浦i.MX微處理器的潛力,從而優化基于i.MX應用處理器的開發。憑借豐富的交互式演示庫和強大的技術支持,GoPoint幫助開發人員更快、更智能
    發表于 02-28 10:07 ?558次閱讀
    GoPoint嵌入式<b class='flag-5'>開發</b>平臺 釋放i.MX潛力 簡化Linux<b class='flag-5'>開發</b>

    Spire.XLS for JavaScript——多功能JavaScript電子表格庫(一)

    文件。借助此工具,開發人員能夠高效地執行各種 Excel 編程任務,包括從模板生成新文檔、更新現有文檔或轉換文件格式。 Spire.XLS for JavaScript 與 Vue、React
    的頭像 發表于 01-21 09:29 ?474次閱讀
    Spire.XLS for JavaScript——多功能JavaScript電子表格庫(一)

    【科普系列】LIN協議錯誤類型介紹

    了解 LIN總線的錯誤類型對于開發、測試均具有極大的好處。通過對錯誤類型的全面了解,開發人員可以提前預測和避免潛在的問題,增強系統的穩定性、容錯能力和安全性,從而提升系統整體的可靠性和
    的頭像 發表于 01-02 17:27 ?4017次閱讀
    【科普系列】LIN協議<b class='flag-5'>錯誤</b>類型介紹

    擁有低功耗低成本的Open開發應用,開發人員必看!

    Open開發應用需求,有沒有低功耗、低成本方案? 今天我們一起來聊聊Air780EP模組。 一、Air780EP實網功耗數據 4G-Cat.1模組支持三種功耗模式:常規模式、低功耗模式、PSM+模式
    的頭像 發表于 12-26 11:50 ?481次閱讀
    擁有低功耗低成本的Open<b class='flag-5'>開發</b>應用,<b class='flag-5'>開發人員</b>必看!

    EEPROM編程常見錯誤及解決方案

    EEPROM(電可擦可編程只讀存儲器)在編程過程中可能會遇到多種錯誤。以下是一些常見的EEPROM編程錯誤及其解決方案: 常見
    的頭像 發表于 12-16 17:08 ?4304次閱讀

    MSPDebugStack開發人員指南

    電子發燒友網站提供《MSPDebugStack開發人員指南.pdf》資料免費下載
    發表于 12-05 14:49 ?0次下載
    MSPDebugStack<b class='flag-5'>開發人員</b>指南

    Silicon Labs SiWx917M SoC提供大內存配置

    聯網設備實際需要多少內存,以及我們的SiWx917M Wi-Fi6 SoC如何響應物聯網開發人員更多內存的需求。
    的頭像 發表于 11-04 10:38 ?751次閱讀

    socket編程中的錯誤處理技巧

    Socket編程是網絡編程的基礎,它允許程序之間通過TCP/IP協議進行通信。然而,網絡通信是不穩定的,可能會遇到各種問題,如網絡延遲、連接中斷、數據丟失等。 錯誤處理的重要性 提高程序的健壯性
    的頭像 發表于 11-01 17:47 ?1491次閱讀

    Node-Red可視化編程:簡化開發的創新之選

    Node-Red 是構建物聯網 (IOT Internet of Things) 應用程序的一個強大工具,其重點是簡化代碼塊的“連接 ” 以執行任務。它使用可視化編程方法,允許開發人員將預定義的代碼塊 (稱為“節點 ”,Node) 連接起來執行任務。
    的頭像 發表于 09-21 10:37 ?802次閱讀
    Node-Red可視化<b class='flag-5'>編程</b>:簡化<b class='flag-5'>開發</b>的創新之選

    C2000 ePWM開發人員指南

    電子發燒友網站提供《C2000 ePWM開發人員指南.pdf》資料免費下載
    發表于 09-07 09:45 ?0次下載
    C2000 ePWM<b class='flag-5'>開發人員</b>指南