編程需要數學知識嗎
Does programming require knowing math? Not necessarily.
編程需要了解數學嗎? 不必要。
When I say that, I'm mostly talking about Web Development, not working with graphics or specific applications that require advanced math.
當我這么說時,我主要是在談論Web開發,而不是在需要高級數學的圖形或特定應用程序上工作。
You can be a great programmer even if you were bad at math in school.
即使您在學校數學不好,您也可以成為一名出色的程序員。
I mean, I've been programming for the last 20 years and I never had to open a math book to remind myself of something I had to know but forgot. I did quite a lot of math both in High School and at the University. Things so advanced and abstract that I don't even remember what was the goal of learning those (if there was even a goal, except passing the exam).
我的意思是,過去20年來我一直在編程,而且我從來不需要打開一本數學書來提醒自己一些我必須知道但忘記的事情。 在高中和大學期間,我都做了很多數學運算。 事物如此先進和抽象,以至于我什至都不記得學習那些東西的目的是什么(如果還有目標,除了通過考試)。
It's some sort of conventional wisdom that you absolutely need to be great at math to be a great programmer. Maybe because the first people programming computers were mathematicians, mostly because there was no "computer programmer" school around. Also, studying Computer Science or Computer Engineering involves a lot of math, but this is not really necessary on the field. 90% of a CS degree involves studying things that are really interesting, sure, but hardly practical. You need math to understand the underlying theory. But in day to day programming? Hardly so.
成為一名優秀的程序員,您絕對需要精通數學,這是一種傳統的見識 。 也許是因為第一個人對計算機進行編程是數學家,主要是因為周圍沒有“計算機程序員”流派。 同樣,學習計算機科學或計算機工程涉及很多數學,但這在現場并不是必須的。 90%的CS學位涉及研究真正有趣,確定但不切實際的事物。 您需要數學才能理解基礎理論。 但是在日常編程中呢? 并非如此。
Oh, when I say programming, I mostly mean Web Development since this is my field.
哦,當我說編程時,我主要指的是Web開發,因為這是我的專業領域。
There's certainly a good amount of programming jobs that require math. For example if you are working on a 3D rendering engine, a GIS application or Cryptography / Blockchain / Artificial Intelligence / Machine Learning, that surely requires a lot of math, but that's not even math that is taught in schools, it's very specific math. Any kind of low level graphics or game programming will also require math, and you'll need to study it before you attempt to do any of that. Math is also necessary to understand algorithms complexity, but you are not going to invent new algorithms, at least in the first few years of programming.
當然,有很多需要數學的編程工作。 例如,如果您正在使用3D渲染引擎,GIS應用程序或密碼學/區塊鏈/人工智能/機器學習,那么這肯定需要很多數學運算,但即使在學校教授的也不是數學,它是非常具體的數學運算。 任何種類的低級圖形或游戲編程也將需要數學,并且您需要先學習數學,然后再嘗試進行任何數學運算。 數學也是理解算法復雜性所必需的,但是至少在編程的前幾年,您不會發明新的算法。
What you need to be good at, however, is problem solving. I think that math in school teaches you a good degree of how to solve problems, but so does Sudoku or other hobbies.
但是,您需要擅長的是解決問題 。 我認為學校的數學教給您很好的解決問題的能力,而數獨或其他愛好也是如此。
Of course you need some basic math concepts, like calculus or algebra, or logic, but the very basics if it. You don't need to know any of complex numbers, probability, equations, graphs, exponential and logarithm, limits, derivatives, integration, differential equations and so on. Not a single thing.
當然,您需要一些基本的數學概念,例如微積分,代數或邏輯,但如果需要,則需要一些基礎知識。 您不需要知道任何復數,概率,方程,圖形,指數和對數,極限,導數,積分,微分方程等。 沒有一件事情。
Don't listen to gatekeepers: if they tell you won't be a programmer because you are not good at math, don't listen to them. You can always learn everything you need along the way. Being open to learning is much more important than already knowing things.
不要聽看門人 :如果他們告訴你因為不擅長數學而不會成為程序員,請不要聽他們的話。 您始終可以一路學習所需的一切。 開放學習比已經了解事物重要得多。
Originally published on flaviocopes.com
最初發布在flaviocopes.com
翻譯自: https://www.freecodecamp.org/news/programming-requires-math/
編程需要數學知識嗎