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