diff --git a/translated_images/1.b6da8c1394b07491.da.png b/translated_images/1.b6da8c1394b07491.da.png new file mode 100644 index 000000000..b4c2b4a08 Binary files /dev/null and b/translated_images/1.b6da8c1394b07491.da.png differ diff --git a/translated_images/1.b6da8c1394b07491.fi.png b/translated_images/1.b6da8c1394b07491.fi.png new file mode 100644 index 000000000..dd884658a Binary files /dev/null and b/translated_images/1.b6da8c1394b07491.fi.png differ diff --git a/translated_images/1.b6da8c1394b07491.nl.png b/translated_images/1.b6da8c1394b07491.nl.png new file mode 100644 index 000000000..70b426b68 Binary files /dev/null and b/translated_images/1.b6da8c1394b07491.nl.png differ diff --git a/translated_images/1.b6da8c1394b07491.no.png b/translated_images/1.b6da8c1394b07491.no.png new file mode 100644 index 000000000..e6c2236be Binary files /dev/null and b/translated_images/1.b6da8c1394b07491.no.png differ diff --git a/translated_images/1.b6da8c1394b07491.sv.png b/translated_images/1.b6da8c1394b07491.sv.png new file mode 100644 index 000000000..16cef2845 Binary files /dev/null and b/translated_images/1.b6da8c1394b07491.sv.png differ diff --git a/translated_images/1.b6da8c1394b07491.th.png b/translated_images/1.b6da8c1394b07491.th.png new file mode 100644 index 000000000..1d9d311d2 Binary files /dev/null and b/translated_images/1.b6da8c1394b07491.th.png differ diff --git a/translated_images/1.cc07a5cbe114ad1d.da.png b/translated_images/1.cc07a5cbe114ad1d.da.png new file mode 100644 index 000000000..93abc6fdd Binary files /dev/null and b/translated_images/1.cc07a5cbe114ad1d.da.png differ diff --git a/translated_images/1.cc07a5cbe114ad1d.fi.png b/translated_images/1.cc07a5cbe114ad1d.fi.png new file mode 100644 index 000000000..8229af935 Binary files /dev/null and b/translated_images/1.cc07a5cbe114ad1d.fi.png differ diff --git a/translated_images/1.cc07a5cbe114ad1d.nl.png b/translated_images/1.cc07a5cbe114ad1d.nl.png new file mode 100644 index 000000000..347212b56 Binary files /dev/null and b/translated_images/1.cc07a5cbe114ad1d.nl.png differ diff --git a/translated_images/1.cc07a5cbe114ad1d.no.png b/translated_images/1.cc07a5cbe114ad1d.no.png new file mode 100644 index 000000000..f24c1e178 Binary files /dev/null and b/translated_images/1.cc07a5cbe114ad1d.no.png differ diff --git a/translated_images/1.cc07a5cbe114ad1d.sv.png b/translated_images/1.cc07a5cbe114ad1d.sv.png new file mode 100644 index 000000000..be9a6cd26 Binary files /dev/null and b/translated_images/1.cc07a5cbe114ad1d.sv.png differ diff --git a/translated_images/1.cc07a5cbe114ad1d.th.png b/translated_images/1.cc07a5cbe114ad1d.th.png new file mode 100644 index 000000000..516e0bcd4 Binary files /dev/null and b/translated_images/1.cc07a5cbe114ad1d.th.png differ diff --git a/translated_images/2.1dae52ff08042246.da.png b/translated_images/2.1dae52ff08042246.da.png new file mode 100644 index 000000000..8ab6f0ed9 Binary files /dev/null and b/translated_images/2.1dae52ff08042246.da.png differ diff --git a/translated_images/2.1dae52ff08042246.fi.png b/translated_images/2.1dae52ff08042246.fi.png new file mode 100644 index 000000000..df50cf4e5 Binary files /dev/null and b/translated_images/2.1dae52ff08042246.fi.png differ diff --git a/translated_images/2.1dae52ff08042246.nl.png b/translated_images/2.1dae52ff08042246.nl.png new file mode 100644 index 000000000..452d57894 Binary files /dev/null and b/translated_images/2.1dae52ff08042246.nl.png differ diff --git a/translated_images/2.1dae52ff08042246.no.png b/translated_images/2.1dae52ff08042246.no.png new file mode 100644 index 000000000..ddf23acf2 Binary files /dev/null and b/translated_images/2.1dae52ff08042246.no.png differ diff --git a/translated_images/2.1dae52ff08042246.sv.png b/translated_images/2.1dae52ff08042246.sv.png new file mode 100644 index 000000000..3ea18d191 Binary files /dev/null and b/translated_images/2.1dae52ff08042246.sv.png differ diff --git a/translated_images/2.1dae52ff08042246.th.png b/translated_images/2.1dae52ff08042246.th.png new file mode 100644 index 000000000..9343ff8aa Binary files /dev/null and b/translated_images/2.1dae52ff08042246.th.png differ diff --git a/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.da.png b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.da.png new file mode 100644 index 000000000..c5a79e595 Binary files /dev/null and b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.da.png differ diff --git a/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.fi.png b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.fi.png new file mode 100644 index 000000000..391fbbb8b Binary files /dev/null and b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.fi.png differ diff --git a/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.nl.png b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.nl.png new file mode 100644 index 000000000..9952708d9 Binary files /dev/null and b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.nl.png differ diff --git a/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.no.png b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.no.png new file mode 100644 index 000000000..7a726b4d0 Binary files /dev/null and b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.no.png differ diff --git a/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.sv.png b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.sv.png new file mode 100644 index 000000000..f64f1a959 Binary files /dev/null and b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.sv.png differ diff --git a/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.th.png b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.th.png new file mode 100644 index 000000000..29f8995af Binary files /dev/null and b/translated_images/after-codeswing-extension-pb.0ebddddcf73b5509.th.png differ diff --git a/translated_images/background.148a8d43afde5730.da.png b/translated_images/background.148a8d43afde5730.da.png new file mode 100644 index 000000000..ebf0df39c Binary files /dev/null and b/translated_images/background.148a8d43afde5730.da.png differ diff --git a/translated_images/background.148a8d43afde5730.fi.png b/translated_images/background.148a8d43afde5730.fi.png new file mode 100644 index 000000000..1571eb637 Binary files /dev/null and b/translated_images/background.148a8d43afde5730.fi.png differ diff --git a/translated_images/background.148a8d43afde5730.nl.png b/translated_images/background.148a8d43afde5730.nl.png new file mode 100644 index 000000000..4530857ee Binary files /dev/null and b/translated_images/background.148a8d43afde5730.nl.png differ diff --git a/translated_images/background.148a8d43afde5730.no.png b/translated_images/background.148a8d43afde5730.no.png new file mode 100644 index 000000000..1baf97656 Binary files /dev/null and b/translated_images/background.148a8d43afde5730.no.png differ diff --git a/translated_images/background.148a8d43afde5730.sv.png b/translated_images/background.148a8d43afde5730.sv.png new file mode 100644 index 000000000..9c7105923 Binary files /dev/null and b/translated_images/background.148a8d43afde5730.sv.png differ diff --git a/translated_images/background.148a8d43afde5730.th.png b/translated_images/background.148a8d43afde5730.th.png new file mode 100644 index 000000000..d5993bb0e Binary files /dev/null and b/translated_images/background.148a8d43afde5730.th.png differ diff --git a/translated_images/backgroundColor.e19c3c60768150c8.da.png b/translated_images/backgroundColor.e19c3c60768150c8.da.png new file mode 100644 index 000000000..3bd93a532 Binary files /dev/null and b/translated_images/backgroundColor.e19c3c60768150c8.da.png differ diff --git a/translated_images/backgroundColor.e19c3c60768150c8.fi.png b/translated_images/backgroundColor.e19c3c60768150c8.fi.png new file mode 100644 index 000000000..3bd93a532 Binary files /dev/null and b/translated_images/backgroundColor.e19c3c60768150c8.fi.png differ diff --git a/translated_images/backgroundColor.e19c3c60768150c8.nl.png b/translated_images/backgroundColor.e19c3c60768150c8.nl.png new file mode 100644 index 000000000..3bd93a532 Binary files /dev/null and b/translated_images/backgroundColor.e19c3c60768150c8.nl.png differ diff --git a/translated_images/backgroundColor.e19c3c60768150c8.no.png b/translated_images/backgroundColor.e19c3c60768150c8.no.png new file mode 100644 index 000000000..3bd93a532 Binary files /dev/null and b/translated_images/backgroundColor.e19c3c60768150c8.no.png differ diff --git a/translated_images/backgroundColor.e19c3c60768150c8.sv.png b/translated_images/backgroundColor.e19c3c60768150c8.sv.png new file mode 100644 index 000000000..3bd93a532 Binary files /dev/null and b/translated_images/backgroundColor.e19c3c60768150c8.sv.png differ diff --git a/translated_images/backgroundColor.e19c3c60768150c8.th.png b/translated_images/backgroundColor.e19c3c60768150c8.th.png new file mode 100644 index 000000000..3bd93a532 Binary files /dev/null and b/translated_images/backgroundColor.e19c3c60768150c8.th.png differ diff --git a/translated_images/browser-console.efaf0b51aaaf6778.da.png b/translated_images/browser-console.efaf0b51aaaf6778.da.png new file mode 100644 index 000000000..593dba572 Binary files /dev/null and b/translated_images/browser-console.efaf0b51aaaf6778.da.png differ diff --git a/translated_images/browser-console.efaf0b51aaaf6778.fi.png b/translated_images/browser-console.efaf0b51aaaf6778.fi.png new file mode 100644 index 000000000..9a00a020e Binary files /dev/null and b/translated_images/browser-console.efaf0b51aaaf6778.fi.png differ diff --git a/translated_images/browser-console.efaf0b51aaaf6778.nl.png b/translated_images/browser-console.efaf0b51aaaf6778.nl.png new file mode 100644 index 000000000..caaa6d7d8 Binary files /dev/null and b/translated_images/browser-console.efaf0b51aaaf6778.nl.png differ diff --git a/translated_images/browser-console.efaf0b51aaaf6778.no.png b/translated_images/browser-console.efaf0b51aaaf6778.no.png new file mode 100644 index 000000000..2d6c45a7a Binary files /dev/null and b/translated_images/browser-console.efaf0b51aaaf6778.no.png differ diff --git a/translated_images/browser-console.efaf0b51aaaf6778.sv.png b/translated_images/browser-console.efaf0b51aaaf6778.sv.png new file mode 100644 index 000000000..087c14950 Binary files /dev/null and b/translated_images/browser-console.efaf0b51aaaf6778.sv.png differ diff --git a/translated_images/browser-console.efaf0b51aaaf6778.th.png b/translated_images/browser-console.efaf0b51aaaf6778.th.png new file mode 100644 index 000000000..128a4a42d Binary files /dev/null and b/translated_images/browser-console.efaf0b51aaaf6778.th.png differ diff --git a/translated_images/browser.60317c9be8b7f84a.da.jpg b/translated_images/browser.60317c9be8b7f84a.da.jpg new file mode 100644 index 000000000..ca1f762dc Binary files /dev/null and b/translated_images/browser.60317c9be8b7f84a.da.jpg differ diff --git a/translated_images/browser.60317c9be8b7f84a.fi.jpg b/translated_images/browser.60317c9be8b7f84a.fi.jpg new file mode 100644 index 000000000..26955ae00 Binary files /dev/null and b/translated_images/browser.60317c9be8b7f84a.fi.jpg differ diff --git a/translated_images/browser.60317c9be8b7f84a.nl.jpg b/translated_images/browser.60317c9be8b7f84a.nl.jpg new file mode 100644 index 000000000..981eb16c9 Binary files /dev/null and b/translated_images/browser.60317c9be8b7f84a.nl.jpg differ diff --git a/translated_images/browser.60317c9be8b7f84a.no.jpg b/translated_images/browser.60317c9be8b7f84a.no.jpg new file mode 100644 index 000000000..57b67226d Binary files /dev/null and b/translated_images/browser.60317c9be8b7f84a.no.jpg differ diff --git a/translated_images/browser.60317c9be8b7f84a.sv.jpg b/translated_images/browser.60317c9be8b7f84a.sv.jpg new file mode 100644 index 000000000..7190640e9 Binary files /dev/null and b/translated_images/browser.60317c9be8b7f84a.sv.jpg differ diff --git a/translated_images/browser.60317c9be8b7f84a.th.jpg b/translated_images/browser.60317c9be8b7f84a.th.jpg new file mode 100644 index 000000000..046e80937 Binary files /dev/null and b/translated_images/browser.60317c9be8b7f84a.th.jpg differ diff --git a/translated_images/canvas.fbd605ff8e5b8aff.da.png b/translated_images/canvas.fbd605ff8e5b8aff.da.png new file mode 100644 index 000000000..07ff6506e Binary files /dev/null and b/translated_images/canvas.fbd605ff8e5b8aff.da.png differ diff --git a/translated_images/canvas.fbd605ff8e5b8aff.fi.png b/translated_images/canvas.fbd605ff8e5b8aff.fi.png new file mode 100644 index 000000000..24dac1523 Binary files /dev/null and b/translated_images/canvas.fbd605ff8e5b8aff.fi.png differ diff --git a/translated_images/canvas.fbd605ff8e5b8aff.nl.png b/translated_images/canvas.fbd605ff8e5b8aff.nl.png new file mode 100644 index 000000000..18ce88044 Binary files /dev/null and b/translated_images/canvas.fbd605ff8e5b8aff.nl.png differ diff --git a/translated_images/canvas.fbd605ff8e5b8aff.no.png b/translated_images/canvas.fbd605ff8e5b8aff.no.png new file mode 100644 index 000000000..63ba18714 Binary files /dev/null and b/translated_images/canvas.fbd605ff8e5b8aff.no.png differ diff --git a/translated_images/canvas.fbd605ff8e5b8aff.sv.png b/translated_images/canvas.fbd605ff8e5b8aff.sv.png new file mode 100644 index 000000000..8353993ba Binary files /dev/null and b/translated_images/canvas.fbd605ff8e5b8aff.sv.png differ diff --git a/translated_images/canvas.fbd605ff8e5b8aff.th.png b/translated_images/canvas.fbd605ff8e5b8aff.th.png new file mode 100644 index 000000000..f70418a58 Binary files /dev/null and b/translated_images/canvas.fbd605ff8e5b8aff.th.png differ diff --git a/translated_images/canvas_grid.5f209da785ded492.da.png b/translated_images/canvas_grid.5f209da785ded492.da.png new file mode 100644 index 000000000..ce4d0f1a1 Binary files /dev/null and b/translated_images/canvas_grid.5f209da785ded492.da.png differ diff --git a/translated_images/canvas_grid.5f209da785ded492.fi.png b/translated_images/canvas_grid.5f209da785ded492.fi.png new file mode 100644 index 000000000..b323ddd01 Binary files /dev/null and b/translated_images/canvas_grid.5f209da785ded492.fi.png differ diff --git a/translated_images/canvas_grid.5f209da785ded492.nl.png b/translated_images/canvas_grid.5f209da785ded492.nl.png new file mode 100644 index 000000000..3103a5975 Binary files /dev/null and b/translated_images/canvas_grid.5f209da785ded492.nl.png differ diff --git a/translated_images/canvas_grid.5f209da785ded492.no.png b/translated_images/canvas_grid.5f209da785ded492.no.png new file mode 100644 index 000000000..544a8fa9b Binary files /dev/null and b/translated_images/canvas_grid.5f209da785ded492.no.png differ diff --git a/translated_images/canvas_grid.5f209da785ded492.sv.png b/translated_images/canvas_grid.5f209da785ded492.sv.png new file mode 100644 index 000000000..2a9b5cee6 Binary files /dev/null and b/translated_images/canvas_grid.5f209da785ded492.sv.png differ diff --git a/translated_images/canvas_grid.5f209da785ded492.th.png b/translated_images/canvas_grid.5f209da785ded492.th.png new file mode 100644 index 000000000..4450de50a Binary files /dev/null and b/translated_images/canvas_grid.5f209da785ded492.th.png differ diff --git a/translated_images/character.5c0dd8e067ffd693.da.png b/translated_images/character.5c0dd8e067ffd693.da.png new file mode 100644 index 000000000..1f40681d6 Binary files /dev/null and b/translated_images/character.5c0dd8e067ffd693.da.png differ diff --git a/translated_images/character.5c0dd8e067ffd693.fi.png b/translated_images/character.5c0dd8e067ffd693.fi.png new file mode 100644 index 000000000..8ed7edc60 Binary files /dev/null and b/translated_images/character.5c0dd8e067ffd693.fi.png differ diff --git a/translated_images/character.5c0dd8e067ffd693.nl.png b/translated_images/character.5c0dd8e067ffd693.nl.png new file mode 100644 index 000000000..8ea437b8b Binary files /dev/null and b/translated_images/character.5c0dd8e067ffd693.nl.png differ diff --git a/translated_images/character.5c0dd8e067ffd693.no.png b/translated_images/character.5c0dd8e067ffd693.no.png new file mode 100644 index 000000000..07b67ed34 Binary files /dev/null and b/translated_images/character.5c0dd8e067ffd693.no.png differ diff --git a/translated_images/character.5c0dd8e067ffd693.sv.png b/translated_images/character.5c0dd8e067ffd693.sv.png new file mode 100644 index 000000000..ceee3ca27 Binary files /dev/null and b/translated_images/character.5c0dd8e067ffd693.sv.png differ diff --git a/translated_images/character.5c0dd8e067ffd693.th.png b/translated_images/character.5c0dd8e067ffd693.th.png new file mode 100644 index 000000000..d620ea8ce Binary files /dev/null and b/translated_images/character.5c0dd8e067ffd693.th.png differ diff --git a/translated_images/click-register.e89a30bf0d4bc9ca.da.png b/translated_images/click-register.e89a30bf0d4bc9ca.da.png new file mode 100644 index 000000000..ccc65305d Binary files /dev/null and b/translated_images/click-register.e89a30bf0d4bc9ca.da.png differ diff --git a/translated_images/click-register.e89a30bf0d4bc9ca.fi.png b/translated_images/click-register.e89a30bf0d4bc9ca.fi.png new file mode 100644 index 000000000..ccc65305d Binary files /dev/null and b/translated_images/click-register.e89a30bf0d4bc9ca.fi.png differ diff --git a/translated_images/click-register.e89a30bf0d4bc9ca.nl.png b/translated_images/click-register.e89a30bf0d4bc9ca.nl.png new file mode 100644 index 000000000..ccc65305d Binary files /dev/null and b/translated_images/click-register.e89a30bf0d4bc9ca.nl.png differ diff --git a/translated_images/click-register.e89a30bf0d4bc9ca.no.png b/translated_images/click-register.e89a30bf0d4bc9ca.no.png new file mode 100644 index 000000000..ccc65305d Binary files /dev/null and b/translated_images/click-register.e89a30bf0d4bc9ca.no.png differ diff --git a/translated_images/click-register.e89a30bf0d4bc9ca.sv.png b/translated_images/click-register.e89a30bf0d4bc9ca.sv.png new file mode 100644 index 000000000..ccc65305d Binary files /dev/null and b/translated_images/click-register.e89a30bf0d4bc9ca.sv.png differ diff --git a/translated_images/click-register.e89a30bf0d4bc9ca.th.png b/translated_images/click-register.e89a30bf0d4bc9ca.th.png new file mode 100644 index 000000000..ccc65305d Binary files /dev/null and b/translated_images/click-register.e89a30bf0d4bc9ca.th.png differ diff --git a/translated_images/clone_repo.5085c48d666ead57.da.png b/translated_images/clone_repo.5085c48d666ead57.da.png new file mode 100644 index 000000000..6ceab70c9 Binary files /dev/null and b/translated_images/clone_repo.5085c48d666ead57.da.png differ diff --git a/translated_images/clone_repo.5085c48d666ead57.fi.png b/translated_images/clone_repo.5085c48d666ead57.fi.png new file mode 100644 index 000000000..d0dfed51b Binary files /dev/null and b/translated_images/clone_repo.5085c48d666ead57.fi.png differ diff --git a/translated_images/clone_repo.5085c48d666ead57.nl.png b/translated_images/clone_repo.5085c48d666ead57.nl.png new file mode 100644 index 000000000..479c7cabb Binary files /dev/null and b/translated_images/clone_repo.5085c48d666ead57.nl.png differ diff --git a/translated_images/clone_repo.5085c48d666ead57.no.png b/translated_images/clone_repo.5085c48d666ead57.no.png new file mode 100644 index 000000000..e19747703 Binary files /dev/null and b/translated_images/clone_repo.5085c48d666ead57.no.png differ diff --git a/translated_images/clone_repo.5085c48d666ead57.sv.png b/translated_images/clone_repo.5085c48d666ead57.sv.png new file mode 100644 index 000000000..8c7c2b479 Binary files /dev/null and b/translated_images/clone_repo.5085c48d666ead57.sv.png differ diff --git a/translated_images/clone_repo.5085c48d666ead57.th.png b/translated_images/clone_repo.5085c48d666ead57.th.png new file mode 100644 index 000000000..55042ce84 Binary files /dev/null and b/translated_images/clone_repo.5085c48d666ead57.th.png differ diff --git a/translated_images/clone_repo.6a202fb230ab6bdd.da.png b/translated_images/clone_repo.6a202fb230ab6bdd.da.png new file mode 100644 index 000000000..ae6508f94 Binary files /dev/null and b/translated_images/clone_repo.6a202fb230ab6bdd.da.png differ diff --git a/translated_images/clone_repo.6a202fb230ab6bdd.fi.png b/translated_images/clone_repo.6a202fb230ab6bdd.fi.png new file mode 100644 index 000000000..04b433442 Binary files /dev/null and b/translated_images/clone_repo.6a202fb230ab6bdd.fi.png differ diff --git a/translated_images/clone_repo.6a202fb230ab6bdd.nl.png b/translated_images/clone_repo.6a202fb230ab6bdd.nl.png new file mode 100644 index 000000000..42f0c6824 Binary files /dev/null and b/translated_images/clone_repo.6a202fb230ab6bdd.nl.png differ diff --git a/translated_images/clone_repo.6a202fb230ab6bdd.no.png b/translated_images/clone_repo.6a202fb230ab6bdd.no.png new file mode 100644 index 000000000..b4b6770e0 Binary files /dev/null and b/translated_images/clone_repo.6a202fb230ab6bdd.no.png differ diff --git a/translated_images/clone_repo.6a202fb230ab6bdd.sv.png b/translated_images/clone_repo.6a202fb230ab6bdd.sv.png new file mode 100644 index 000000000..7a2404693 Binary files /dev/null and b/translated_images/clone_repo.6a202fb230ab6bdd.sv.png differ diff --git a/translated_images/clone_repo.6a202fb230ab6bdd.th.png b/translated_images/clone_repo.6a202fb230ab6bdd.th.png new file mode 100644 index 000000000..2500d4167 Binary files /dev/null and b/translated_images/clone_repo.6a202fb230ab6bdd.th.png differ diff --git a/translated_images/codespace.bcecbdf5d2747d3d.da.png b/translated_images/codespace.bcecbdf5d2747d3d.da.png new file mode 100644 index 000000000..5ba438f44 Binary files /dev/null and b/translated_images/codespace.bcecbdf5d2747d3d.da.png differ diff --git a/translated_images/codespace.bcecbdf5d2747d3d.fi.png b/translated_images/codespace.bcecbdf5d2747d3d.fi.png new file mode 100644 index 000000000..0e8c1607e Binary files /dev/null and b/translated_images/codespace.bcecbdf5d2747d3d.fi.png differ diff --git a/translated_images/codespace.bcecbdf5d2747d3d.nl.png b/translated_images/codespace.bcecbdf5d2747d3d.nl.png new file mode 100644 index 000000000..bed12bcf4 Binary files /dev/null and b/translated_images/codespace.bcecbdf5d2747d3d.nl.png differ diff --git a/translated_images/codespace.bcecbdf5d2747d3d.no.png b/translated_images/codespace.bcecbdf5d2747d3d.no.png new file mode 100644 index 000000000..34dadbc9f Binary files /dev/null and b/translated_images/codespace.bcecbdf5d2747d3d.no.png differ diff --git a/translated_images/codespace.bcecbdf5d2747d3d.sv.png b/translated_images/codespace.bcecbdf5d2747d3d.sv.png new file mode 100644 index 000000000..99b8b33e2 Binary files /dev/null and b/translated_images/codespace.bcecbdf5d2747d3d.sv.png differ diff --git a/translated_images/codespace.bcecbdf5d2747d3d.th.png b/translated_images/codespace.bcecbdf5d2747d3d.th.png new file mode 100644 index 000000000..738d82678 Binary files /dev/null and b/translated_images/codespace.bcecbdf5d2747d3d.th.png differ diff --git a/translated_images/create-a-fork.297ab42b4bd0af99.da.png b/translated_images/create-a-fork.297ab42b4bd0af99.da.png new file mode 100644 index 000000000..f6857ca19 Binary files /dev/null and b/translated_images/create-a-fork.297ab42b4bd0af99.da.png differ diff --git a/translated_images/create-a-fork.297ab42b4bd0af99.fi.png b/translated_images/create-a-fork.297ab42b4bd0af99.fi.png new file mode 100644 index 000000000..2265b507f Binary files /dev/null and b/translated_images/create-a-fork.297ab42b4bd0af99.fi.png differ diff --git a/translated_images/create-a-fork.297ab42b4bd0af99.nl.png b/translated_images/create-a-fork.297ab42b4bd0af99.nl.png new file mode 100644 index 000000000..df0307991 Binary files /dev/null and b/translated_images/create-a-fork.297ab42b4bd0af99.nl.png differ diff --git a/translated_images/create-a-fork.297ab42b4bd0af99.no.png b/translated_images/create-a-fork.297ab42b4bd0af99.no.png new file mode 100644 index 000000000..b8218adb0 Binary files /dev/null and b/translated_images/create-a-fork.297ab42b4bd0af99.no.png differ diff --git a/translated_images/create-a-fork.297ab42b4bd0af99.sv.png b/translated_images/create-a-fork.297ab42b4bd0af99.sv.png new file mode 100644 index 000000000..09f8da580 Binary files /dev/null and b/translated_images/create-a-fork.297ab42b4bd0af99.sv.png differ diff --git a/translated_images/create-a-fork.297ab42b4bd0af99.th.png b/translated_images/create-a-fork.297ab42b4bd0af99.th.png new file mode 100644 index 000000000..1e6dd9bac Binary files /dev/null and b/translated_images/create-a-fork.297ab42b4bd0af99.th.png differ diff --git a/translated_images/create-new-file-pb.0797800d977ec3eb.da.png b/translated_images/create-new-file-pb.0797800d977ec3eb.da.png new file mode 100644 index 000000000..a1c0cc03c Binary files /dev/null and b/translated_images/create-new-file-pb.0797800d977ec3eb.da.png differ diff --git a/translated_images/create-new-file-pb.0797800d977ec3eb.fi.png b/translated_images/create-new-file-pb.0797800d977ec3eb.fi.png new file mode 100644 index 000000000..9f878f131 Binary files /dev/null and b/translated_images/create-new-file-pb.0797800d977ec3eb.fi.png differ diff --git a/translations/th/README.md b/translations/th/README.md index 48a3c324c..7296e9a19 100644 --- a/translations/th/README.md +++ b/translations/th/README.md @@ -1,8 +1,8 @@ -[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](./README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) +[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Kannada](../kn/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Malayalam](../ml/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Nigerian Pidgin](../pcm/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Telugu](../te/README.md) | [Thai](./README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) + +> **ต้องการโคลนแบบท้องถิ่น?** + +> ที่เก็บนี้มีการแปลมากกว่า 50 ภาษา ซึ่งทำให้ขนาดการดาวน์โหลดเพิ่มขึ้นมาก หากต้องการโคลนโดยไม่รวมการแปลให้ใช้ sparse checkout: +> ```bash +> git clone --filter=blob:none --sparse https://github.com/microsoft/Web-Dev-For-Beginners.git +> cd Web-Dev-For-Beginners +> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images' +> ``` +> สิ่งนี้จะให้ทุกอย่างที่คุณต้องการเพื่อทำหลักสูตรให้เสร็จด้วยความเร็วในการดาวน์โหลดที่รวดเร็วขึ้นมาก -**หากคุณต้องการให้มีการรองรับภาษาเพิ่มเติม รายการภาษาที่รองรับอยู่ [ที่นี่](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**หากคุณต้องการสนับสนุนภาษาการแปลเพิ่มเติม รายการภาษาที่รองรับอยู่ที่ [นี่](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** [![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) #### 🧑‍🎓 _คุณเป็นนักเรียนหรือไม่?_ -เยี่ยมชม [**หน้า Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) ซึ่งคุณจะพบทรัพยากรสำหรับผู้เริ่มต้น ชุดเครื่องมือสำหรับนักเรียน และแม้กระทั่งวิธีการรับบัตรกำนัลใบรับรองฟรี นี่คือหน้าที่คุณควรบันทึกไว้และตรวจสอบเป็นระยะๆ เนื่องจากเรามีการเปลี่ยนแปลงเนื้อหาในทุกเดือน +เยี่ยมชม [**หน้า Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) ซึ่งคุณจะพบทรัพยากรสำหรับผู้เริ่มต้น ชุดนักเรียน และแม้แต่ช่องทางในการรับคูปองรับรองฟรี นี่คือหน้าที่คุณควรบุ๊กมาร์กและตรวจสอบเป็นระยะเนื่องจากเราจะสลับเปลี่ยนเนื้อหาเป็นประจำทุกเดือน -### 📣 ประกาศ - ความท้าทายใหม่ในโหมด Agent ของ GitHub Copilot! +### 📣 ประกาศ - มีความท้าทายโหมด GitHub Copilot Agent ใหม่ให้ทำ! -เพิ่มความท้าทายใหม่แล้ว ค้นหา "GitHub Copilot Agent Challenge 🚀" ในบทส่วนใหญ่ นี่คือความท้าทายใหม่ที่คุณสามารถทำได้โดยใช้ GitHub Copilot และโหมด Agent หากคุณยังไม่เคยใช้โหมด Agent มาก่อน มันสามารถทำได้มากกว่าแค่สร้างข้อความ เช่น สร้างและแก้ไขไฟล์ รันคำสั่ง และอื่นๆ +เพิ่มความท้าทายใหม่ ค้นหา "GitHub Copilot Agent Challenge 🚀" ในหลายบท นั่นคือความท้าทายใหม่สำหรับคุณในการทำโดยใช้ GitHub Copilot และโหมด Agent หากคุณไม่เคยใช้โหมด Agent มาก่อน โหมดนี้ไม่เพียงแต่สร้างข้อความเท่านั้น แต่ยังสามารถสร้างและแก้ไขไฟล์ รันคำสั่ง และอื่น ๆ ได้ด้วย -### 📣 ประกาศ - _โปรเจกต์ใหม่ที่สร้างโดยใช้ Generative AI_ +### 📣 ประกาศ - _โปรเจกต์ใหม่ที่สร้างด้วย Generative AI_ -โปรเจกต์ AI Assistant ใหม่เพิ่งถูกเพิ่ม ลองดูได้ที่ [โปรเจกต์](./09-chat-project/README.md) +โปรเจกต์ AI Assistant ใหม่เพิ่งถูกเพิ่ม ลองดู [โปรเจกต์](./9-chat-project/README.md) -### 📣 ประกาศ - _หลักสูตรใหม่_ เกี่ยวกับ Generative AI สำหรับ JavaScript เพิ่งถูกปล่อยออกมา +### 📣 ประกาศ - _หลักสูตรใหม่_ เรื่อง Generative AI สำหรับ JavaScript เพิ่งเปิดตัว อย่าพลาดหลักสูตร Generative AI ใหม่ของเรา! เยี่ยมชม [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) เพื่อเริ่มต้น! -![Background](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.th.png) +![Background](../../translated_images/background.148a8d43afde5730.th.png) -- บทเรียนครอบคลุมทุกอย่างตั้งแต่พื้นฐานจนถึง RAG -- โต้ตอบกับตัวละครในประวัติศาสตร์โดยใช้ GenAI และแอปคู่หูของเรา -- เนื้อหาสนุกและน่าสนใจ คุณจะได้เดินทางข้ามเวลา! +- บทเรียนครอบคลุมตั้งแต่พื้นฐานจนถึง RAG +- มีปฏิสัมพันธ์กับตัวละครในประวัติศาสตร์โดยใช้ GenAI และแอปช่วยเหลือของเรา +- เรื่องเล่าสนุก ๆ และน่าติดตาม คุณจะได้เดินทางข้ามเวลา! -![character](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.th.png) +![character](../../translated_images/character.5c0dd8e067ffd693.th.png) -แต่ละบทเรียนมีการมอบหมายงานให้ทำ การตรวจสอบความรู้ และความท้าทายเพื่อช่วยให้คุณเรียนรู้หัวข้อต่างๆ เช่น: -- การสร้างคำสั่งและการออกแบบคำสั่ง +แต่ละบทเรียนมีการมอบหมายงานให้ทำ การตรวจสอบความรู้ และความท้าทายเพื่อแนะนำคุณในการเรียนรู้หัวข้อต่าง ๆ เช่น: +- การกระตุ้นและการออกแบบคำกระตุ้น (prompt engineering) - การสร้างแอปข้อความและภาพ -- แอปค้นหา +- แอปการค้นหา เยี่ยมชม [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) เพื่อเริ่มต้น! +## 🌱 การเริ่มต้นใช้งาน +> **คุณครู** เราได้ [รวมข้อเสนอแนะบางส่วน](for-teachers.md) เกี่ยวกับวิธีใช้หลักสูตรนี้ เราต้องการรับฟังความคิดเห็นของคุณ [ในฟอรัมอภิปรายของเรา](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! -## 🌱 เริ่มต้นใช้งาน - -> **ครู** เราได้ [รวมคำแนะนำบางส่วน](for-teachers.md) เกี่ยวกับวิธีการใช้หลักสูตรนี้ เราอยากได้ความคิดเห็นของคุณ [ในฟอรัมการอภิปรายของเรา](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! +**[ผู้เรียน](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)** สำหรับแต่ละบทเรียน เริ่มด้วยแบบทดสอบก่อนการบรรยายและอ่านเนื้อหาบทเรียน ทำกิจกรรมต่าง ๆ และตรวจสอบความเข้าใจของคุณด้วยแบบทดสอบหลังการบรรยาย -**[ผู้เรียน](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)** สำหรับแต่ละบทเรียน เริ่มต้นด้วยแบบทดสอบก่อนการบรรยายและอ่านเนื้อหาการบรรยาย ทำกิจกรรมต่างๆ และตรวจสอบความเข้าใจของคุณด้วยแบบทดสอบหลังการบรรยาย +เพื่อเพิ่มประสบการณ์การเรียนรู้ของคุณ เชื่อมต่อกับเพื่อนเพื่อทำโปรเจกต์ร่วมกัน! เราสนับสนุนให้มีการอภิปรายใน [ฟอรัมอภิปราย](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) ซึ่งทีมผู้ดูแลของเราจะพร้อมตอบคำถามของคุณ -เพื่อเพิ่มประสบการณ์การเรียนรู้ของคุณ เชื่อมต่อกับเพื่อนๆ เพื่อทำโปรเจกต์ร่วมกัน! เราสนับสนุนให้มีการอภิปรายใน [ฟอรัมการอภิปราย](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) ซึ่งทีมผู้ดูแลของเราจะพร้อมตอบคำถามของคุณ - -เพื่อการศึกษาต่อ เราขอแนะนำให้สำรวจ [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) เพื่อค้นหาเนื้อหาการเรียนเพิ่มเติม +หากต้องการศึกษาต่อ แนะนำอย่างยิ่งให้สำรวจ [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) สำหรับเนื้อหาเพิ่มเติม ### 📋 การตั้งค่าสภาพแวดล้อมของคุณ -หลักสูตรนี้มีสภาพแวดล้อมการพัฒนาพร้อมใช้งาน! เมื่อคุณเริ่มต้น คุณสามารถเลือกที่จะรันหลักสูตรใน [Codespace](https://github.com/features/codespaces/) (_สภาพแวดล้อมที่ใช้เบราว์เซอร์ ไม่ต้องติดตั้ง_) หรือในเครื่องคอมพิวเตอร์ของคุณโดยใช้โปรแกรมแก้ไขข้อความ เช่น [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) +หลักสูตรนี้มีสภาพแวดล้อมสำหรับพัฒนาพร้อมใช้งาน! ขณะเริ่มต้นคุณสามารถเลือกใช้งานหลักสูตรใน [Codespace](https://github.com/features/codespaces/) (_สภาพแวดล้อมบนเบราว์เซอร์ที่ไม่ต้องติดตั้งอะไร_) หรือใช้งานแบบท้องถิ่นบนคอมพิวเตอร์ของคุณโดยใช้ตัวแก้ไขข้อความเช่น [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) -#### สร้าง Repository ของคุณ -เพื่อให้คุณสามารถบันทึกงานของคุณได้ง่ายขึ้น ขอแนะนำให้คุณสร้างสำเนาของ Repository นี้ คุณสามารถทำได้โดยคลิกปุ่ม **Use this template** ที่ด้านบนของหน้า ซึ่งจะสร้าง Repository ใหม่ในบัญชี GitHub ของคุณพร้อมสำเนาหลักสูตร +#### สร้างที่เก็บของคุณเอง +เพื่อให้ง่ายต่อการบันทึกงานของคุณ ขอแนะนำให้สร้างสำเนาของที่เก็บนี้ คุณสามารถทำได้โดยคลิกปุ่ม **Use this template** ที่ด้านบนของหน้า ซึ่งจะสร้างที่เก็บใหม่ในบัญชี GitHub ของคุณพร้อมสำเนาหลักสูตรนี้ ทำตามขั้นตอนเหล่านี้: -1. **Fork Repository**: คลิกปุ่ม "Fork" ที่มุมขวาบนของหน้านี้ -2. **Clone Repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +1. **Fork ที่เก็บข้อมูล**: คลิกที่ปุ่ม "Fork" ที่มุมบนขวาของหน้านี้ +2. **โคลนที่เก็บข้อมูล**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -#### การรันหลักสูตรใน Codespace +#### ใช้งานหลักสูตรใน Codespace -ในสำเนา Repository ที่คุณสร้างขึ้น ให้คลิกปุ่ม **Code** และเลือก **Open with Codespaces** ซึ่งจะสร้าง Codespace ใหม่สำหรับคุณในการทำงาน +ในสำเนาของที่เก็บนี้ที่คุณสร้างขึ้น คลิกปุ่ม **Code** และเลือก **Open with Codespaces** ซึ่งจะสร้าง Codespace ใหม่ให้คุณใช้งาน -![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.th.png) +![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955.th.png) -#### การรันหลักสูตรในเครื่องคอมพิวเตอร์ของคุณ +#### ใช้งานหลักสูตรในเครื่องคอมพิวเตอร์ของคุณ -เพื่อรันหลักสูตรนี้ในเครื่องคอมพิวเตอร์ของคุณ คุณจะต้องมีโปรแกรมแก้ไขข้อความ เบราว์เซอร์ และเครื่องมือบรรทัดคำสั่ง บทเรียนแรกของเรา [Introduction to Programming Languages and Tools of the Trade](../../1-getting-started-lessons/1-intro-to-programming-languages) จะช่วยแนะนำตัวเลือกต่างๆ สำหรับเครื่องมือเหล่านี้ เพื่อให้คุณเลือกสิ่งที่เหมาะสมที่สุดสำหรับคุณ +ในการใช้งานหลักสูตรนี้ในเครื่องคอมพิวเตอร์ของคุณ คุณจะต้องมีตัวแก้ไขข้อความ เว็บเบราว์เซอร์ และเครื่องมือบรรทัดคำสั่ง บทเรียนแรกของเรา [Introduction to Programming Languages and Tools of the Trade](../../1-getting-started-lessons/1-intro-to-programming-languages) จะพาคุณผ่านตัวเลือกหลายอย่างสำหรับเครื่องมือเหล่านี้ให้คุณเลือกใช้งานตามเหมาะสม -คำแนะนำของเราคือใช้ [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) เป็นโปรแกรมแก้ไข ซึ่งมี [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) ในตัว คุณสามารถดาวน์โหลด Visual Studio Code [ที่นี่](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) +คำแนะนำของเราคือใช้ [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) เป็นตัวแก้ไขซึ่งมี [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) ในตัว คุณสามารถดาวน์โหลด Visual Studio Code ได้ที่นี่ [ลิงก์ดาวน์โหลด](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)。 -1. Clone Repository ของคุณลงในคอมพิวเตอร์ คุณสามารถทำได้โดยคลิกปุ่ม **Code** และคัดลอก URL: +1. โคลนที่เก็บข้อมูลของคุณมายังคอมพิวเตอร์โดยคลิกปุ่ม **Code** และคัดลอก URL: [CodeSpace](./images/createcodespace.png) - - จากนั้นเปิด [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) ใน [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) และรันคำสั่งต่อไปนี้ โดยแทนที่ `` ด้วย URL ที่คุณเพิ่งคัดลอกมา: +จากนั้น เปิด [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) ภายใน [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) และรันคำสั่งต่อไปนี้ โดยแทนที่ `` ด้วย URL ที่คุณเพิ่งคัดลอกมา: ```bash git clone ``` -2. เปิดโฟลเดอร์ใน Visual Studio Code คุณสามารถทำได้โดยคลิก **File** > **Open Folder** และเลือกโฟลเดอร์ที่คุณเพิ่ง Clone มา +2. เปิดโฟลเดอร์ใน Visual Studio Code คุณสามารถทำได้โดยคลิก **File** > **Open Folder** และเลือกโฟลเดอร์ที่คุณเพิ่งโคลนมา -> ส่วนขยายที่แนะนำสำหรับ Visual Studio Code: +> ส่วนขยายแนะนำสำหรับ Visual Studio Code: > -> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - ใช้สำหรับดูตัวอย่างหน้า HTML ใน Visual Studio Code -> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - ช่วยให้คุณเขียนโค้ดได้เร็วขึ้น +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - เพื่อดูตัวอย่างหน้า HTML ภายใน Visual Studio Code +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - ช่วยคุณเขียนโค้ดได้เร็วขึ้น ## 📂 แต่ละบทเรียนประกอบด้วย: -- สเก็ตโน้ต (ตัวเลือก) -- วิดีโอเสริม (ตัวเลือก) -- แบบทดสอบอุ่นเครื่องก่อนเริ่มบทเรียน +- sketchnote ตัวเลือกเสริม +- วิดีโอเสริมตัวเลือก +- แบบทดสอบอบอุ่นก่อนบทเรียน - บทเรียนที่เขียนไว้ -- สำหรับบทเรียนที่เน้นโครงการ มีคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีสร้างโครงการ +- สำหรับบทเรียนแบบโครงงาน มีคู่มือทีละขั้นตอนเกี่ยวกับวิธีการสร้างโครงงาน - การตรวจสอบความรู้ - ความท้าทาย - การอ่านเสริม -- งานที่มอบหมาย +- มอบหมายงาน - [แบบทดสอบหลังบทเรียน](https://ff-quizzes.netlify.app/web/) -> **หมายเหตุเกี่ยวกับแบบทดสอบ**: แบบทดสอบทั้งหมดอยู่ในโฟลเดอร์ Quiz-app มีทั้งหมด 48 แบบทดสอบ แต่ละแบบมี 3 คำถาม สามารถเข้าถึงได้ [ที่นี่](https://ff-quizzes.netlify.app/web/) แอปแบบทดสอบสามารถรันได้ในเครื่องหรือเผยแพร่ไปยัง Azure โดยทำตามคำแนะนำในโฟลเดอร์ `quiz-app` +> **หมายเหตุเกี่ยวกับแบบทดสอบ**: แบบทดสอบทั้งหมดอยู่ในโฟลเดอร์ Quiz-app จำนวน 48 แบบทดสอบ แต่ละแบบมีสามคำถาม พวกเขาสามารถดูได้ [ที่นี่](https://ff-quizzes.netlify.app/web/) แอปแบบทดสอบสามารถรันบนเครื่องท้องถิ่นหรือปรับใช้บน Azure; ปฏิบัติตามคำแนะนำในโฟลเดอร์ `quiz-app` ## 🗃️ บทเรียน -| | ชื่อโครงการ | แนวคิดที่สอน | วัตถุประสงค์การเรียนรู้ | ลิงก์บทเรียน | ผู้เขียน | +| | ชื่อโครงงาน | แนวคิดที่สอน | วัตถุประสงค์การเรียนรู้ | บทเรียนที่ลิงก์ | ผู้เขียน | | :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | เริ่มต้นใช้งาน | แนะนำการเขียนโปรแกรมและเครื่องมือที่ใช้ในงาน | เรียนรู้พื้นฐานของภาษาการเขียนโปรแกรมส่วนใหญ่และซอฟต์แวร์ที่ช่วยให้นักพัฒนามืออาชีพทำงานได้อย่างมีประสิทธิภาพ | [แนะนำภาษาการเขียนโปรแกรมและเครื่องมือที่ใช้ในงาน](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | เริ่มต้นใช้งาน | พื้นฐานของ GitHub รวมถึงการทำงานเป็นทีม | วิธีใช้ GitHub ในโครงการของคุณ วิธีทำงานร่วมกับผู้อื่นในฐานข้อมูลโค้ด | [แนะนำ GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | เริ่มต้นใช้งาน | การเข้าถึง | เรียนรู้พื้นฐานของการเข้าถึงเว็บ | [พื้นฐานการเข้าถึง](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 01 | เริ่มต้นใช้งาน | การแนะนำการเขียนโปรแกรมและเครื่องมือในการทำงาน | เรียนรู้พื้นฐานเบื้องหลังของภาษาโปรแกรมส่วนใหญ่และเกี่ยวกับซอฟต์แวร์ที่ช่วยนักพัฒนามืออาชีพทำงานของพวกเขา | [แนะนำภาษาโปรแกรมและเครื่องมือ](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | เริ่มต้นใช้งาน | พื้นฐานของ GitHub รวมถึงการทำงานเป็นทีม | วิธีใช้ GitHub ในโปรเจกต์ของคุณ วิธีการร่วมมือกับผู้อื่นบนฐานโค้ด | [แนะนำ GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | เริ่มต้นใช้งาน | การเข้าถึงได้ | เรียนรู้พื้นฐานของการเข้าถึงเว็บ | [พื้นฐานการเข้าถึง](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | | 04 | พื้นฐาน JS | ประเภทข้อมูลใน JavaScript | พื้นฐานของประเภทข้อมูลใน JavaScript | [ประเภทข้อมูล](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | พื้นฐาน JS | ฟังก์ชันและเมธอด | เรียนรู้เกี่ยวกับฟังก์ชันและเมธอดเพื่อจัดการการไหลของตรรกะในแอปพลิเคชัน | [ฟังก์ชันและเมธอด](./2-js-basics/2-functions-methods/README.md) | Jasmine and Christopher | +| 05 | พื้นฐาน JS | ฟังก์ชันและเมธอด | เรียนรู้เกี่ยวกับฟังก์ชันและเมธอดเพื่อจัดการกับการไหลของตรรกะในแอปพลิเคชัน | [ฟังก์ชันและเมธอด](./2-js-basics/2-functions-methods/README.md) | Jasmine and Christopher | | 06 | พื้นฐาน JS | การตัดสินใจด้วย JS | เรียนรู้วิธีสร้างเงื่อนไขในโค้ดของคุณโดยใช้วิธีการตัดสินใจ | [การตัดสินใจ](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | พื้นฐาน JS | อาร์เรย์และลูป | ทำงานกับข้อมูลโดยใช้อาร์เรย์และลูปใน JavaScript | [อาร์เรย์และลูป](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML ในการปฏิบัติ | สร้าง HTML เพื่อสร้าง terrarium ออนไลน์ โดยเน้นการสร้างเลย์เอาต์ | [แนะนำ HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS ในการปฏิบัติ | สร้าง CSS เพื่อจัดแต่ง terrarium ออนไลน์ โดยเน้นพื้นฐานของ CSS รวมถึงการทำให้หน้าเว็บตอบสนอง | [แนะนำ CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Closures, การจัดการ DOM | สร้าง JavaScript เพื่อทำให้ terrarium ทำงานเป็นอินเทอร์เฟซลาก/วาง โดยเน้นที่ closures และการจัดการ DOM | [JavaScript Closures, การจัดการ DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | -| 11 | [Typing Game](./4-typing-game/solution/README.md) | สร้างเกมพิมพ์ | เรียนรู้วิธีใช้เหตุการณ์คีย์บอร์ดเพื่อขับเคลื่อนตรรกะของแอป JavaScript ของคุณ | [การเขียนโปรแกรมที่ขับเคลื่อนด้วยเหตุการณ์](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [Green Browser Extension](./5-browser-extension/solution/README.md) | การทำงานกับเบราว์เซอร์ | เรียนรู้ว่าเบราว์เซอร์ทำงานอย่างไร ประวัติของมัน และวิธีสร้างองค์ประกอบแรกของส่วนขยายเบราว์เซอร์ | [เกี่ยวกับเบราว์เซอร์](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Green Browser Extension](./5-browser-extension/solution/README.md) | สร้างฟอร์ม เรียก API และจัดเก็บตัวแปรใน local storage | สร้างองค์ประกอบ JavaScript ของส่วนขยายเบราว์เซอร์ของคุณเพื่อเรียก API โดยใช้ตัวแปรที่จัดเก็บใน local storage | [APIs, ฟอร์ม และ local storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Green Browser Extension](./5-browser-extension/solution/README.md) | กระบวนการเบื้องหลังในเบราว์เซอร์ ประสิทธิภาพเว็บ | ใช้กระบวนการเบื้องหลังของเบราว์เซอร์เพื่อจัดการไอคอนของส่วนขยาย เรียนรู้เกี่ยวกับประสิทธิภาพเว็บและการปรับปรุงบางอย่าง | [งานเบื้องหลังและประสิทธิภาพ](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Space Game](./6-space-game/solution/README.md) | การพัฒนาเกมขั้นสูงเพิ่มเติมด้วย JavaScript | เรียนรู้เกี่ยวกับการสืบทอดโดยใช้ทั้ง Classes และ Composition และรูปแบบ Pub/Sub เพื่อเตรียมสร้างเกม | [แนะนำการพัฒนาเกมขั้นสูง](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Space Game](./6-space-game/solution/README.md) | การวาดลง canvas | เรียนรู้เกี่ยวกับ Canvas API ที่ใช้วาดองค์ประกอบลงบนหน้าจอ | [การวาดลง canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Space Game](./6-space-game/solution/README.md) | การเคลื่อนย้ายองค์ประกอบบนหน้าจอ | ค้นพบว่าองค์ประกอบสามารถเคลื่อนไหวได้อย่างไรโดยใช้พิกัด Cartesian และ Canvas API | [การเคลื่อนย้ายองค์ประกอบ](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Space Game](./6-space-game/solution/README.md) | การตรวจจับการชนกัน | ทำให้องค์ประกอบชนกันและตอบสนองต่อกันโดยใช้การกดปุ่มและให้ฟังก์ชัน cooldown เพื่อให้เกมมีประสิทธิภาพ | [การตรวจจับการชนกัน](./6-space-game/4-collision-detection/README.md) | Chris | +| 07 | พื้นฐาน JS | อาร์เรย์และลูป | การทำงานกับข้อมูลโดยใช้ arrays และ loops ใน JavaScript | [อาร์เรย์และลูป](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML ในการปฏิบัติ | สร้าง HTML เพื่อสร้าง terrarium ออนไลน์โดยเน้นการสร้างเลย์เอาต์ | [แนะนำ HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS ในการปฏิบัติ | สร้าง CSS เพื่อจัดแต่ง terrarium ออนไลน์โดยเน้นพื้นฐานของ CSS รวมถึงการทำให้หน้าเว็บตอบสนอง | [แนะนำ CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Closures และการจัดการ DOM | สร้าง JavaScript เพื่อทำให้ terrarium ทำงานเป็นอินเทอร์เฟซลากและวาง โดยเน้น closures และการจัดการ DOM | [JavaScript Closures และการจัดการ DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [Typing Game](./4-typing-game/solution/README.md) | สร้างเกมพิมพ์ | เรียนรู้วิธีใช้เหตุการณ์คีย์บอร์ดเพื่อขับเคลื่อนตรรกะของแอป JavaScript ของคุณ | [การเขียนโปรแกรมแบบอิงเหตุการณ์](./4-typing-game/typing-game/README.md) | Christopher | +| 12 | [ส่วนขยายเบราว์เซอร์สีเขียว](./5-browser-extension/solution/README.md) | การทำงานกับเบราว์เซอร์ | เรียนรู้วิธีที่เบราว์เซอร์ทำงาน ประวัติของมัน และวิธีเริ่มต้นสร้างส่วนขยายเบราว์เซอร์ | [เกี่ยวกับเบราว์เซอร์](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [ส่วนขยายเบราว์เซอร์สีเขียว](./5-browser-extension/solution/README.md) | สร้างฟอร์ม เรียก API และเก็บตัวแปรใน local storage | สร้างองค์ประกอบ JavaScript ของส่วนขยายเบราว์เซอร์ของคุณเพื่อเรียก API โดยใช้ตัวแปรที่เก็บไว้ใน local storage | [APIs, ฟอร์ม และการเก็บข้อมูลในเครื่อง](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [ส่วนขยายเบราว์เซอร์สีเขียว](./5-browser-extension/solution/README.md) | กระบวนการเบื้องหลังในเบราว์เซอร์, ประสิทธิภาพเว็บ | ใช้กระบวนการเบื้องหลังของเบราว์เซอร์เพื่อจัดการไอคอนของส่วนขยาย; เรียนรู้เกี่ยวกับประสิทธิภาพเว็บและการปรับปรุงบางอย่างที่ทำได้ | [งานเบื้องหลังและประสิทธิภาพ](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Space Game](./6-space-game/solution/README.md) | การพัฒนาเกมขั้นสูงด้วย JavaScript | เรียนรู้เกี่ยวกับการสืบทอดโดยใช้ทั้งคลาสและการประกอบรวมถึงรูปแบบ Pub/Sub เพื่อเตรียมตัวสำหรับการสร้างเกม | [แนะนำการพัฒนาเกมขั้นสูง](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Space Game](./6-space-game/solution/README.md) | การวาดลงในแคนวาส | เรียนรู้เกี่ยวกับ Canvas API ที่ใช้ในการวาดองค์ประกอบลงบนหน้าจอ | [การวาดบนแคนวาส](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Space Game](./6-space-game/solution/README.md) | การเคลื่อนย้ายองค์ประกอบบนหน้าจอ | ค้นพบวิธีที่องค์ประกอบสามารถเคลื่อนที่โดยใช้พิกัดคาร์ทีเซียนและ Canvas API | [การเคลื่อนย้ายองค์ประกอบ](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Space Game](./6-space-game/solution/README.md) | การตรวจจับการชน | ทำให้องค์ประกอบชนกันและตอบสนองต่อกันโดยใช้ keypress พร้อมทั้งเพิ่มฟังก์ชัน cooldown เพื่อให้แน่ใจว่าเกมทำงานได้ราบรื่น | [การตรวจจับการชน](./6-space-game/4-collision-detection/README.md) | Chris | | 19 | [Space Game](./6-space-game/solution/README.md) | การเก็บคะแนน | ทำการคำนวณทางคณิตศาสตร์ตามสถานะและประสิทธิภาพของเกม | [การเก็บคะแนน](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Space Game](./6-space-game/solution/README.md) | การสิ้นสุดและเริ่มเกมใหม่ | เรียนรู้เกี่ยวกับการสิ้นสุดและเริ่มเกมใหม่ รวมถึงการล้างข้อมูลและรีเซ็ตค่าตัวแปร | [เงื่อนไขการสิ้นสุด](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [Banking App](./7-bank-project/solution/README.md) | เทมเพลต HTML และเส้นทางในเว็บแอป | เรียนรู้วิธีสร้างโครงสร้างของเว็บไซต์หลายหน้าโดยใช้ routing และเทมเพลต HTML | [เทมเพลต HTML และเส้นทาง](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [Banking App](./7-bank-project/solution/README.md) | สร้างฟอร์มเข้าสู่ระบบและลงทะเบียน | เรียนรู้เกี่ยวกับการสร้างฟอร์มและการจัดการกระบวนการตรวจสอบ | [ฟอร์ม](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [Banking App](./7-bank-project/solution/README.md) | วิธีการดึงและใช้ข้อมูล | วิธีการที่ข้อมูลไหลเข้าและออกจากแอปของคุณ วิธีดึงข้อมูล จัดเก็บ และลบข้อมูล | [ข้อมูล](./7-bank-project/3-data/README.md) | Yohan | -| 24 | [Banking App](./7-bank-project/solution/README.md) | แนวคิดการจัดการสถานะ | เรียนรู้ว่าแอปของคุณเก็บสถานะอย่างไรและวิธีจัดการสถานะนั้นด้วยโปรแกรม | [การจัดการสถานะ](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [Browser/VScode Code](../../8-code-editor) | การทำงานกับ VScode | เรียนรู้วิธีใช้โปรแกรมแก้ไขโค้ด| [ใช้โปรแกรมแก้ไขโค้ด VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | -| 26 | [AI Assistants](./9-chat-project/README.md) | การทำงานกับ AI | เรียนรู้วิธีสร้างผู้ช่วย AI ของคุณเอง | [โครงการผู้ช่วย AI](./9-chat-project/README.md) | Chris | - -## 🏫 หลักการสอน - -หลักสูตรของเราออกแบบโดยยึดหลักการสอนสำคัญสองประการ: -* การเรียนรู้แบบเน้นโครงการ +| 20 | [Space Game](./6-space-game/solution/README.md) | การจบและรีสตาร์ทเกม | เรียนรู้เกี่ยวกับการจบและรีสตาร์ทเกม รวมถึงการล้างทรัพยากรและรีเซ็ตค่าตัวแปร | [เงื่อนไขการจบ](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [แอปธนาคาร](./7-bank-project/solution/README.md) | เทมเพลต HTML และเส้นทางในเว็บแอป | เรียนรู้วิธีสร้างโครงสร้างเว็บไซต์หลายหน้าด้วยการใช้ routing และเทมเพลต HTML | [เทมเพลต HTML และเส้นทาง](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [แอปธนาคาร](./7-bank-project/solution/README.md) | สร้างฟอร์มล็อกอินและลงทะเบียน | เรียนรู้เกี่ยวกับการสร้างฟอร์มและจัดการการตรวจสอบความถูกต้อง | [ฟอร์ม](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [แอปธนาคาร](./7-bank-project/solution/README.md) | วิธีการดึงและใช้ข้อมูล | วิธีการไหลของข้อมูลเข้าและออกจากแอปของคุณ วิธีการดึงข้อมูล เก็บ และกำจัด | [ข้อมูล](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [แอปธนาคาร](./7-bank-project/solution/README.md) | แนวคิดการจัดการสถานะ | เรียนรู้ว่าแอปของคุณเก็บสถานะอย่างไรและจัดการมันอย่างไรในทางโปรแกรม | [การจัดการสถานะ](./7-bank-project/4-state-management/README.md) | Yohan | +| 25 | [โค้ดเบราว์เซอร์/VScode](../../8-code-editor) | การทำงานกับ VScode | เรียนรู้วิธีใช้ตัวแก้ไขโค้ด| [การใช้ตัวแก้ไขโค้ด VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| 26 | [ผู้ช่วย AI](./9-chat-project/README.md) | การทำงานกับ AI | เรียนรู้วิธีสร้างผู้ช่วย AI ของคุณเอง | [โครงงานผู้ช่วย AI](./9-chat-project/README.md) | Chris | + +## 🏫 จิตวิทยาการสอน + +หลักสูตรของเราออกแบบด้วยหลักการทางจิตวิทยาการสอนสองประการสำคัญ: +* การเรียนรู้ผ่านโครงงาน * แบบทดสอบบ่อยครั้ง -โปรแกรมนี้สอนพื้นฐานของ JavaScript, HTML และ CSS รวมถึงเครื่องมือและเทคนิคล่าสุดที่นักพัฒนาเว็บในปัจจุบันใช้ นักเรียนจะมีโอกาสพัฒนาประสบการณ์จริงโดยการสร้างเกมพิมพ์, terrarium เสมือน, ส่วนขยายเบราว์เซอร์ที่เป็นมิตรต่อสิ่งแวดล้อม, เกมสไตล์ space-invader และแอปธนาคารสำหรับธุรกิจ เมื่อจบหลักสูตรนี้ นักเรียนจะมีความเข้าใจที่มั่นคงเกี่ยวกับการพัฒนาเว็บ +โปรแกรมสอนพื้นฐานของ JavaScript, HTML และ CSS รวมถึงเครื่องมือและเทคนิคล่าสุดที่นักพัฒนาเว็บในปัจจุบันใช้ นักเรียนจะมีโอกาสพัฒนาประสบการณ์จริงโดยการสร้างเกมพิมพ์, terrarium เสมือน, ส่วนขยายเบราว์เซอร์ที่เป็นมิตรต่อสิ่งแวดล้อม, เกมสไตล์ space invader และแอปธนาคารสำหรับธุรกิจ เมื่อจบชุดบทเรียนนี้ นักเรียนจะได้รับความเข้าใจที่แข็งแกร่งเกี่ยวกับการพัฒนาเว็บ -> 🎓 คุณสามารถเรียนบทเรียนแรกๆ ในหลักสูตรนี้ได้ใน [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) บน Microsoft Learn! +> 🎓 คุณสามารถเรียนบทเรียนแรกๆ ในหลักสูตรนี้เป็น [เส้นทางการเรียนรู้](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) บน Microsoft Learn! -โดยการทำให้เนื้อหาสอดคล้องกับโครงการ กระบวนการเรียนรู้จะน่าสนใจยิ่งขึ้นสำหรับนักเรียนและการจดจำแนวคิดจะเพิ่มขึ้น เราได้เขียนบทเรียนเริ่มต้นหลายบทในพื้นฐาน JavaScript เพื่อแนะนำแนวคิด พร้อมกับวิดีโอจาก "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" คอลเลกชันวิดีโอสอน ซึ่งผู้เขียนบางคนมีส่วนร่วมในหลักสูตรนี้ +โดยการทำให้เนื้อหาสอดคล้องกับโครงงาน กระบวนการจะน่าสนใจขึ้นสำหรับนักเรียนและช่วยเพิ่มการจดจำแนวคิด เรายังได้เขียนบทเรียนสำหรับผู้เริ่มต้นหลายบทเกี่ยวกับพื้นฐานของ JavaScript เพื่อแนะนำแนวคิดคู่กับวิดีโอจากชุดวิดีโอ "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" ซึ่งมีผู้เขียนบางส่วนมีส่วนร่วมกับหลักสูตรนี้ด้วย -นอกจากนี้ แบบทดสอบที่มีความเสี่ยงต่ำก่อนเรียนจะตั้งเจตนาของนักเรียนในการเรียนรู้หัวข้อ ในขณะที่แบบทดสอบที่สองหลังเรียนจะช่วยเพิ่มการจดจำ หลักสูตรนี้ออกแบบมาให้ยืดหยุ่นและสนุกสนาน และสามารถเรียนได้ทั้งหมดหรือบางส่วน โครงการเริ่มต้นเล็กๆ และซับซ้อนขึ้นเรื่อยๆ จนถึงสิ้นสุดรอบ 12 สัปดาห์ +นอกจากนี้ แบบทดสอบที่ความเสี่ยงต่ำก่อนชั้นเรียนจะตั้งเจตนารมณ์ของนักเรียนเพื่อการเรียนรู้หัวข้อหนึ่ง ขณะที่แบบทดสอบที่สองหลังชั้นเรียนช่วยเพิ่มการจดจำหลักสูตรนี้ได้รับการออกแบบให้ยืดหยุ่นและสนุกสนาน และสามารถเรียนแบบเต็มชุดหรือแยกชิ้นส่วนได้ โครงงานเริ่มต้นเล็กและซับซ้อนขึ้นเรื่อยๆ ภายในรอบ 12 สัปดาห์ -แม้ว่าเราจะหลีกเลี่ยงการแนะนำเฟรมเวิร์ก JavaScript เพื่อมุ่งเน้นที่ทักษะพื้นฐานที่จำเป็นในฐานะนักพัฒนาเว็บก่อนที่จะนำเฟรมเวิร์กมาใช้ ขั้นตอนต่อไปที่ดีหลังจากจบหลักสูตรนี้คือการเรียนรู้เกี่ยวกับ Node.js ผ่านคอลเลกชันวิดีโออีกชุดหนึ่ง: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)" +แม้ว่าเราจะจงใจหลีกเลี่ยงการแนะนำ JavaScript frameworks เพื่อมุ่งเน้นทักษะพื้นฐานที่จำเป็นสำหรับนักพัฒนาเว็บก่อนจะใช้ framework ขั้นตอนถัดไปที่ดีสำหรับการเรียนหลักสูตรนี้คือการเรียนรู้เกี่ยวกับ Node.js ผ่านชุดวิดีโออื่น: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". -> เยี่ยมชม [Code of Conduct](CODE_OF_CONDUCT.md) และ [Contributing](CONTRIBUTING.md) ของเรา เรายินดีรับฟังความคิดเห็นที่สร้างสรรค์ของคุณ! +> เยี่ยมชม [จรรยาบรรณ](CODE_OF_CONDUCT.md) และ [การมีส่วนร่วม](CONTRIBUTING.md) ของเรา เรายินดีรับฟังความคิดเห็นสร้างสรรค์ของคุณ! ## 🧭 การเข้าถึงแบบออฟไลน์ -คุณสามารถรันเอกสารนี้แบบออฟไลน์โดยใช้ [Docsify](https://docsify.js.org/#/). Fork repo นี้, [ติดตั้ง Docsify](https://docsify.js.org/#/quickstart) บนเครื่องของคุณ และในโฟลเดอร์ root ของ repo นี้ พิมพ์ `docsify serve`. เว็บไซต์จะถูกให้บริการบนพอร์ต 3000 บน localhost ของคุณ: `localhost:3000`. +คุณสามารถรันเอกสารนี้แบบออฟไลน์โดยใช้ [Docsify](https://docsify.js.org/#/). Fork รีโปนี้, [ติดตั้ง Docsify](https://docsify.js.org/#/quickstart) บนเครื่องของคุณ จากนั้นในโฟลเดอร์รากของรีโปนี้ พิมพ์ `docsify serve`. เว็บไซต์จะให้บริการบนพอร์ต 3000 บน localhost ของคุณ: `localhost:3000`. ## 📘 PDF PDF ของบทเรียนทั้งหมดสามารถพบได้ [ที่นี่](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). -## 🎒 หลักสูตรอื่นๆ +## 🎒 หลักสูตรอื่น ๆ +ทีมของเราผลิตคอร์สอื่นๆ ด้วย! ลองดู: -ทีมของเราผลิตหลักสูตรอื่นๆ! ลองดู: + +### LangChain +[![LangChain4j for Beginners](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners) +[![LangChain.js for Beginners](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin) + +--- ### Azure / Edge / MCP / Agents [![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Edge AI สำหรับผู้เริ่มต้น](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![MCP สำหรับผู้เริ่มต้น](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) -[![AI Agents สำหรับผู้เริ่มต้น](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) +[![AI Agents for Beginners](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) --- - -### ซีรีส์ Generative AI -[![Generative AI สำหรับผู้เริ่มต้น](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) -[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) -[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) + +### Generative AI Series +[![Generative AI for Beginners](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) +[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) +[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) --- - -### การเรียนรู้หลัก -[![ML สำหรับผู้เริ่มต้น](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) -[![Data Science สำหรับผู้เริ่มต้น](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) -[![AI สำหรับผู้เริ่มต้น](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) -[![Cybersecurity สำหรับผู้เริ่มต้น](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) -[![Web Dev สำหรับผู้เริ่มต้น](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) -[![IoT สำหรับผู้เริ่มต้น](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) -[![XR Development สำหรับผู้เริ่มต้น](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) + +### Core Learning +[![ML for Beginners](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) +[![Data Science for Beginners](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) +[![AI for Beginners](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) +[![Cybersecurity for Beginners](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) +[![Web Dev for Beginners](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) +[![IoT for Beginners](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) +[![XR Development for Beginners](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) --- + +### Copilot Series +[![Copilot for AI Paired Programming](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) +[![Copilot for C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) +[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) + -### ซีรีส์ Copilot -[![Copilot สำหรับการเขียนโปรแกรมคู่ด้วย AI](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) -[![Copilot สำหรับ C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) -[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) - -## ขอความช่วยเหลือ +## Getting Help -หากคุณติดปัญหาหรือมีคำถามเกี่ยวกับการสร้างแอป AI เข้าร่วม: +ถ้าคุณติดขัดหรือต้องการคำถามเกี่ยวกับการสร้างแอป AI เข้าร่วมกับผู้เรียนและนักพัฒนาที่มีประสบการณ์ในการพูดคุยเรื่อง MCP นี่คือชุมชนที่สนับสนุนซึ่งยินดีรับคำถามและแบ่งปันความรู้กันอย่างอิสระ -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -หากคุณมีข้อเสนอแนะเกี่ยวกับผลิตภัณฑ์หรือพบข้อผิดพลาดขณะสร้างแอป โปรดเยี่ยมชม: +ถ้าคุณมีความคิดเห็นเกี่ยวกับผลิตภัณฑ์หรือต้องการรายงานข้อผิดพลาดระหว่างการสร้าง โปรดไปที่: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) -## ใบอนุญาต +## License -ที่เก็บนี้ได้รับอนุญาตภายใต้ใบอนุญาต MIT ดูไฟล์ [LICENSE](../../LICENSE) สำหรับข้อมูลเพิ่มเติม +ที่เก็บนี้ได้รับอนุญาตภายใต้สัญญาอนุญาต MIT ดูรายละเอียดเพิ่มเติมได้ที่ไฟล์ [LICENSE](../../LICENSE) --- + **ข้อจำกัดความรับผิดชอบ**: -เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI [Co-op Translator](https://github.com/Azure/co-op-translator) แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลโดยอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้ \ No newline at end of file +เอกสารฉบับนี้ได้รับการแปลโดยใช้บริการแปลภาษาด้วย AI [Co-op Translator](https://github.com/Azure/co-op-translator) แม้ว่าเราจะพยายามให้ความถูกต้องสูงสุด แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ แนะนำให้ใช้บริการแปลโดยผู้เชี่ยวชาญมนุษย์อย่างมืออาชีพ เราจะไม่รับผิดชอบในความผิดพลาดหรือการตีความที่ผิดพลาดใด ๆ ที่เกิดจากการใช้การแปลนี้ + \ No newline at end of file diff --git a/translations/th/for-teachers.md b/translations/th/for-teachers.md index 709e49508..f9dd20390 100644 --- a/translations/th/for-teachers.md +++ b/translations/th/for-teachers.md @@ -42,10 +42,10 @@ CO_OP_TRANSLATOR_METADATA: - Moodle Cloud มีการรองรับ Common Cartridge ที่จำกัด ควรใช้ไฟล์ Moodle ด้านบน ซึ่งสามารถอัปโหลดเข้า Canvas ได้เช่นกัน - หลังการนำเข้า ให้ตรวจสอบโมดูล วันที่กำหนดส่ง และการตั้งค่าแบบทดสอบให้ตรงกับตารางเรียนของคุณ -![Moodle](../../translated_images/moodle.94eb93d714a50cb2c97435b408017dee224348b61bc86203ffd43a4f4e57b95f.th.png) +![Moodle](../../translated_images/moodle.94eb93d714a50cb2.th.png) > หลักสูตรในห้องเรียน Moodle -![Canvas](../../translated_images/canvas.fbd605ff8e5b8aff567d398528ce113db304446b90b9cad55c654de3fdfcda34.th.png) +![Canvas](../../translated_images/canvas.fbd605ff8e5b8aff.th.png) > หลักสูตรใน Canvas ### การใช้งาน repo โดยตรง (ไม่ใช้ Classroom)