📝 Thai: translated glossary.md

This commit is contained in:
ThePooE 2017-01-20 02:35:50 +07:00 committed by Kevin Sawicki
parent d3bf36e12a
commit 43b09b7360

View file

@ -1,143 +1,140 @@
# Glossary # อภิธานศัพท์ (Glossary)
This page defines some terminology that is commonly used in Electron development. เพจนี้จะบ่งบอกคำศัพท์ที่ถูกใช่บ่อยๆในการพัฒนา Electron
### ASAR ### ASAR
ASAR stands for Atom Shell Archive Format. An [asar][asar] archive is a simple [ASAR (Atom Shell Archive Format)][asar] เป็น extension ของไฟล์ที่มีลักษณะความคล้ายครีง `tar` ที่รวมหลายไฟล์ลงไปในไฟล์เดียว Electron สามารถอ่านไฟล์ได้เลยโดยที่ไม่ต้อง unpack ไฟล์
`tar`-like format that concatenates files into a single file. Electron can read
arbitrary files from it without unpacking the whole file.
The ASAR format was created primarily to improve performance on Windows... TODO กำลังทำ: ไฟล์ประเภท ASAR นั้น สร้างมาเพื่อเพิ่มประสิทธิถาพบนระบบปฎิบัติการ Windows
### Brightray ### Brightray
[Brightray][brightray] is a static library that makes [libchromiumcontent] [Brightray][brightray] เป็น static library ที่ทำให้ [libchromiumcontent] ใช้ได้ง่ายขึ้นในแอพพิเคชั่น
easier to use in applications. It was created specifically for Electron, but can มันถูกสร้างขึ้นมาเพื่อ Electron โดยเฉพาะ แต่ว่ามันสามารถเปิดใช้ในแอพที่ใช้ Chromium's render ซึ่งไม่ถูกสร้างจาก Electron ได้
be used to enable Chromium's renderer in native apps that are not based on
Electron.
Brightray is a low-level dependency of Electron that does not concern the Brightray เป็น dependency ของ Electron ที่ไม่ค่อยได้ใช้งานสำหรับผู้ใช้ Electron ทั่วไป
majority of Electron users.
### DMG ### DMG
An Apple Disk Image is a packaging format used by macOS. DMG files are DMG เป็นรูปแบบไฟล์ที่ใช้กับ Apple Disk Image
commonly used for distributing application "installers". [electron-builder]
supports `dmg` as a build target. โดยส่วนมากไฟล์ DMG จะถูกใช้ในการแจกแจงตัวติดตั้งของแอพพิเคชั่น
คุณสามารถใช้ [electron-builder] ในการสร้างไฟล์ขึ้นมาได้
### IPC ### IPC
IPC stands for Inter-Process Communication. Electron uses IPC to send IPC ย่อมาจาก Inter-Process Communication ซึ่ง Electron ใช้ IPC
serialized JSON messages between the [main] and [renderer] processes. ในการที่จะส่งข้อความ JSON ระหว่าง [โปรเซสหลัก][main] และ [ตัวเรนเดอร์][renderer]
### libchromiumcontent ### libchromiumcontent
A single, shared library that includes the Chromium Content module and all its เป็น library รวมที่มี Chromium Content โมดูลและ dependencies ต่างๆเข้าไปด้วย
dependencies (e.g., Blink, [V8], etc.). (อาทิเช่น Blink, [V8], ฯลฯ)
### main process ### โปรเซสหลัก
The main process, commonly a file named `main.js`, is the entry point to every โปรเซสหลักในส่วนมากจะเป็นไฟล์ `main.js` ซึ่งเป็นจุดเริ่มต้นของทุกๆแอพของ Electron
Electron app. It controls the life of the app, from open to close. It also โปรเซสหลักเป็นตัวที่กำหนดการทำงานของแอพตั้งแต่ต้นจนจบ มันจะควบคุมองค์ประกอบของแอพเช่น
manages native elements such as the Menu, Menu Bar, Dock, Tray, etc. The Menu, Menu Bar, Dock, Tray, ฯลฯ โปรเซสหลักนั้นจะรับผิดชอบการสร้างตัวเรนเดอร์ใหม่ในแอพ
main process is responsible for creating each new renderer process in the app.
The full Node API is built in.
Every app's main process file is specified in the `main` property in Node API นั้นมาพร้อมกับ Electron
`package.json`. This is how `electron .` knows what file to execute at startup.
See also: [process](#process), [renderer process](#renderer-process) `package.json` จะสามารถใช้ระบุโปรเซสหลักของทุกๆแอพบน Electron ได้ นี้คือเหตุผลที่ `electron .` รู้ว่าไฟล์ไหนควรจะรันตอนเริ่มต้น
เพิ่มเติม: [process](#process), [renderer process](#renderer-process)
### MAS ### MAS
Acronym for Apple's Mac App Store. For details on submitting your app to the MAS เป็นตัวย่อของ Mac App Store ในการที่จะส่งไฟล์ลง MAS นั้นโปรดดู [การแนะนำการส่ง Mac App Store](Mac App Store Submission Guide)
MAS, see the [Mac App Store Submission Guide].
### native modules ### native modules
Native modules (also called [addons] in Native โมดูล (อีกชื่อคือ [addons]) คือโมดูลที่เขียนด้วย C หรือ C++
Node.js) are modules written in C or C++ that can be loaded into Node.js or ที่สามารถจะโหลดอยู่ใน Node.js หรือ Electron โดยการใช้ฟังค์ชั่น require()
Electron using the require() function, and used just as if they were an และใช้แบบเดียวกับโมดูล Node.js ธรรมดา
ordinary Node.js module. They are used primarily to provide an interface
between JavaScript running in Node.js and C/C++ libraries.
Native Node modules are supported by Electron, but since Electron is very โดยส่วนมากมันถูกใช้เป็นอินเตอร์เฟสระหว่าง JavaScript และ Node.js ผ่านทาง C/C++
likely to use a different V8 version from the Node binary installed in your
system, you have to manually specify the location of Electrons headers when
building native modules.
See also [Using Native Node Modules]. Native Node โมดูลจะได้รับการสนับสนุนจาก Electron
แต่ว่ามีความเป็นไปได้ว่า Electron นั้นจะใช้ V8 คนละเวอร์ชั่นกับ Node ที่มีอยู่ในระบบ
คุณจะต้องเป็นคนเลือก Electron's header ด้วยตนเอง
เพิ่มเติม: [วิธีการใช้ Native Node โมดูล][Using Native Node Modules]
## NSIS ## NSIS
Nullsoft Scriptable Install System is a script-driven Installer NSIS ย่อมาจาก Nullsoft Scriptable Install System คือตัวติดตั้งที่ขับเคลื่อนด้วยสคริปท์
authoring tool for Microsoft Windows. It is released under a combination of สำหรับระบบปฎิบัติการ Windows มันได้รับการจดลิขสิทธ์สำหรับใช้ทุกๆคน
free software licenses, and is a widely-used alternative to commercial มันถูกใช้แทนสินค้าเชิงพาณิชย์เช่น InstallShield
proprietary products like InstallShield. [electron-builder] supports NSIS [electron-builder] นั้นรองรับการสร้าง NSIS
as a build target.
### process ### process
A process is an instance of a computer program that is being executed. Electron โปรเซสคือ instance ของโปรแกรมที่กำลังทำงานอยู่
apps that make use of the [main] and one or many [renderer] process are Electron แอพนั้นใช้ [โปรเซสหลัก][main] และ [ตัวเรนเดอร์][renderer] หนึ่งตัวขึ้นไปที่รัน
actually running several programs simultaneously. หลายๆโปรเกรมพร้อมๆกัน
In Node.js and Electron, each running process has a `process` object. This ใน Node.js และ Electron นั้น แต่ละโปรเซสที่กำลังรันอยู่จะมี `process` object
object is a global that provides information about, and control over, the Object ตัวนี้เป็น global ที่ให้ข้อมูลและการควบคุมของตัวโปรเซสนั้นๆ
current process. As a global, it is always available to applications without
using require().
See also: [main process](#main-process), [renderer process](#renderer-process) เพราะว่ามันเป็น global ดังนั้นจึงไม่จำเป็นที่จะเรียก `require()` เพื่อใช้งาน
เพิ่มเติม: [โปรเซสหลัก](#main-process), [ตัวเรนเดอร์](#renderer-process)
### renderer process ### renderer process
The renderer process is a browser window in your app. Unlike the main process, ตัวเรนเดอร์ คือ หน้าต่างบราวเซอร์ของแอพพิเคชั่นของคุณ
there can be multiple of these and each is run in a separate process. มันแตกต่างจากโปรเซสหลักโดยที่มันจะสามารถมีอยู่พร้อมกันหลายตัวได้
They can also be hidden. และแต่ละตัวนั้นใช้ โปรเซส ที่ต่างกันออกไป
นอกจากนั้นมันยังสามารถซ่อนได้อีกด้วย
In normal browsers, web pages usually run in a sandboxed environment and are not ใน บราวเซอร์ ทั่วๆไป เว็ปเพจจะได้รับการรันด้วยสภาพแวดล้อมจำกัดและจะไม่สามารถใช้ทรัพยากร native ได้
allowed access to native resources. Electron users, however, have the power to
use Node.js APIs in web pages allowing lower level operating system
interactions.
See also: [process](#process), [main process](#main-process) แต่ว่าสำหับผู้ใช้ Electron นั้นเราสามารถให้
เว็ปเพจมีการปฏิสัมพันธ์กับระบบปฎิบัติการได้โดยผ่านทาง API ของ Node.js
เพิ่มเติม: [โปรเซสหลัก](#main-process), [ตัวเรนเดอร์](#renderer-process)
### Squirrel ### Squirrel
Squirrel is an open-source framework that enables Electron apps to update Squirrel เป็น open-source framework ที่ทำให้แอพ Electron นั้น
automatically as new versions are released. See the [autoUpdater] API for อัพเดทได้อย่างอัตโนมัดเมื่อมีเวอร์ชั่นใหม่เข้ามา
info about getting started with Squirrel.
เพิ่มเติม: [autoUpdater] API เพื่อการใช้งาน Squirrel เบื้องต้น
### userland ### userland
This term originated in the Unix community, where "userland" or "userspace" userland แต่แรกทีมาจากสังคม unix ซึ่งหมายถึงโปรแกรมที่รันข้างนอก kernel ของระบบปฎิบัติการ
referred to programs that run outside of the operating system kernel. More ภายหลังนี้ "userland" ได้รับความสนใจจากสังคม Node และ npm เพื่อใช้ในการอธิบายความแตกต่าง
recently, the term has been popularized in the Node and npm community to ของ feature ที่พร้อมไช้งานใน "node core" กับ แพ็คเกจที่ได้รับการแจกจ่ายถายใน npm registry
distinguish between the features available in "Node core" versus packages ซึ่งมาจากเหล่าคนใช้ที่กว้างขวาง
published to the npm registry by the much larger "user" community.
Like Node, Electron is focused on having a small set of APIs that provide Electron นั้นมีความคล้ายคลึงกับ Node ตรงที่มี API ที่ไม่เยอะแต่ว่ามีความสามารถเพียงพอ
all the necessary primitives for developing multi-platform desktop applications. ในการพัฒนา multi-platform แอพพิเคชั่น
This design philosophy allows Electron to remain a flexible tool without being
overly prescriptive about how it should be used. Userland enables users to ด้วยปรัชญาการออกแบบนี้เองที่ทำให้ Electron นั้นเป็นเครื่องมือที่มีความยืดหยุ่นโดยที่ไม่กำหนดให้ผู้ใช้
create and share tools that provide additional functionality on top of what is ใช้งานได้เพียงตามที่ออกแบบไว้
available in "core".
Userland ได้เปิดโอกาสให้ผู้ใช้สามารถสร้างและแบ่งปันเครื่องมือนอกเหนือจากอะไรก็ตามที่มีอยู่ใน "core"
### V8 ### V8
V8 is Google's open source JavaScript engine. It is written in C++ and is V8 เป็น JavaScripe engine ของ Google ที่เป็น open source
used in Google Chrome, the open source browser from Google. V8 can run มันถูกเขียนขึ้นด้วย C++ และถูกใช้ใน Google Chrome
standalone, or can be embedded into any C++ application.
Google Chrome เป็น open source บราวส์เซอร์ของ Google
V8 สามารถรันแยกเองต่างหากได้ หรือจะสามารถนำไปใช้กับแอพพิเคชั่น C++ อะไรก็ได้
### webview ### webview
`webview` tags are used to embed 'guest' content (such as external web pages) in `webview` เป็นแท็กที่ใช้ในการใส่ข้อมูลสำหรับคนใช้ทั่วไป (เช่นเว็ปภายนอก) ใน Electron แอพของคุณ
your Electron app. They are similar to `iframe`s, but differ in that each มันมีความคล้ายครึงกับ `iframe` แต่ว่าต่างกันโดยที่ webview รันโดยโปรเซสคนละตัว
webview runs in a separate process. It doesn't have the same มันไม่มี permission เหมือนกับเว็ปเพจของคุณและการมีปฏิสัมพันธ์ระกว่าง แอพของคุณ กับ สิ่งที่ฝังอยู่จะเป็นไปโดยราบลื่นโดยที่ไม่ต้องซิ้งค์ (asynchronous)
permissions as your web page and all interactions between your app and
embedded content will be asynchronous. This keeps your app safe from the ด้วยเหตุนี้เองทำให้ แอพของคุณปลอกภัยจากสิ่งที่ถูกฝัง
embedded content.
[addons]: https://nodejs.org/api/addons.html [addons]: https://nodejs.org/api/addons.html
[asar]: https://github.com/electron/asar [asar]: https://github.com/electron/asar