UX UI Design เบื้องต้น Section 0 “โลกของ UX UI”

Blog_ux-ui-01

หากเปรียบเทียบการออกแบบ UX UI เป็นประตู ดังนั้น Designer คือผู้ที่ต้องแก้ไขปัญหา เพื่อให้ตอบโจทย์ผู้ใช้ ไม่ใช่คำนึงแค่ความสวยงามเท่านั้น โดยใน Sec.0 นี้ เราจะมองภาพง่ายๆแบบใกล้ตัว เช่น การออกแบบประตู ซึ่งการออกแบบ เราจะมีพื้นฐานด้วยกัน 4 อย่าง ดังนี้


พื้นฐานการออกแบบมี 4 อย่าง คือ

  • การออกแบบหน้าตา (User Interface Design) :: หน้าตาของประตู ส่วนใหญ่จะเป็นรูปสี่เหลี่ยม เพื่อง่ายต่อการใช้งาน ง่ายต่อการติดตั้ง แต่บางกรณีก็จะมีรูปทรงต่างๆ เช่น ทรงกลม แต่ก็ต้องยอมรับว่า รูปทรงง่ายๆอย่างสี่เหลี่ยม เป็นรูปทรงที่นิยมใช้กันมากที่สุด

ดังนั้นการออกแบบหน้าตาก็คือ องค์ประกอบ, ขนาด, รูปแบบ และ สิ่งที่ผู้ใช้สัมผัส

  • การออกแบบการสื่อสาร (Information Design) :: สีของประตู ถ้าอยู่ในบ้านจะให้ความรู้สึกสบาย โดยส่วนใหญ่มักใช้สีอ่อนๆ หรือสีธรรมชาติ และหากเป็นประตูที่มีความหมายเฉพาะเจาะจง ก็จะใช้สีสัน ข้อความ หรือรูปภาพติดที่ประตู เพื่อให้เห็นได้อย่างง่ายดาย เช่น ประตูหนีไฟที่มีสีแดง

ดังนั้นการออกแบบการสื่อสารก็คือ สี, ข้อความ และ สิ่งที่ต้องการสื่อกับผู้ใช้

  • การออกแบบการตอบสนอง (Interaction Design) :: การออกแบบว่าการหมุนลูกบิดเพื่อเปิดประตู หรือการผลักประตูเพื่อให้เปิดออก และดันกลับเข้ามาเพื่อให้ประตูปิด

ดังนั้นการออกแบบการตอบสนองก็คือ ผู้ใช้งานต้องสามารถใช้งานตามความเข้าใจได้อย่างถูกต้อง

  • การออกแบบประสบการณ์ (User Experience Design) :: เป็นสิ่งที่ไม่มีรูปร่าง เป็นเรื่องของความรู้สึก ความพอใจและการเข้าใจ

โดยทั้งหมดนี้จะต้องสัมพันกันทั้งหมด เมื่อต้องการออกแบบหน้าตา เราก็จำเป็นจะต้องรู้และเข้าใจ การออกแบบการสื่อสาร และเมื่อเรา ต้องการออกแบบการสื่อสาร เราต้องคำนึงถึง การออกแบบการตอบสนอง และสุดท้ายทั้งหมดจะเข้าไปเกี่ยวพันกับ การออกแบบประสบการณ์


การออกแบบ UX UI สำหรับเครื่องคอมพิวเตอร์

ออกแบบมาจากเทคโนโลยีเก่าๆ เช่น หน้าจอคอมพิวเตอร์ ถูกออกแบบดัดแปลงมาจากหน้าจอทีวี และแป้นพิมพ์ ก็ถูกออกแบบมาจากแป้นพิมพ์ดีด ซึ่งที่กล่าวมานี้คือการลดการเรียนรู้ของผู้ใช้งาน ไม่ต้องทำความเข้าใจใหม่ ทำให้รู้สึกง่าย และรับรู้การใช้งานได้อย่างรวดเร็ว และคอมพิวเตอร์ จะประกอบไปด้วยเทคโนโลยีด้วยกัน 2 แบบ ดังนี้

  • เทคโนโลยี AI :: ตัวอย่างเช่น Siri หรือ Google Home เป็นต้น ซึ่งเทคโนโลยีนี้ จะใช้เสียงเป็นตัวประสาน สามารถสั่งงานได้ด้วยเสียง หรือเรียกว่า Voice User Interface

  • เทคโนโลยี VR/AR :: โดย VR จะเน้นภาพเสมือนจริง แต่ไม่ใช่ของจริง สื่อสารด้วยภาพเสมือนจริงแบบ 3มิติ โดยมีอุปกรณ์เสริม สำหรับสร้างประสบการณ์เพิ่ม และ AR คือการเอาสิ่งที่ถูกสร้างขึ้นในโลกของดิจิตอลมาซ้อนทับกับโลกแห่งความจริง เพื่อให้ภาพปรากฎขึ้น เสมือนว่าสิ่งๆนั้นเกิดขึ้นจริง


การออกแบบ UX UI สำหรับSmart Phone

Smart Phone หรืออีกมุมหนึ่งก็คือ คอมพิวเตอร์ส่วนตัวอย่างแท้จริง ถูกออกแบบให้พกพาได้สะดวก เรียนรู้ได้ง่าย เปลี่ยนแปลงต่อสถานการณ์ได้ง่าย ตอบสนองรวดเร็ว และสร้างประสบการณ์ใหม่ๆให้กับผู้ใช้ โดยการออกแบบของSmart Phoneนั้น มีหลักการดังนี้

  • การออกแบบหน้าตา (User Interface Design) :: รูปร่างและขนาดที่จับถนัดมือ รองรับการใช้งานแบบมือเดียว

  • การออกแบบการสื่อสาร (Information Design) :: มีปุ่มน้อย เน้นการใช้ระบบสัมผัส

  • การออกแบบการตอบสนอง (Interaction Design) :: ออกแบบอย่างหลากหลาย มีการตอบสนองหลากหลาย เช่น การสั่นหรือใช้เสียงเพื่อแจ้งเตือน และการปลดล็อกด้วยการสแกนลายนิ้วมือ หรือใบหน้า เป็นต้น

  • การออกแบบประสบการณ์ (User Experience Design) :: Smart Phoneถือเป็นประสบการณ์ใหม่ และแตกต่างจากคอมพิวเตอร์ได้เป็นอย่างดี สามารถพกพาไปไหนก็ได้ ง่าย และ สะดวกสบาย


การออกแบบ UX UI สำหรับโปรแกรมคอมพิวเตอร์

หลักการออกแบบของMobile App / Websiteนั้น มีหลักการดังนี้

  • การออกแบบหน้าตา (User Interface Design) :: ต้องคำนึงถึงขนาดของหน้าจอแสดงผล ซึ่งมีความหลากหลาย ต้องให้ความสำคัญของการจัดวาง รูปทรง โครงสร้าง สี ซึ่งจะส่งผลต่อการใช้งาน เช่น ส่วนใดไว้ดู ส่วนใดไว้พิมพ์ หรือส่วนใดที่กดได้

  • การออกแบบการสื่อสาร (Information Design) :: ต้องคำนึงถึงการใช้ภาพ การใช้ข้อความ และการใช้คำเพื่อการสื่อสาร ต้องให้ผู้ใช้เข้าใจว่าต้องทำอะไร

  • การออกแบบการตอบสนอง (Interaction Design) :: ต้องคำนึงการตอบสนองที่ถูกต้อง ให้ผู้ใช้เข้าใจว่าปุ่มนี้ใช้สำหรับทำอะไร และผลลัพธ์ที่เกิดขึ้นก็ต้องถูกต้อง

  • การออกแบบประสบการณ์ (User Experience Design) :: ต้องคำนึงถึงประสบการณ์ทั้งความรู้สึก ความคิด การตัดสินใจ การลงมือทำ เช่น พอเข้ามาแล้ว ผู้ใช้สามารถรู้หรือไม่ว่าแอพนี้ใช้ทำอะไร เพื่ออะไร ระหว่างการใช้งานยุ่งยากหรือไม่ ไม่ใช่แค่สวยงามหรือเข้าใจง่าย แต่ต้องได้คุณค่า และผลลัพธ์ที่ดี


ประโยชน์ของการออกแบบ UX UI ที่ดี

ประโยชน์ของการออกแบบ UX UI ที่ดี จะแบ่งออกเป็น 2 อย่างคือ

  • ถูกต้อง :: โดยจะดูที่การใช้งาน ว่าง่ายหรือไม่ สะดวกหรือไม่ ประสบความสำเร็จหรือไม่ ถึงขั้นตอนไหนแล้ว หรือถ้ากรณีที่มีปัญหา จะแก้ไขอย่างไร เมื่อใช้งานเสร็จผู้ใช้ได้ผลลัพธ์ตามที่ต้องการหรือไม่

  • ถูกใจ :: โดยจะดูความพึงพอใจ ความสุขของผู้ใช้ ประสบกาณ์ที่ได้ เมื่อใช้แล้วอยากกลับมาใช้ซ้ำหรือไม่ สร้างความกังวลหรือเกิดความกังวลกับผู้ใช้มากน้อยแค่ไหน

สรุปสั้นๆคือ ประโยชน์ของ UX UI ที่ดีคือ

  • สร้างกระบวนการการทำงานที่ถูกต้อง เพื่อให้เกิดผลลัพธ์ที่ดี
  • สร้างความถูกใจเพื่อให้เกิดความจดจำและอยากกลับไปใช้งานซ้ำ

โทษของการออกแบบ UX UI ที่ไม่ดี

  • เสียเวลา :: ใช้เวลามากในการเรียนรู้ หรือเข้าใจกับสิ่งที่ออกแบบ

  • เสียแรง / เสียกำลังสมอง :: ถ้าการออกแบบไม่ดีจะทำให้ ผู้ใช้งานต้องคิดซับซ้อน ต้องคาดเดา วิเคราะห์มากขึ้น และสูญเสียพลังสมอง ซึ่งจะส่งผลต่ออารมณ์ และความรู้สึก ทำให้รู้สึกไม่ดี และไม่อยากกลับมาใช้ซ้ำ

  • เสียโอกาสและทรัพย์สิน :: การสื่อสารที่ผิดหรือไม่ชัดเจน จะทำให้เกิดความผิดพลาด รู้สึกไม่ปลอดภัย และผู้ใช้จะไม่กลับมาใช้ซ้ำอีก

  • เสียความรู้สึก :: เมื่อผู้ใช้รู้สึกเสียความรู้สึกอย่างต่อเนื่อง จะทำให้ผู้ใช้ตัดสินใจไม่ใช้งานแอพหรือเว็บไซต์ของเรา


ทำไมต้องเรียนรู้การออกแบบ UX UI Design

เพื่อการออกแบบที่ดี และประสบความสำเร็จ สร้างประสบการณ์ให้กับผู้ใช้ได้อย่างดี ทันสมัย และยกระดับงานดีไซน์เพื่อให้ผู้ใช้ประทับใจ และกลับมาใช้ซ้ำในแอพหรือเว็บไซต์ของเรา


และตอนนี้เราก็ได้รู้เรื่องราวคร่าวๆของ UX UI ไปบ้างแล้ว และในSectionต่อไป เราจะมาเริ่มเรียนรู้ UX/UI Design แบบจริงจังกันค่ะ!

Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on pinterest
Pinterest

Recent Post

ปี2020, จริงๆ เราไม่ต้องใช้ jQuery แล้วก็ได้นะ

jQuery เป็นหนึ่งใน JavaScript Library ที่โด่งดังมาก (เมื่อ 10 ปีที่แล้ว) เรียกว่าในยุคนั้นแทบจะทุกเว็บจะต้องมีการติดตั้ง jQuery เอาไว้อย่างแน่นอน แต่เมื่อยุคสมัยเปลี่ยนไป เบราเซอร์ใหม่ๆ ไม่มีปัญหาการรัน JavaScript ตั้งแต่ ES6 ขึ้นไปแล้ว การใช้งาน jQuery จึงลดน้อยลงเรื่อยๆ แต่ก็มีบางโปรเจคเหมือนกัน ที่เราต้องเข้าไปแก้โค้ดเก่าๆ ซึ่งเขียนด้วย jQuery เอาไว้ ในบทความนี้จะมาเปรียบเทียบว่าทุกวันนี้เราสามารถแปลง jQuery ให้กลายเป็น Vanilla

Vue3 มีอะไรเปลี่ยนแปลงไปบ้าง

Vue 3 เพิ่งเปิดตัวมาเมื่อเดือนที่แล้ว ซึ่งมาพร้อมกับฟีเจอร์ใหม่ๆ และสิ่งที่เปลี่ยนแปลงไป เรามาดูกันดีกว่า เขียนใหม่ด้วย TypeScript ภาษา JavaScript นั้นไม่มี Type ของตัวแปรทำให้เวลาเขียนโปรแกรมมีโอกาสเกิดข้อผิลพลาดเยอะ ดังนั้นการเขียนงานโปรเจคใหญ่ๆ คนเลยนิยมเปลี่ยนไปใช้ TypeScript แทน (ถ้ายังไม่รู้จัก TypeScript อ่านต่อได้ที่นี่) สำหรับ Vue 3.0 นี้ก็เป็นการเขียนใหม่ด้วย TypeScript แทน แต่เวลาเราเอามาใช้งาน เราสามารถเลือกได้ว่าจะใช้แบบ JavaScript ตามปกติ

สอนใช้ TypeScript ในโปรเจค Node.js + Express

Node.js กับ TypeScript Node.js เป็นหนึ่งในเฟรมเวิร์คยอดนิยมสำหรับเขียนโปรแกรมฝั่ง Backend แต่เพราะมันสร้างมาตั้งแต่ปี 2009 ยุคที่ JavaScript ยังเป็นเวอร์ชัน ES5 อยู่เลย โดยดีฟอลต์แล้ว Node.js เลยไม่ซัพพอร์ท TypeScript เลย ไม่เหมือนกับ Deno ที่เพิ่งสร้างขึ้นมาโดยซัพพอร์ท TypeScript เป็นค่า default ตั้งแต่แรก เพื่อชีวิตที่ดีกว่า มาเซ็ตโปรเจค Node.js + Express

UX UI Design เบื้องต้น Section 1 “พื้นฐาน UX UI”

จากที่เราได้รู้จักโลกของ UX UI ไปใน Section ที่แล้ว ใน Section นี้ เราจะมาเข้าใจให้ลึกขึ้นอีกนิด สำหรับ UX UI Design โดยมีคำกล่าวสั้นๆว่า UX คือ นามธรรม UI คือ รูปธรรม และในพื้นฐานแรก ที่เราจะมาเริ่มเรียนรู้คือ UI Design เคลียร์กันชัดๆ UI Design คืออะไร? นิยามของ

ทำยังไง? อยากให้ JavaScript เรียกฟังก์ชันในภาษา PHP เขียนโค้ดยังไงนะ

หนึ่งในคำถามที่เว็บโปรแกรมเมอร์มือใหม่ถามกันเยอะมากจนน่าจัดเก็บไว้เป็น FAQ เลยก็คือ "จะทำยังไงให้เราเรียกใช้ฟังก์ชันภาษา PHP จากสคริป JavaScript ได้" เช่นแบบนี้... <button onclick="<?php functionInPhp1(); ?>"> คลิกฉันสิ! </button> หรือแบบนี้... function functionInJs(){ let x = <?php functionInPhp2(); ?> } คำตอบคือ ด้วยการทำงานของเว็บที่ทำงานบนโปรโตคอล http นั้น...มันทำไม่ได้!! (แต่มีวิธีแก้

[How To] การติดตั้ง Google Maps for Flutter เบื้องต้น

วันนี้ผมจะมาแนะนำและวิธีการใช้งานเบื้องต้นของ plugin ที่น่าสนใจตัวหนึ่งที่มีชื่อว่า "Google Maps for Flutter" โดย plugin ตัวนี้จะให้ Google Maps ที่เป็น Widget มาให้เราได้เปิดใช้งานแผนที่ของกูเกิ้ล ขั้นตอนการติดตั้ง อันดับแรก เราต้องทำการขอ API Key ที่ลิ้งค์ https://cloud.google.com/maps-platform/ เมื่อเข้ามาหน้าเว็บไซต์แล้วให้เข้าไปที่ Console (ตรงขวามุมบนของหน้าจอ) สร้าง Project ของเราขึ้นมาก่อน เมื่อทำการสร้างเสร็จแล้วให้เปิดแท็บด้านขวามือ แล้วเลือกเมนูที่ชื่อว่า

UX UI Design เบื้องต้น Section 0 “โลกของ UX UI”

หากเปรียบเทียบการออกแบบ UX UI เป็นประตู ดังนั้น Designer คือผู้ที่ต้องแก้ไขปัญหา เพื่อให้ตอบโจทย์ผู้ใช้ ไม่ใช่คำนึงแค่ความสวยงามเท่านั้น โดยใน Sec.0 นี้ เราจะมองภาพง่ายๆแบบใกล้ตัว เช่น การออกแบบประตู ซึ่งการออกแบบ เราจะมีพื้นฐานด้วยกัน 4 อย่าง ดังนี้ พื้นฐานการออกแบบมี 4 อย่าง คือ การออกแบบหน้าตา (User Interface Design) :: หน้าตาของประตู

สอนวิธีเซ็ตโปรเจค TypeScript / มาใส่ไทป์ให้ JavaScript เพื่อลดความผิดพลาดในการเขียนโค้ดกันดีกว่า

ภาษา JavaScript นั้นเป็นภาษาที่เริ่มเขียนได้ไม่ยาก ยิ่งถ้าใครเขียนภาษาสาย Structure/OOP เช่น C/C++, C#, Java มาก่อน อาจจะชอบในความเป็น Dynamic Type เราสร้างตัวแปรแล้วเก็บค่าอะไรก็ได้ ทำให้มีความคล่องตัวในการเขียนมากๆ ก่อนที่พอเขียนไปเรื่อยๆ เราจะพบความแปลกของมัน ยิ่งเขียนไปนานๆ เราก็พบว่ามันเป็นภาษาที่ทำให้เกิดบั๊กได้ง่ายมาก และเป็นหนึ่งในภาษาที่น่าปวดหัวที่สุดที่คนโหวตๆ กันเลย ด้วยเหตุผลแรกคือการที่ตัวแปรไม่มี Type นั่นเอง (อีกเหตุผลหนึ่งคือส่วนใหญ่ของคนที่เปลี่ยนมาเขียน JavaScript เคยชินกับภาษาแนว OOP มาก่อน พอมาเขียนภาษาแนว

รู้จักกับ TypeScript – ประวัติของภาษาที่เติมไทป์ให้กับ JavaScript

ในบทความนี้จะเล่าถึงที่มาที่ไปของ TypeScript อย่างเดียวนะ ส่วนเรื่องสอนว่าใช้งานยังไงได้บ้าง จะเขียนอีกทีในบล็อกต่อๆ ไป สำหรับภาษาโปรแกรมทุกวันนี้ ถ้าแบ่งคร่าวๆ ด้วยชนิดของตัวแปร เราจะแบ่งได้ 2 อย่าง คือ Static Type: ต้องกำหนดชนิดตัวแปร เช่น int, string ตั้งแต่สร้างตัวแปร และ Dynamic Type ตัวแปรประเภทนี้ไม่ต้องบอกว่าเก็บค่าชนิดไหน เปลี่ยนไปได้เรื่อยๆ สำหรับภาษาแบบ Dynamic Type ที่ไม่ต้องกำหนดชนิดตัวแปรให้แน่นอน จะเซ็ตค่าเป็นอะไรก็ได้นั้นอาจจะทำให้เขียนง่าย

Async in Dart (5) รู้จักกับ FutureBuilder/StreamBuilder, ตัวช่วยสร้าง Async-Widget ใน Futter

เนื้อหาในบทนี้ เป็นคลาสเฉพาะที่มากับ Flutter Framework เท่านั้น .. ถ้าเขียน Dart ธรรมดาจะไม่มีให้ใช้นะ!! เอาจริงๆ 99% ของคนที่ศึกษาภาษา Dart ก็เพื่อเอาไปเขียนแอพ (หรือเว็บ/เด็กส์ท็อป) แบบ cross-platform ด้วยเฟรมเวิร์ก Flutter นั่นแหละ ตามความคิดของเรา จริงๆ Flutter น่าจะเลือกภาษา Kotlin มาใช้แทนมากกว่า แต่ก็มีเหตุผลหลายๆ อย่างนั่นแหละที่ทำให้ทำไม่ได้ สำหรับการเขียน Flutter

Dependency Injection กับ Service Locator ต่างกันยังไงนะ?

ในโลกของ OOP เรามักจะสร้างคลาสต่างๆ ที่มีการเรียกใช้กันต่อเป็นทอดๆ มากมาย เช่นโค้ดข้างล่างนี่ class Car { private Engine engine; public Car() { this.engine = new Engine(); } } Car car = new Car(); เราสร้างคลาส Car และ Engine

Async in Dart (4) ควบคุมข้อมูลในstreamอย่างเหนือชั้นด้วย StreamController

Async in Dart (4) ควบคุมข้อมูลในstreamอย่างเหนือชั้นด้วย StreamController ในบทที่แล้วเราสอนการสร้าง Stream แบบง่ายๆ ไปแล้ว แต่ในบางครั้งเราต้องการควบคุมข้อมูลใน Stream แบบคัสตอมมากๆ ซึ่งข้อมูลอาจจะเข้ามาจากหลายทางมากๆ การที่เรามีแค่ yield จากฟังก์ชันเดียวอาจจะไม่เพียงพอ ดังนั้นเลยเป็นที่มาของคลาสที่ชื่อว่า StreamController ซึ่งเป็นคลาสที่เอาไว้ควบคุม Stream อีกที StreamController การสร้าง Stream แบบธรรมดาก็จะเป็นประมาณนี้ Stream<int> getNumberStream() async* {