Placeholder Image

字幕列表 影片播放

由 AI 自動生成
  • But let's get into talking about computer science terminology.

    不過,我們還是來談談計算機科學術語吧。

  • Basically, if you're entering this field, there are a few words, buzzwords or just regular knowledge words that you need to know in this industry.

    基本上,如果您要進入這一領域,您需要了解這一行業的一些詞彙、流行語或常規知識。

  • Some of them are very basic, and that's what this video is going to cover a lot.

    其中有些是非常基本的,而這正是本視頻要介紹的內容。

  • But I have a lot of terminology that I want to discuss.

    但我有很多專業術語想要討論。

  • I think it's only appropriate for the first term to be computer science.

    我認為,第一個詞應該是 "計算機科學"。

  • What is computer science?

    什麼是計算機科學?

  • Computer science is a science that deals with theories and methods in processing information on a digital computer.

    計算機科學是一門研究在數字計算機上處理資訊的理論和方法的科學。

  • It is also the design of computer hardware and software, and the applications of a computer.

    它也是計算機硬件和軟件的設計,以及計算機的應用。

  • Or in layman's terms, it's the study of the principles and use of computers.

    通俗地說,就是研究計算機的原理和使用。

  • In order to understand computer science, you kind of need to understand a computer.

    要想了解計算機科學,就得先了解計算機。

  • And I mean, don't get me wrong, everybody knows what a computer is.

    我的意思是,別誤會我的意思,每個人都知道電腦是什麼。

  • But a good way to put it into words for us who are entering in the field of computer science and software engineering is that a computer is a machine that performs computations based on instructions.

    不過,對於我們這些即將進入計算機科學和軟件工程領域的人來說,一個好的說法是,計算機是根據指令進行計算的機器。

  • Instructions, that's an important word.

    說明,這是一個很重要的詞。

  • A computer is made up of two components, hardware and software.

    計算機由硬件和軟件兩部分組成。

  • Hardware is the physical components of a computer.

    硬件是計算機的物理組件。

  • The best way that I learned every little piece of computer is building mine right there myself.

    我學習電腦每一個小部件的最好方法,就是自己在那裡製造我的電腦。

  • I think I did that about four years ago.

    我想我是四年前做的。

  • And I did all of the studying and all of the work figuring out why I should get what CPU for my usage, graphics cards, storage, memory, cooling, all of that stuff, all inside of a computer.

    我做了所有的研究和工作,弄清楚為什麼我應該根據自己的使用情況購買什麼樣的 CPU、顯卡、存儲、內存、散熱,所有這些東西都在電腦裡。

  • The best way for you to learn it is actually putting yourself in the shoes of someone who needs to build a computer because you'll take everything into consideration before dumping what $1,000, $1,500 into a computer.

    對你來說,最好的學習方法就是設身處地地為需要製作電腦的人著想,因為你會在投入 1000 美元或 1500 美元製作電腦之前考慮到所有因素。

  • At least I do.

    至少我是這樣認為的。

  • I make sure I do all of the research before I spend that much money.

    在花那麼多錢之前,我一定會做足功課。

  • So that's a good way to learn the hardware of computer.

    是以,這是學習計算機硬件的好方法。

  • Software on the other hand is not a physical component.

    而軟件則不是物理組件。

  • It's basically a set of instructions for the hardware.

    它基本上是一套硬件指令。

  • You can think of these instructions as files that are saved in your computer because every time you open something like Adobe Premiere, everything you do is sending instructions back and forth between the hardware, the software or the instructions aren't in English or any other spoken language.

    你可以把這些指令看作是保存在電腦中的文件,因為每次打開 Adobe Premiere 等軟件時,你所做的一切都會在硬件和軟件之間來回發送指令,或者這些指令不是用英語或其他口語發出的。

  • It is a programming language.

    它是一種編程語言。

  • The language that is used for different types of software varies, but that's essentially how we're able to set instructions for the software to present and to do what we need it to do.

    不同類型的軟件所使用的語言各不相同,但本質上,我們就是通過這種方式來為軟件設置指令,讓它呈現並完成我們需要它做的事情。

  • Or basically just to sum all that up, hardware is something that you can physically touch and software is the instructions for the hardware.

    或者基本上可以這樣概括:硬件是你可以實際觸摸到的東西,而軟件則是硬件的指令。

  • Since we're on the topic of software, let's talk about program with a lot of misconceptions, a lot of different words that really kind of mean the same thing.

    既然說到了軟件,我們就來談談程序吧。程序有很多誤解,有很多不同的詞,但其實意思是一樣的。

  • That is program is basically a piece of software or you can think of it as an application.

    程序基本上就是一個軟件,或者可以把它看作是一個應用程序。

  • It is a file saved on your computer, written in a programming language filled with instructions to tell your hardware what to do.

    它是一個保存在電腦中的文件,用編程語言編寫,其中充滿了指令,告訴你的硬件該做什麼。

  • In our world, we don't call instructions instructions.

    在我們的世界裡,我們不把指令稱為訓示。

  • We call instructions code.

    我們將指令稱為代碼。

  • Code is a bunch of words and well, well basically this, this is code and this is written using a programming language.

    代碼是一堆單詞,基本上,這就是代碼,是用編程語言編寫的。

  • So you can think of code as the instructions.

    是以,你可以把代碼看作是指令。

  • Programming language is what you write the instructions with and everything combined is a software application or program.

    編程語言是你編寫指令的工具,所有這些結合起來就是一個軟件應用程序或程序。

  • The first thing they'll teach you in any computer science degree is computer hardware.

    計算機科學專業首先要學的就是計算機硬件。

  • That's why I emphasize understanding all of the components within a computer because you need to learn all of that before you learn programming to be an efficient programming and actually understanding what you're doing.

    這就是為什麼我強調要了解計算機內的所有組件,因為在學習編程之前,你需要了解所有這些組件,這樣才能高效地編程,並真正瞭解自己在做什麼。

  • So let's talk about the six main components that make up a computer's hardware.

    下面我們就來談談組成電腦硬件的六個主要部件。

  • We have the central processing unit or the CPU.

    我們有中央處理器或 CPU。

  • We have the main memory.

    我們有主存儲器。

  • We have secondary storage.

    我們有二級存儲。

  • We have input output devices.

    我們有輸入輸出設備。

  • We have the network and we have the bus.

    我們有網絡,我們有巴士。

  • The CPU is the brain of the computer.

    CPU 是計算機的大腦。

  • It executes instructions such as code in a program.

    它執行程序中的代碼等指令。

  • The main memory, also known as the random access memory, or you may know it as RAM for short, that's used to store the code from your program and it stores the data that your code is operating on while the program is actively running.

    主存儲器又稱隨機存取存儲器,或簡稱 RAM,用於存儲程序代碼,並在程序運行時存儲代碼運行的數據。

  • For example, when you open an application such as Adobe Premiere, the code to run Adobe

    例如,當您打開 Adobe Premiere 等應用程序時,運行 Adobe

  • Premiere loads into the main memory.

    首映加載到主存儲器。

  • Then you have your secondary storage that stores your program and data when it's not in use.

    然後是二級存儲器,用於在不使用時存儲程序和數據。

  • And in order to do any of this, you need input output devices.

    要做到這一點,你需要輸入輸出設備。

  • A few examples for input devices would be the mouse, the keyboard, the microphone.

    輸入設備的幾個例子包括滑鼠、鍵盤和麥克風。

  • Output devices would be the monitor, the speakers, or the printer, which is right, right there.

    輸出設備包括顯示器、揚聲器或打印機,就在這裡。

  • The network essentially is what you connect your computer to, Wi-Fi, internet, in order to communicate with computers all around the world.

    網絡本質上就是將電腦連接到 Wi-Fi 或互聯網,以便與世界各地的電腦進行通信。

  • It allows you to send and receive data from a computer such as an email, a text message, what have you.

    它允許您從計算機發送和接收數據,如電子郵件、簡訊等。

  • Now the bus is a group of wires inside this computer case right here that connect all of the hardware components.

    總線是電腦機箱內連接所有硬件組件的一組電線。

  • The main reason for that, well, it needs to pass data from one piece to another.

    其主要原因是,它需要將數據從一塊傳遞到另一塊。

  • Per our previous example, when you load up Adobe Premiere, you have your secondary storage sending data to your main memory, and then once you save and shut down that application, it sends everything back to the secondary storage to then be retrieved once you open the application back up, and then back into the main memory, and then so on and so forth.

    根據我們之前的例子,當你加載 Adobe Premiere 時,你的二級存儲會向主內存發送數據,然後一旦你保存並關閉該應用程序,它就會將所有數據發回二級存儲,當你重新打開該應用程序時,又會將所有數據發回主內存,如此反覆。

  • And onto synonyms.

    再看同義詞。

  • We kind of addressed this previously when we were talking about code and instructions and whatnot, and a lot of these groupings that we're going to talk about here, the groups of synonyms, can vary slightly depending on how they're used, but for just like a basic level of knowledge, this, it's essentially synonyms.

    我們之前在討論代碼和說明之類的東西時也提到過這個問題,我們要在這裡討論的這些同義詞分組,會根據使用方式的不同而略有不同,但對於基礎知識來說,這基本上就是同義詞。

  • You have code, which are computer instructions, you have computer instructions, which is software, you have software, which is a program, also known as an app or application.

    你有代碼,這是計算機指令;你有計算機指令,這是軟件;你有軟件,這是程序,也稱為應用程序或應用軟件。

  • And now, although I consider code as what you would open in a text editor, you see the entire programming language, and that programming language is what you call the code.

    現在,雖然我認為代碼就是你在文本編輯器中打開的內容,但你看到的是整個編程語言,而編程語言就是你所說的代碼。

  • That would be the nitty gritty of an application, and the application would be essentially the packaged product, basically what the consumer would see, but you can see how they can be used synonymously.

    這就是應用的細枝末節,而應用本質上就是包裝好的產品,基本上就是消費者會看到的東西,但你可以看到它們是如何被同義使用的。

  • And then you'll hear the terms like coding, programming, software development, software engineering, or coder, programmer, software developer, web developer, software engineer.

    然後你會聽到編碼、編程、軟件開發、軟件工程等術語,或者編碼員、程序員、軟件開發人員、網絡開發人員、軟件工程師。

  • You'll hear those types of terms be interchanged a lot, and to everyone on the outside world, those mean the same exact thing.

    你會經常聽到這些術語的互換,而對外界的每個人來說,它們的意思是一模一樣的。

  • On the inside world, depending on what your company does and what you're called, can mean different things.

    在內部世界,根據公司的業務和名稱,可以有不同的含義。

  • For example, when you're called a software engineer, generally you work with Java, C++, enterprise level software, that type of stuff, but then when you move over to the people building websites, building web applications, building mobile applications, and not working with those particular languages, people like to call them software developers, but you can see how these would be synonymous.

    例如,當你被稱作軟件工程師時,通常你的工作涉及 Java、C++、企業級軟件等類型的東西,但當你轉向建設網站、建設網絡應用程序、建設移動應用程序的人,而不是使用這些特定語言的人時,人們喜歡稱他們為軟件開發人員,但你可以看到這些人是如何成為同義詞的。

  • Just know that when someone talks about programming, coding, software development, that's essentially all the same thing.

    要知道,當有人談論編程、編碼、軟件開發時,本質上都是一回事。

  • Now we're getting a little bit more complex, starting off with machine language versus programming language.

    現在,我們要從機器語言與編程語言的比較入手,來探討更復雜的問題。

  • In order to differentiate the two, you have to understand that computers and humans understand information in different formats.

    要區分這兩者,你必須明白,計算機和人類理解資訊的格式是不同的。

  • Whenever you save data, such as a Word document or a Premier project, the computer stores that in a format they don't understand called binary, or otherwise known as machine language.

    無論何時保存數據,如 Word 文檔或 Premier 項目,計算機都會將其存儲為一種它們無法理解的格式,即二進制,也就是所謂的機器語言。

  • Binary is a language made up of combinations of zeros and ones.

    二進制是一種由 0 和 1 組合而成的語言。

  • Each character that you'll see on your keyboard, numbers, special characters, punctuation, letters, spaces, tabs, and everything in between, has their own binary representation.

    您在鍵盤上看到的每個字元,包括數字、特殊字符、標點符號、字母、空格、製表符以及介於兩者之間的所有字元,都有自己的二進制表示法。

  • That means a combination of zeros and ones are different for each and every character.

    這意味著每個字元的 0 和 1 組合都不同。

  • And then there's something that I like to describe in a way that is between binary and our human language, and that is ASCII code.

    還有一種我喜歡描述的介於二進制和人類語言之間的東西,那就是 ASCII 碼。

  • ASCII code is a numerical code, but instead of having zeros and ones like binary, or having the actual number of the actual letter like English, it picks two numbers, zero through nine, for a particular letter.

    ASCII 碼是一種數字編碼,但它不像二進制那樣有 0 和 1,也不像英語那樣有實際字母的實際數字,而是為特定字母選擇兩個數字,即 0 到 9。

  • Doesn't matter if it's an A or B or C, they're all going to be different, and they'll even be different from uppercase to lowercase letters.

    不管是 A、B 還是 C,它們都會有所不同,甚至從大寫字母到小寫字母都會有所不同。

  • But that format is also known to us as decimal format.

    但這種格式也被我們稱為十進制格式。

  • And since that is base 10, as you can see, because the two numbers are chosen between zero and nine, those are 10 numbers, and I'm sure you can guess, binary is base two.

    正如你所看到的,因為這兩個數字是在 0 到 9 之間選擇的,所以是 10 個數字,我相信你也能猜到,二進制的基數是二。

  • That's because they choose only zero or one.

    這是因為他們只能選擇 0 或 1。

  • In all honesty, I'm not too sure how well that came across to you, so let's try to consolidate our thoughts and really drive this point home.

    老實說,我不太確定你能不能理解我的意思,所以讓我們試著整合一下我們的想法,把這一點真正講清楚。

  • And I think a real world example will do best.

    我認為一個真實世界的例子最能說明問題。

  • So let's say we're typing something in Microsoft Word.

    比方說,我們正在用 Microsoft Word 輸入一些內容。

  • We type the letter A. We're going to keep it real simple.

    我們輸入字母 A。

  • We type the letter capital A. The numerical value, ASCII code, of that is 65, I think.

    我們輸入字母大寫 A,它的數值(ASCII 碼)應該是 65。

  • Let me check.

    讓我檢查一下。

  • Yeah, for capital A, the numerical code is 65.

    是的,大寫 A 的數字代碼是 65。

  • When you save that data from your Word document into your computer, it saves the equivalent of 65 in binary for your computer.

    當您將 Word 文檔中的數據保存到電腦中時,電腦會保存相當於 65 的二進制數據。

  • So basically you type in A, capital A, the numerical code for that is 65, and then there's a unique binary code that is the equivalent of ASCII code, the numerical code 65, and the binary code, the zeros and ones, is what is saved into your computer and what your computer can read.

    是以,基本上你輸入 A,大寫 A,數字代碼就是 65,然後有一個唯一的二進制代碼,相當於 ASCII 碼,數字代碼就是 65,二進制代碼,0 和 1,就是保存到電腦中的內容,也是電腦可以讀取的內容。

  • That's machine language.

    這是機器語言。

  • It's also referred to as low-level language.

    它也被稱為低級語言。

  • It's considered to be low-level because that's the language that machines can understand.

    它被認為是低級語言,因為這是機器能夠理解的語言。

  • And programmers, well, programmers understand programming languages, also known as high-level languages.

    而程序員,嗯,程序員瞭解編程語言,也被稱為高級語言。

  • And just like in English we have a set of rules to follow, and that is grammar, everything that that entails, a programming language has its own set of rules called syntax.

    就像在英語中,我們有一套規則要遵守,這就是文法,以及文法所包含的一切,編程語言也有自己的一套規則,稱為文法。

  • It also has a set of defined words or keywords, and these have a specific meaning within that programming language.

    編程語言也有一組定義的單詞或關鍵字,這些單詞或關鍵字在編程語言中具有特定的含義。

  • And unfortunately, humans have no idea how to choose one language or another, so just like we have so many different spoken languages, we have also so many different programming languages.

    不幸的是,人類不知道如何選擇一種語言或另一種語言,所以就像我們有這麼多不同的口語一樣,我們也有這麼多不同的編程語言。

  • Some are better suited for web development, and even within web development there are different languages to do exactly what you need.

    有些語言更適合網絡開發,即使在網絡開發中,也有不同的語言可以滿足您的需求。

  • Then there are different that build mobile applications, and then there are different that build enterprise applications, and there are different that build a hacking software, machine learning, or what have you.

    有不同的公司負責開發移動應用程序,有不同的公司負責開發企業應用程序,還有不同的公司負責開發黑客軟件、機器學習或其他軟件。

  • You get the gist.

    你就明白了。

  • In addition to those differences, we also split our programming languages into classifications called programming paradigms.

    除了這些差異之外,我們還將編程語言分為不同的類別,稱為編程範式。

  • So if we look at the actual word paradigm, we see that that's a way of thinking or a way of doing something.

    是以,如果我們看一下 "範式 "這個詞,就會發現它是一種思維方式或做事方式。

  • Essentially, it's just a mindset.

    從本質上講,這只是一種心態。

  • A programming paradigm is a way of classifying something based on the methodology of that programming language.

    編程範式是根據編程語言的方法對某一事物進行分類的一種方式。

  • A few of the common types of programming paradigms are functional, procedural, imperative, and object-oriented.

    常見的編程範式包括函數式、過程式、命令式和麵向對象式。

  • So as an example, we have two programming languages, Java and C. However, Java is an object-oriented programming language, while C is a procedural programming language.

    然而,Java 是面向對象的編程語言,而 C 是程序化編程語言。

  • And for now, we don't need to know what it means to classify a programming language as object-oriented or procedural, but it does help understanding that there are different classifications for different programming languages.

    現在,我們不需要知道將編程語言劃分為面向對象或過程式編程語言意味著什麼,但瞭解不同的編程語言有不同的分類確實有幫助。

  • Now on to understanding writing and saving code.

    現在開始瞭解代碼的編寫和保存。

  • So basically, we've discussed this in part one of computer science terminology, which is that programming essentially means to write code.

    基本上,我們已經在計算機科學術語的第一部分討論過這個問題,即編程的本質就是寫代碼。

  • That code is written to create a program.

    編寫這些代碼是為了創建一個程序。

  • A program is essentially an application, and an application does something.

    程序本質上是一個應用程序,而應用程序則做一些事情。

  • Let's compare this to something a little bit more simple, like an essay.

    讓我們把它與更簡單一點的東西(比如作文)進行比較。

  • So when you write an essay, you open a piece of software, an application like Microsoft

    是以,當你寫作文時,你會打開一個軟件,一個應用程序,比如微軟的

  • Word.

    字。

  • You create a file in Microsoft Word.

    您在 Microsoft Word 中創建了一個文件。

  • You type some stuff, and then you save it as a document or a PDF.

    你輸入一些內容,然後將其保存為文檔或 PDF。

  • Writing code is essentially the same thing.

    編寫代碼本質上是一回事。

  • Instead of using Microsoft Word, you'll use any type of text editor, whether that be Notepad,

    與其使用 Microsoft Word,不如使用任何類型的文本編輯器,無論是記事本還是記事本、

  • Notepad++, Atom, I can go on and on about this, or some type of IDE.

    Notepad++、Atom,我可以一直說下去,或者某種集成開發環境。

  • And that is Integrated Development Environment, IDE.

    這就是集成開發環境(IDE)。

  • While a text editor is a hammer in your tool belt, an IDE is essentially the tool belt that has all of the tools within that tool belt.

    文本編輯器是工具腰帶上的一把錘子,而集成開發環境本質上就是工具腰帶,它擁有工具腰帶上的所有工具。

  • So an IDE will have your text editor, a compiler, a runtime environment, and a debugger.

    是以,集成開發環境包含文本編輯器、編譯器、運行環境和調試器。

  • So it has all of the tools you need to create a proper program.

    是以,它擁有創建適當程序所需的所有工具。

  • And a debugger, very helpful, it's a tool that programmers use to find mistakes in their code.

    調試器非常有用,是程序員用來查找代碼錯誤的工具。

  • And mistakes in their code are called bugs, hence debugger.

    代碼中的錯誤被稱為 bug,是以也叫調試器。

  • Bugs can appear at different times within the development process, whether that be preventing your code from compiling, or preventing your program, your application from executing, or maybe your application is just doing something incorrectly.

    在開發過程中,錯誤可能會在不同的時間出現,無論是代碼無法編譯,還是程序、應用程序無法執行,又或者是應用程序的某些操作不正確。

  • There are plenty of jokes that hop around the software development industry, one of which being something along the lines of, you know, I spend 10% of my time writing code and 90% of my time debugging.

    軟件開發行業流傳著很多笑話,其中之一就是 "我花了 10% 的時間寫代碼,90% 的時間調試"。

  • Debugging is a skill that you will develop your whole entire life.

    調試是你一生都要掌握的技能。

  • After you create your program, you save your code within a file.

    創建程序後,將代碼保存在文件中。

  • This is also known as a source file.

    這也被稱為源文件。

  • So instead of saving it as a document or a PDF, you save it as a source file.

    是以,與其將其保存為文檔或 PDF,不如將其保存為源文件。

  • This basically shows you that your source code is within this source file.

    這基本上說明你的源代碼就在這個源文件中。

  • And just as you would save a PDF as name.extension, which is PDF, you would also save your source file as name.extension, which your extension is whatever your code is.

    正如你會將 PDF 文件保存為 name.extension,也就是 PDF,你也會將源文件保存為 name.extension,你的擴展名就是你的代碼。

  • So .java is Java.

    是以,.java 就是 Java。

  • Cpp is C++, so on and so forth.

    Cpp 就是 C++,如此等等。

  • Now after you save everything in the appropriate source files, you want to run your code to make sure that it works.

    將所有內容保存到相應的源文件後,運行代碼以確保其正常運行。

  • But before you can run your code, or otherwise known as executing your code, you need to make sure that it compiles.

    但是,在運行代碼(也就是執行代碼)之前,您需要確保代碼經過編譯。

  • You essentially translate your source file from high level language to low level language in the form of an executable, so your computer knows what you wrote.

    從本質上講,你將源文件從高級語言翻譯成低級語言,形成可執行文件,這樣你的電腦就知道你寫了什麼。

  • Because as we said before, computers don't understand high level language, they only understand low level language.

    因為正如我們之前所說,計算機不懂高級語言,它們只懂低級語言。

  • So within that IDE environment, you will use the compiler to compile your code.

    是以,在集成開發環境中,您將使用編譯器來編譯代碼。

  • And that is a process of translating from high level language to low level language.

    這就是從高級語言翻譯成低級語言的過程。

  • Let me say that one more time.

    讓我再說一遍。

  • Compiling is a process of translating your high level language, Java, C++, Swift, to low level language, binary, machine language.

    編譯是將高級語言(Java、C++、Swift)轉換為低級語言(二進制、機器語言)的過程。

  • And in that compilation process, it creates and saves that translated code as an executable file.

    在編譯過程中,它會將翻譯好的代碼創建並保存為可執行文件。

  • However, if you have bugs in your code that prevent you from compiling, that's when you need to activate the debugger, figure out how to fix your code, fix it until it is able to compile, otherwise it won't be able to create that executable file, and if it's not able to create the executable file, then you're not able to run your application.

    但是,如果你的代碼中存在無法編譯的錯誤,這時你就需要激活調試器,想辦法修復你的代碼,直到它能夠編譯為止,否則它就無法創建可執行文件,而如果它無法創建可執行文件,你就無法運行你的應用程序。

  • And that is it.

    就是這樣。

  • Hope you guys enjoyed it.

    希望你們喜歡。

  • If there's anything else that you want me to discuss, I'd be happy to just leave them down in the comments below.

    如果你們還想和我討論什麼,我很樂意在下面的評論中留言。

  • If you liked the video, be sure to like it, and if you dislike it, feel free to dislike the video twice, and make sure you subscribe, especially if you did like the video.

    如果您喜歡這段視頻,請務必點贊;如果您不喜歡這段視頻,請隨意點贊兩次,並請務必訂閱,尤其是如果您確實喜歡這段視頻的話。

  • Until next time, guys.

    下次再見,夥計們。

  • Have a good one.

    祝你愉快

But let's get into talking about computer science terminology.

不過,我們還是來談談計算機科學術語吧。

字幕與單字
由 AI 自動生成

單字即點即查 點擊單字可以查詢單字解釋