程序員如何學習更好的知識_如何保持學習并成為更好的程序員

程序員如何學習更好的知識

by Kevin Gardner

凱文·加德納(Kevin Gardner)

如何保持學習并成為更好的程序員 (How to keep learning and become a better coder)

Coding has come a long way since the days of Robert Taylor and ARPANET and Sir Tim Berners-Lee and CERN — and it continues to advance. When it comes to mastering the art of coding, there is always room for improvement. The better you can code, the more options you’re likely to have in your career. It’s important that you don’t let yourself get complacent with where you’re at and that you constantly strive to learn more and keep pace with developments and your community.

自羅伯特·泰勒(Robert Taylor)和ARPANET,蒂姆·伯納斯·李爵士(Tim Berners-Lee)和歐洲核子研究組織(CERN)時代以來,編碼已經走了很長一段路,并且還在不斷發展。 在掌握編碼技術時,總會有改進的余地。 您編寫的代碼越好,您在職業中可能擁有的選擇就越多。 重要的是,不要讓自己對自己所處的位置感到自滿,并且要不斷努力地學習更多,并與發展和社區保持同步。

The following are five great tactics you should incorporate into your learning practices so that you can constantly become a more effective coder.

以下是您應該在學習實踐中采用的五種重要策略,以便您可以不斷成為更有效的編碼人員。

計劃如何克服局限和干擾 (Plan out how you’re going to overcome limitations and distractions)

Let’s start with the basics. One of the most important things you need to do to raise your coding abilities is to know what you need to work on. There is so much to learn when it comes to coding, but every coder usually has some task or language in particular that they struggle with. Knowing what you don’t know can sometimes be hard in coding if you’re not pushing yourself often and trying to do new things.

讓我們從基礎開始。 要提高編碼能力,最重要的事情之一就是要知道需要做什么。 關于編碼,有很多東西要學習,但是每個編碼器通常都有一些特別的任務或語言,他們很難與之抗衡。 如果您不經常推動自己并嘗試做新的事情,那么有時您很難知道不知道的內容。

If you’re just getting started, you might start with learning JavaScript. It’s the standard web platform language, is the most popular in terms of usage, and is commonly used for mobile app creation. You could try a boot camp to expand your skills set, but these can get expensive, so only commit if you’re truly invested and want someone to report to.

如果您剛剛入門,則可以從學習JavaScript開始。 它是標準的Web平臺語言,在用法上最受歡迎,并且通常用于移動應用程序的創建。 您可以嘗試新手訓練營來擴展您的技能,但是這些技能可能會很昂貴,因此只有在您真正投入并希望有人向其報告時,才投入工作。

Something to consider also is where you’re coding. Georgia Institute of Technology released a study that found online developers take about ten to fifteen minutes to get back in the flow of work if interrupted. Plan for how to eliminate controllable distractions like social media, background noises, and so on. Make a good environment conducive to focus, in whatever ways work best for you.

編碼的地方也要考慮。 佐治亞理工學院發布的一項研究發現,在線開發人員如果被打斷,大約需要10到15分鐘才能恢復工作流程。 規劃如何消除可控制的干擾,例如社交媒體,背景噪音等。 以最適合您的方式,營造一個有利于專注的良好環境。

不要只停留一個迭代或一個例子 (Don’t stop with just one iteration or example)

You’ll never perfect your coding abilities if you write code until it works and just stop, or if you copy and paste without learning why something works. It’s a good idea to get into the habit of writing code three times to perfect your work and understanding before you call a project complete. You might also write your code by hand. This may sound counterintuitive — computer code via pencil and paper — and will more than likely take a bit more time, handwriting code sharpens your proficiency at any level.

如果您編寫代碼直到代碼起作用并停下來,或者如果您在不了解某些原因的情況下進行復制和粘貼,則您將永遠無法完善自己的編碼能力。 在完成一個項目之前,養成三遍編寫代碼的習慣是一個好主意,以完善您的工作和理解。 您也可以手動編寫代碼。 這聽起來像是違反直覺的(通過鉛筆和紙來寫計算機代碼),并且可能要花費更多的時間,手寫代碼可以在任何程度上提高您的熟練程度。

Code can almost always be improved upon. Improve your coding by rewriting it to work faster, to be more reliable, or to make it easier to document. If you really want to be a master coder, you should get into the habit of throwing code out after it’s complete and starting over. This way, you know that your final product, after the third time writing code to fulfill the spec, will be as good as possible and your grasp of it firm.

幾乎可以隨時對代碼進行改進。 通過重寫代碼來提高編碼效率 ,使其工作更快 ,更可靠或更易于記錄。 如果您真的想成為一名高級程序員,則應該養成在代碼完成并重新開始后將其扔掉的習慣。 這樣,您便知道,在第三次編寫符合規范的代碼之后,您的最終產品將盡可能地好,并且您將牢牢掌握它。

始終有一個項目在進行中,尤其是使用新代碼時 (Always have a project in the works, especially with new code)

In addition to your routine work, you should have projects and challenges in the works at all times that push your bounds and allow you to grow as a coder. Try to always be doing something you have never done before in your programming experience so you’re consistently learning.

除了日常工作外,您還應始終在工作中遇到一些項目和挑戰 ,這些挑戰和挑戰會不斷發展,并讓您成為一名編碼員。 嘗試做自己在編程經驗中從未做過的事情,以便不斷學習。

It’s easy to master a few sets of skills that allow you to fulfill your role, and then be tempted to stop there. But you should have side projects that will allow you to work on some area of coding that’s problematic for you and that you haven’t yet mastered.

掌握一些技能可以輕松地完成自己的角色,然后很容易就此止步。 但是,您應該有一些輔助項目,使您可以從事某些對您來說有問題且尚未掌握的編碼領域。

Build side projects as you learn new material. Personal goals and projects are often the best starting points for experimenting with new subjects, languages, and techniques.

在學習新材料時,請建立輔助項目。 個人目標和項目通常是嘗試新主題,語言和技術的最佳起點。

避免只學習一種語言 (Avoid only learning one language)

Each programming language has its own unique advantages and disadvantages. Don’t fall into the bad habit of thinking one language reigns supreme and all the others are more or less useless and unworthy of understanding.

每種編程語言都有其獨特的優點和缺點。 不要以為一種語言占主導地位而養成其他語言或多或少毫無用處且不值得理解的習慣。

Learning another language gives you a new perspective and could help you to handle projects down the road with greater expertise. Some of the many new languages you could start working on that you might not yet be familiar with include C/C++, Ruby, Python, Django, Pascal, and NodeJS. Learning other coding languages, with different approaches and viewpoints, offer you a chance to think about problems from multiple angles. Expand your mind and creativity.

學習另一種語言可以為您提供新的視角,并可以幫助您以更高的專業知識來處理項目。 您可能尚未熟悉的許多新語言可能包括C / C ++,Ruby,Python,Django,Pascal和NodeJS。 通過不同的方法和觀點學習其他編碼語言,可以使您有機會從多個角度思考問題。 擴展您的思維和創造力。

A helpful resource for coders with this learning process is a coding coach. This is a robust training program with detailed procedures that will help you learn languages along the way.

對于編碼人員來說,通過這種學習過程,一個有用的資源是編碼教練 。 這是一個功能強大的培訓計劃,其中包含詳細的過程,將幫助您一路學習語言。

盡可能咨詢其他更有經驗的編碼員 (Consult other more experienced coders whenever possible)

You can learn so much by taking part in projects with fellow coders — for example, among IT staffing at your organization — who are more skilled and experienced than you. This way, you can ask those with more experience for assistance and explanations when you encounter some task or issue that you’re unfamiliar with. Another useful approach is to consult online resources and solutions; simply Google questions and learn from people on Reddit, YouTube, blogs, or Codecademy, among many others.

您可以通過與其他編碼員一起參加項目來學到很多東西,例如與您的組織的IT人員相比,這些編碼員比您更熟練和經驗豐富。 這樣,當您遇到一些您不熟悉的任務或問題時,您可以向經驗豐富的人尋求幫助和解釋。 另一種有用的方法是咨詢在線資源和解決方案。 只是Google提出問題并向Reddit,YouTube,博客或Codecademy等人學習。

When you work with other skilled coders — in-person and online — make sure you read their code. Reading code produced by better coders is a great way to expand your horizons and see how others with more skill tackle tasks that you would have handled differently.

當您與其他熟練的編碼人員(面對面和在線)合作時,請確保您閱讀其編碼。 閱讀由更好的程序員編寫的代碼是擴大您的視野并了解其他人的能力如何的又好又好方法,這些人本應以不同的方式處理任務。

Network and partner with those whose skills you admire and wish to acquire. When you work on projects with better coders, you get to learn new things while being paid. And as you work to elevate your skills, explore the breadth and wealth of online resources out there, ready to be consulted.

與您欣賞并希望獲得技能的人建立聯系并與之合作。 當您使用更好的編碼器進行項目開發時,您會在獲得報酬的同時學習新知識。 在您提高技能的同時,探索其中豐富的在線資源,隨時可以進行咨詢。

翻譯自: https://www.freecodecamp.org/news/five-great-tactics-for-becoming-a-better-coder-5c6da86ab0d0/

程序員如何學習更好的知識

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392015.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392015.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392015.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Educational Codeforces Round 25 C. Multi-judge Solving

題目鏈接:http://codeforces.com/contest/825/problem/C C. Multi-judge Solving time limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputMakes solves problems on Decoforces and lots of other different onli…

Java—stream以及集合框架使用

1) 編寫Student類,主要屬性包括學號、姓名、性別、班級 2) 編寫Score類,主要屬性包括:學號、課程名、分數 3) 模擬期末考試的成績統計應用場景,要求 (1) 所有學生名單及對應科目成績已經初始化在數組中 (2) 要求輸出每門課程的所有…

山東省2021年高考成績查詢平臺6,山東2021年高考成績改為6月26日前公布

6月11日,山東省教育廳舉行2021年第一次高考新聞發布會,介紹2021年高考基本情況、評卷安排、成績公布等相關工作。山東省教育招生考試院新聞發言人、普招處處長李春光介紹,根據近期國家有關工作要求和強基計劃招生工作需要,原定于6…

如何在vuejs里禁用eslint語法檢查工具

eslint好是好,可要求很苛刻,對于我這種寫代碼很糙的媛。。。。。。 搜索的時候有的說加入 /* eslint-disabled */(有用,但只是部分代碼享受此待遇) 還有說刪除.eslintrc.js里包含eslint關鍵字的塊,a---o---…

數據結構兩個月學完_這是我作為數據科學家兩年來所學到的

數據結構兩個月學完It has been 2 years ever since I started my data science journey. Boy, that was one heck of a roller coaster ride!自從我開始數據科學之旅以來已經有兩年了 。 男孩 ,那可真是坐過山車! There were many highs and lows, and…

leetcode 888. 公平的糖果棒交換(set)

愛麗絲和鮑勃有不同大小的糖果棒:A[i] 是愛麗絲擁有的第 i 根糖果棒的大小,B[j] 是鮑勃擁有的第 j 根糖果棒的大小。 因為他們是朋友,所以他們想交換一根糖果棒,這樣交換后,他們都有相同的糖果總量。(一個…

如何使用JavaScript檢查輸入是否為空

by Zell Liew由Zell Liew 如何使用JavaScript檢查輸入是否為空 (How to check if an input is empty with JavaScript) Last week, I shared how to check if an input is empty with CSS. Today, let’s talk about the same thing, but with JavaScript.上周,我分…

數學哲學與科學哲學和計算機科學的能動作用,數學哲學與科學哲學和計算機科學的能動作用...

3 數學哲學與計算機科學的能動作用數學哲學對于計算機科學的影響主要表現于以下的事實:一些源于數學哲學(數學基礎研究)的概念和理論在計算機科學的歷史發展中發揮了十分重要的作用。例如,在此可以首先提及(一階)謂詞演算理論:這是由弗雷格(…

AngularDart4.0 指南- 表單

2019獨角獸企業重金招聘Python工程師標準>>> 表單是商業應用程序的主流。您可以使用表單登錄,提交幫助請求,下訂單,預訂航班,安排會議,并執行無數其他數據錄入任務。 在開發表單時,創建一個數據…

(轉載)分享常用的GoLang包工具

分享常用的GoLang包工具 包名 鏈接地址 備注 Machinery異步隊列 https://github.com/RichardKnop/machinery Mqtt通信 github.com/eclipse/paho.mqtt.golang go文檔http://www.eclipse.org/paho/clients/golang/ 微信開發 https://github.com/chanxuehong/wechat fasthttp包 gi…

邁向數據科學的第一步:在Python中支持向量回歸

什么是支持向量回歸? (What is Support Vector Regression?) Support vector regression is a special kind of regression that gives you some sort of buffer or flexibility with the error. How does it do that ? I’m going to explain it to you in simpl…

js 觸發LinkButton點擊事件,執行后臺方法

頁面 <asp:LinkButton ID"lbtButton" runat"server" CssClass"lbtButton" Font-Underline"false" OnClick"lbtButton_Click"> js function clickButton(filePath, fileName){ __doPostBack(lbtButton, ); } 當執行該…

vue 響應式ui_如何在Vue.js中設置響應式UI搜索

vue 響應式uiAre you thinking of building something awesome with one of the popular modern frameworks out there right now, but don’t know how to get started?您是否正在考慮使用當前流行的現代框架之一來構建出色的東西&#xff0c;但不知道如何入門&#xff1f; …

蘭州交通大學計算機科學與技術學院,蘭州交通大學

信息與計算科學專業依托數學和計算機科學與技術兩個一級學科碩士學位授予點&#xff0c;運籌學與控制論、計算機科學與技術兩個省級重點學科&#xff0c;培養理工融合、學科交叉的創新性人才。自2008年以來&#xff0c;承擔國家自然科學基金10余項&#xff0c;發表SCI收錄雜志論…

leetcode 424. 替換后的最長重復字符(滑動窗口)

給你一個僅由大寫英文字母組成的字符串&#xff0c;你可以將任意位置上的字符替換成另外的字符&#xff0c;總共可最多替換 k 次。在執行上述操作后&#xff0c;找到包含重復字母的最長子串的長度。 注意&#xff1a;字符串長度 和 k 不會超過 104。 示例 1&#xff1a; 輸入…

javascript放在head和body的區別(w3c建議放在head標簽中)

JavaScript腳本放在哪里 在HTML body部分中的JavaScripts會在頁面加載的時候被執行。 在HTML head部分中的JavaScripts會在被調用的時候才執行。—————————————————————————— JavaScript應放在哪里 頁面中的JavaScripts會在瀏覽器加載頁面的時候被立即…

jQuery事件整合

一、jQuery事件 1、focus&#xff08;&#xff09;元素獲得焦點 2、blur&#xff08;&#xff09;元素失去焦點 3、change&#xff08;&#xff09; 表單元素的值發生變化&#xff08;可用于驗證用戶名是否存在&#xff09; 4、click&#xff08;&#xff09; 鼠標單擊 5、dbc…

tableau跨庫創建并集_刮擦柏林青年旅舍,并以此建立一個Tableau全景。

tableau跨庫創建并集One of the coolest things about making our personal project is the fact that we can explore topics of our own interest. On my case, I’ve had the chance to backpack around the world for more than a year between 2016–2017, and it was one…

策略模式下表單驗證

策略模式下表單驗證 class Validator {constructor(strategies) {this.cache []}add(value, rules) {if (!rules instanceof Array) throw rules should be Arrayvar self thisfor(var i 0, rule; rule rules[i];) {(function(rule) {var strategyArr rule.strategy.split…

在五分鐘內學習使用Python進行類型轉換

by PALAKOLLU SRI MANIKANTA通過PALAKOLLU SRI MANIKANTA 在五分鐘內學習使用Python進行類型轉換 (Learn typecasting in Python in five minutes) 以非常詳盡的方式介紹了Python中的類型轉換和類型轉換的速成課程 (A crash course on Typecasting and Type conversion in Pyt…