197

Frontend developer 2016 | cloudcourse.io

Embed Size (px)

Citation preview

Page 1: Frontend developer 2016 | cloudcourse.io
Page 2: Frontend developer 2016 | cloudcourse.io

f

Page 3: Frontend developer 2016 | cloudcourse.io
Page 4: Frontend developer 2016 | cloudcourse.io

ส ำรวจโดยกำรเลอก 30 เวบแรกทตด Google Rankค ำคนคอ Web Design Trends 2016

Page 5: Frontend developer 2016 | cloudcourse.io
Page 6: Frontend developer 2016 | cloudcourse.io

เปนแนวทเนนไปทำงสสนฉดฉำด กำรเลนกบตวอกษรตำง ๆไดอยำงหลำกหลำยท ำใหเวบดสนกสนำน

Page 7: Frontend developer 2016 | cloudcourse.io
Page 8: Frontend developer 2016 | cloudcourse.io
Page 9: Frontend developer 2016 | cloudcourse.io
Page 10: Frontend developer 2016 | cloudcourse.io
Page 11: Frontend developer 2016 | cloudcourse.io

เทรนกำรออกแบบทชวยสรำงปฎสมพนธระหวำงระบบและผใชงำน

Page 12: Frontend developer 2016 | cloudcourse.io

จดมงหมำยและสงทคำดหวง

Page 13: Frontend developer 2016 | cloudcourse.io

กำรด ำเนนกำรไปสผลลพธ

Page 14: Frontend developer 2016 | cloudcourse.io
Page 15: Frontend developer 2016 | cloudcourse.io
Page 16: Frontend developer 2016 | cloudcourse.io
Page 17: Frontend developer 2016 | cloudcourse.io
Page 18: Frontend developer 2016 | cloudcourse.io
Page 20: Frontend developer 2016 | cloudcourse.io

กำรออกแบบ Interaction ทด ตองสำมำรถตอบโจทยและบรหำรควำมคำดหวงของผใชใหได

Page 21: Frontend developer 2016 | cloudcourse.io

แบบจ ำลองของนอรแมน

Page 22: Frontend developer 2016 | cloudcourse.io

1. จดมงหมำย

2. เจตนำ หรอสงทตองกำรใหเปน

3. ระบขนตอนทกระท ำ

4. กำรด ำเนนกำร

5. รบรกำรตอบสนอง

6. กำรตควำม

7. สรปผล (บรรลจดมงหมำย)

7 ขนตอนการด าเนนการ

Page 23: Frontend developer 2016 | cloudcourse.io

จดมงหมาย

ผเขาชมตองการซอ Surface Pro 4 จงเขาไปหาขอมลทเวบไซต Microsoft และเลอกทหนา surfaceและ ผออกแบบตองการขายสนคาซงกคอ Surface Pro 4

Page 24: Frontend developer 2016 | cloudcourse.io

เจตนา หรอสงทตองการใหเปน

เจตนาหรอสงทตองการใหเปนกคอเมอมผเขามายงหนานตองการใหผเขาชมนนซอสนคาของตนปม “ซอวนน” จงเปนเจตนาหรอสงทตองการใหผใชกดในหนาน

Page 25: Frontend developer 2016 | cloudcourse.io

ระบขนตอนทกระท า

เมอผใชงานรแลววาถาตองการซอสนคาตวนเราจ าเปนตองกดปมดงกลาวโดยการกดคลกทปม “ซอวนน”

Page 26: Frontend developer 2016 | cloudcourse.io

การด าเนนการ

เมอผใชงานคลกทปมสฟาแลวกจะเขาสการด าเนนการคอเมอมการกดปมจะเกดการเปลยนหนาเวบเพจขน

Page 27: Frontend developer 2016 | cloudcourse.io

รบรการตอบสนอง

ผลลพธเมอกดปม ซอวนนกคอเปลยนมายงหนาส าหรบการสงซอนคอสงทผใชงานสามารถรบรไดในทนท

Page 28: Frontend developer 2016 | cloudcourse.io

การตความ

หลงจากเปลยนมายงหนานแลวสงตอมาคอการตความ จากภาพนผใชสามารถเขาใจไดทนทวาในภมภาคของตนนนมสถานทจ าหนายและสามารถสงซอออนไลนไดทนท

Page 29: Frontend developer 2016 | cloudcourse.io

สรปผล (บรรลจดมงหมาย)

ตอนนกมาถงขนตอนสดทายซงเปนจดมงหมายตงแตแรกกคอการเขามาสงซอ Surface Pro 4 แลวซงทง 6 ขนตอนทผานมากสามารถพาผใชงานเขามาถงหนานไดซงกคอผลลพธ

Page 30: Frontend developer 2016 | cloudcourse.io

Interaction Design ทด ตองสำมำรถตอบโจทยและบรหำรควำมคำดหวงของผใชงำนได

Page 31: Frontend developer 2016 | cloudcourse.io

a living moment in an otherwise still photograph.

Page 32: Frontend developer 2016 | cloudcourse.io

เทรนดภำพถำยทมชวต เปนกำรใชรปภำพแบบ “ซเนมำกรำฟ” ในกำรถำยทอดเรองรำว

Page 33: Frontend developer 2016 | cloudcourse.io

Kevin Burg and Jamie Beck created the first cinemagraph in 2011

Page 34: Frontend developer 2016 | cloudcourse.io

ถำนกไมออกวำซเนมำกรำฟคออะไร?

Page 35: Frontend developer 2016 | cloudcourse.io

ใหลองนงถงภำพยนตรเรองแฮรรพอตเตอร

ในหนงเรองนจะมหนงสอพมพอยส ำนกนงทชอ เดล โพรเพธ

Page 36: Frontend developer 2016 | cloudcourse.io

ซงภำพถำยในหนงสอนนจะสำมำรถบอกเลำเหตกำรณและควำมรสกในรปนนๆได

Page 37: Frontend developer 2016 | cloudcourse.io
Page 38: Frontend developer 2016 | cloudcourse.io
Page 39: Frontend developer 2016 | cloudcourse.io
Page 40: Frontend developer 2016 | cloudcourse.io

Image Format 2016

Page 41: Frontend developer 2016 | cloudcourse.io
Page 42: Frontend developer 2016 | cloudcourse.io
Page 43: Frontend developer 2016 | cloudcourse.io
Page 44: Frontend developer 2016 | cloudcourse.io
Page 45: Frontend developer 2016 | cloudcourse.io

1. ไฟลมขนำดเลกกวำ .jpg และมควำมละเอยดสงกวำ

2. รองรบทก Browser

3. รองรบรปภำพโปรงแสงเชน png

4. ไมลดคณภำพของรปทงทมขนำดเลกกวำ

5. สำมำรถเพม meta data เขำไปยงรปภำพได

6. รองรบภำพเคลอนไหวแบบ gif

Page 46: Frontend developer 2016 | cloudcourse.io

1. ยงตองใช JavaScript ในกำร Decode .bpg เพอน ำมำแสดงผลท

เวบไซตจงท ำใหเสยเวลำในกำรแปลงไฟลสวนน

2. กำรแปลงรปภำพจำก jpg, png, gif หรออนๆไปเปน bpg และกำร

ใชงำนอำจจะยำกส ำหรบบคคลทวไป

Page 47: Frontend developer 2016 | cloudcourse.io

ถำหำก Browser ทงหลำยรองรบมนแบบทไมตองใช JavaScript ในกำร Decode มนจะเปน

format ทเปนทนยมมำกในอนำคตครบเนองจำก ขนำดทเลกกวำ และคณภำพทสงกวำรป

jpg ทงยงมควำมสำมำรถดำนโปรงแสงและกำรท ำภำพเคลอนไหวอกดวย

Page 48: Frontend developer 2016 | cloudcourse.io
Page 49: Frontend developer 2016 | cloudcourse.io

Flat นำเบอและนำเบอและกนำเบอ

Flat มปญหำตอกำรใชงำนของผใช

Page 50: Frontend developer 2016 | cloudcourse.io
Page 51: Frontend developer 2016 | cloudcourse.io
Page 52: Frontend developer 2016 | cloudcourse.io
Page 53: Frontend developer 2016 | cloudcourse.io
Page 54: Frontend developer 2016 | cloudcourse.io
Page 55: Frontend developer 2016 | cloudcourse.io
Page 56: Frontend developer 2016 | cloudcourse.io
Page 57: Frontend developer 2016 | cloudcourse.io
Page 58: Frontend developer 2016 | cloudcourse.io
Page 59: Frontend developer 2016 | cloudcourse.io
Page 60: Frontend developer 2016 | cloudcourse.io
Page 61: Frontend developer 2016 | cloudcourse.io

เทรนดกำรออกแบบเวบไซตสไตลกเกล

Page 62: Frontend developer 2016 | cloudcourse.io
Page 63: Frontend developer 2016 | cloudcourse.io
Page 64: Frontend developer 2016 | cloudcourse.io
Page 65: Frontend developer 2016 | cloudcourse.io
Page 66: Frontend developer 2016 | cloudcourse.io
Page 67: Frontend developer 2016 | cloudcourse.io
Page 68: Frontend developer 2016 | cloudcourse.io
Page 69: Frontend developer 2016 | cloudcourse.io
Page 70: Frontend developer 2016 | cloudcourse.io
Page 71: Frontend developer 2016 | cloudcourse.io
Page 72: Frontend developer 2016 | cloudcourse.io

นบวนจ ำนวนของอปกรณแพลตฟอรมตำงๆ

Page 73: Frontend developer 2016 | cloudcourse.io

และเบรำวเซอรทจะตองท ำงำนรวมกบเวบไซตของเรำเตบโตมำกขน

Page 74: Frontend developer 2016 | cloudcourse.io

กำรออกแบบเวบทสำมำรถตอบสนองไดทกขนำดหนำจอ

Page 75: Frontend developer 2016 | cloudcourse.io

จงเปนอกหนงตวเลอกส ำหรบยคสมยนและยคสมยตอไปในอนำคต

Page 76: Frontend developer 2016 | cloudcourse.io
Page 77: Frontend developer 2016 | cloudcourse.io

เลก, กลำง, ใหญ, ใหญมำก, ใหญมาก มาก มาก

1 เวบไซตส าหรบการแสดงผลทกขนาดหนาจอ

Page 78: Frontend developer 2016 | cloudcourse.io

ในป 2011

Page 79: Frontend developer 2016 | cloudcourse.io

ม CSS Framework ตวนง

Page 80: Frontend developer 2016 | cloudcourse.io

ถกพฒนำขนมำ

Page 81: Frontend developer 2016 | cloudcourse.io
Page 82: Frontend developer 2016 | cloudcourse.io

เพอใหชวตกำรท ำงำนของ Web Developer งำยขน

Page 83: Frontend developer 2016 | cloudcourse.io
Page 84: Frontend developer 2016 | cloudcourse.io

และCSS Framework ตวดงกลำวกถกพฒนำเรอยมำ

Page 85: Frontend developer 2016 | cloudcourse.io
Page 86: Frontend developer 2016 | cloudcourse.io

จำกเวอรชนท 1 มำถง 2 เขำสชวงท 3 และเตบโตมำถงชวงท 4

Page 87: Frontend developer 2016 | cloudcourse.io
Page 88: Frontend developer 2016 | cloudcourse.io
Page 89: Frontend developer 2016 | cloudcourse.io

คอ CSS Framework ถกพฒนำขนโดย Mark Otto และ Jacob Thornton จำกทม Twitter

Page 90: Frontend developer 2016 | cloudcourse.io

คอกำรจด layout ของหนำจอใหรองรบทกขนำดและสำมำรถปรบเปลยน

รปแบบของตวเองไดตำมหลกกำรท ำงำนของ Responsive Web Design

Page 91: Frontend developer 2016 | cloudcourse.io

Bootstrap มควำมสำมำรถในกำรท ำ Responsive Website ซงเดมทในเวอรชนท 1 และ 2

ถกเรยกใชโดยคลำสทชอวำ .span* แตยงพบปญหำกำรท ำงำนซงไมสำมำรถท ำงำน

ในรปแบบ Fully Responsive ไดเนองจำกขอจ ำกดตำงๆทเวบเบรำเซอรไมสนบสนน

Page 92: Frontend developer 2016 | cloudcourse.io

ตอมำในเวอรชนท 3 นนไดท ำกำรออกแบบโครงสรำงใหมโดยเพมขนำดของอปกรณตำงๆ

เขำไปดวย เชน extra-small, small, medium, large เปนตนซงกำรท ำงำนจรงกสำมำรถ

ท ำไดดมำก และสำมำรถท ำงำนในรปแบบ Fully Responsive อยำงเตมตว ในสวนของกำร

เรยกใชงำนนนสำมำรถเรยกไดโดยกำรใชคลำส .col-{device-size}-{column-size}

Page 93: Frontend developer 2016 | cloudcourse.io

ถงยคปจจบนในเวอรชนท 4 ทำงผพฒนำไดท ำกำรเพมขนำดขนมำอก 1 รปแบบ

คอ extra-large และยงไดเพมรปแบบในกำรจด layout หนำเวบขนมำอก 1 รปแบบ

คอ Flexbox ซงเปน property ของ CSS3 ท ำใหรปแบบ Responsive และ กำรจด

Layout เวบไซตของเรำนนยดหยนและหลำกหลำยยงขน

Page 94: Frontend developer 2016 | cloudcourse.io
Page 95: Frontend developer 2016 | cloudcourse.io

col-md-12

Page 96: Frontend developer 2016 | cloudcourse.io

col-md-3 col-md-3 col-md-6

Page 97: Frontend developer 2016 | cloudcourse.io

col-md-8 col-md-4

col-md-9

Page 98: Frontend developer 2016 | cloudcourse.io
Page 99: Frontend developer 2016 | cloudcourse.io
Page 100: Frontend developer 2016 | cloudcourse.io

สงทเปลยนไปส ำหรบ Bootstrap 4

Page 101: Frontend developer 2016 | cloudcourse.io

เทคโนโลยทใชในกำรพฒนำ Bootstrap ใช Less CSS ในกำรพฒนำมำตงแตตนจนถง Bootstrap 3.2

ทำงผพฒนำจงไดเพม Source Code ของ Sass Lang ขนมำเพอใหเขำกบยคสมยท Sass ก ำลงเปนทนยม

มำกขนๆจนถง Bootstrap 4 ทมพฒนำกไดยำยมำเขยนโคดดวย Sass อยำงเตมตวและยกเลก Less CSS

Page 102: Frontend developer 2016 | cloudcourse.io

ระบบ Grid ใหมเพมควำมสำมำรถในกำรใชงำน Flexbox ซงเปน property ของ CSS3 นนจะท ำใหไมสำมำรถ

เปดเวบไซตทสรำงดวย Flexbox บน IE9 ไดเนองจำก IE9 นนไมสนบสนน Flexbox แตเรำกยงสำมำรถใช

งำนระบบ Grid แบบปรกตและสำมำรถท ำงำนบน IE9 ไดปรกต สวนกำรใชงำน Flexbox เปน Option เสรม

สำมำรถเปดใชงำนไดใน $enable-flex boolean true ในไฟล the _variables.scss

Page 103: Frontend developer 2016 | cloudcourse.io

ยกเลกกำรสนบสนน IE8 ทกกรณหำกตองกำรให Bootstrap สนบสนน IE8 กตองใชงำน Bootstrap 3 แทน

Page 104: Frontend developer 2016 | cloudcourse.io

หลกจำกทมกำรยกเลกสนบสนน IE8 กไดเปลยนหนวยกำรค ำนวณจำก px เปน rem, em แทน

เชน .container ใน BS4 ถกก ำหนด max-width เปนหนวย rem ซงสงผลดตอ Mobile Friendly แนนอน

เนองจำกหนวย rem, em มควำมยดหยนกวำหนวย px

Page 105: Frontend developer 2016 | cloudcourse.io

เพมศกยภำพของ Media Queries เชนเดยวกบ Grid ซงเปลยนจำก px เปน rem, em

Page 106: Frontend developer 2016 | cloudcourse.io

สวสด Card Layout

Bootstrap 4 เพมคอมโพเนนใหมชอวำ Card ซงมำแทนทกำรท ำของงำนคลำสตอไปน

.well, .panel, .thumbnail

Page 107: Frontend developer 2016 | cloudcourse.io

CSS Reset ตวใหมส ำหรบ Bootstrap 4 โดยเฉพำะใชชอวำ Reboot.css แตจรงๆแลวกคอ normalize.css

ซงถก fork มำและถกปรบแตง CSS เพมเตมใหเหมำะสมกบ Bootstrap 4

Page 108: Frontend developer 2016 | cloudcourse.io

Bootstrap 4 ถกเขยน JavaScript ใหมทมงหมดดวย ES6 หรอ ES2015 จงท ำให performance สงขนดวย

Page 109: Frontend developer 2016 | cloudcourse.io

Bootstrap 4 นนไมมกำรเรยกใชงำน Icon ใดๆทงนนถำเกดเรำตองกำรใช icon font ตำงๆกตองโหลดมำ

เพมเตมจำกผใหบรกำรอนๆ เชน Font Awesome, icon moon และ Glyphicons เปนตน

Page 110: Frontend developer 2016 | cloudcourse.io

รายละเอยดการปรบปรงทงหมด

http://v4-alpha.getbootstrap.com/migration/

Page 111: Frontend developer 2016 | cloudcourse.io

คอ การเขยนโคดในรปแบบหนง และ สงออกไปเปนอกรปแบบหนง

Page 112: Frontend developer 2016 | cloudcourse.io
Page 113: Frontend developer 2016 | cloudcourse.io
Page 114: Frontend developer 2016 | cloudcourse.io

ประโยชน ?

Page 115: Frontend developer 2016 | cloudcourse.io

มเครองมอตำงๆทใชงำนรวมกนไดมำกมำยเชน third-party mixins, functions, libraries, and frameworks.

Page 116: Frontend developer 2016 | cloudcourse.io

ควำมสำมำรถในกำรจดกำรโครงสรำงไฟลทดดวยกำรเขยนแบบ Partial

และยงสำมำรถเขยนในรปแบบซอนหรอทเรยกวำ Nesting ไดอยำงสะดวก

Page 117: Frontend developer 2016 | cloudcourse.io

สำมำรถเขยนฟงชนและกำรสรำงเงอนไขตำงๆไดซงท ำใหกำรเขยน CSS ของเรำ

มประสทธภาพมากยงขน

Page 118: Frontend developer 2016 | cloudcourse.io

กำรจดกำรไฟลทดจงเหมำะกบกำรท ำงำนรวมกนเปนทม

Page 119: Frontend developer 2016 | cloudcourse.io
Page 120: Frontend developer 2016 | cloudcourse.io
Page 121: Frontend developer 2016 | cloudcourse.io

.text-primarycolor: blue;border: 1px solid blue;

Page 122: Frontend developer 2016 | cloudcourse.io
Page 123: Frontend developer 2016 | cloudcourse.io

.text-primary {color: blue;border: 1px solid blue;

}

Page 124: Frontend developer 2016 | cloudcourse.io
Page 125: Frontend developer 2016 | cloudcourse.io
Page 127: Frontend developer 2016 | cloudcourse.io
Page 128: Frontend developer 2016 | cloudcourse.io
Page 129: Frontend developer 2016 | cloudcourse.io
Page 130: Frontend developer 2016 | cloudcourse.io
Page 131: Frontend developer 2016 | cloudcourse.io
Page 132: Frontend developer 2016 | cloudcourse.io
Page 133: Frontend developer 2016 | cloudcourse.io
Page 134: Frontend developer 2016 | cloudcourse.io

#Partials File Name

_variables.scss

_mixins.scss

components/_buttons.scss

#Import File

@import 'variables';

@import 'mixins';

@import 'components/buttons';

Page 135: Frontend developer 2016 | cloudcourse.io
Page 136: Frontend developer 2016 | cloudcourse.io
Page 137: Frontend developer 2016 | cloudcourse.io
Page 138: Frontend developer 2016 | cloudcourse.io
Page 139: Frontend developer 2016 | cloudcourse.io
Page 140: Frontend developer 2016 | cloudcourse.io
Page 141: Frontend developer 2016 | cloudcourse.io
Page 142: Frontend developer 2016 | cloudcourse.io
Page 143: Frontend developer 2016 | cloudcourse.io
Page 144: Frontend developer 2016 | cloudcourse.io
Page 145: Frontend developer 2016 | cloudcourse.io
Page 146: Frontend developer 2016 | cloudcourse.io
Page 147: Frontend developer 2016 | cloudcourse.io
Page 148: Frontend developer 2016 | cloudcourse.io
Page 149: Frontend developer 2016 | cloudcourse.io
Page 150: Frontend developer 2016 | cloudcourse.io
Page 151: Frontend developer 2016 | cloudcourse.io
Page 152: Frontend developer 2016 | cloudcourse.io
Page 153: Frontend developer 2016 | cloudcourse.io
Page 154: Frontend developer 2016 | cloudcourse.io
Page 155: Frontend developer 2016 | cloudcourse.io
Page 156: Frontend developer 2016 | cloudcourse.io
Page 157: Frontend developer 2016 | cloudcourse.io
Page 158: Frontend developer 2016 | cloudcourse.io
Page 159: Frontend developer 2016 | cloudcourse.io
Page 160: Frontend developer 2016 | cloudcourse.io
Page 161: Frontend developer 2016 | cloudcourse.io
Page 162: Frontend developer 2016 | cloudcourse.io
Page 163: Frontend developer 2016 | cloudcourse.io
Page 164: Frontend developer 2016 | cloudcourse.io
Page 165: Frontend developer 2016 | cloudcourse.io
Page 166: Frontend developer 2016 | cloudcourse.io
Page 167: Frontend developer 2016 | cloudcourse.io
Page 168: Frontend developer 2016 | cloudcourse.io
Page 169: Frontend developer 2016 | cloudcourse.io
Page 170: Frontend developer 2016 | cloudcourse.io
Page 171: Frontend developer 2016 | cloudcourse.io
Page 172: Frontend developer 2016 | cloudcourse.io
Page 173: Frontend developer 2016 | cloudcourse.io
Page 174: Frontend developer 2016 | cloudcourse.io
Page 175: Frontend developer 2016 | cloudcourse.io
Page 176: Frontend developer 2016 | cloudcourse.io
Page 177: Frontend developer 2016 | cloudcourse.io
Page 178: Frontend developer 2016 | cloudcourse.io
Page 179: Frontend developer 2016 | cloudcourse.io
Page 180: Frontend developer 2016 | cloudcourse.io

แถม

Page 181: Frontend developer 2016 | cloudcourse.io
Page 182: Frontend developer 2016 | cloudcourse.io

ท าไมตอง postCSS?

Page 183: Frontend developer 2016 | cloudcourse.io

น ำหนกเบำ, Compile เรวกวำ Sass และ LESS

Page 184: Frontend developer 2016 | cloudcourse.io

เลอกลง Plugin เองได ฟเจอรไหนรนชำกไมตองลง

ฟเจอรไหนทสรำงปญหำเยอะ ๆ อยำง @extend กไมตองลง

Page 185: Frontend developer 2016 | cloudcourse.io

postCSS สำมำรถเขยน Plugin เสรมเองไดซง Sass และ LESS

ท ำไดยำกและไมนยมท ำ

Page 186: Frontend developer 2016 | cloudcourse.io

และม Plugin ใหเลอกใชมำกมำย

Page 187: Frontend developer 2016 | cloudcourse.io

Bootstrap 5 จะถกเขยนใหมดวย postCSS

Page 188: Frontend developer 2016 | cloudcourse.io

แถมอกนด

Page 189: Frontend developer 2016 | cloudcourse.io
Page 190: Frontend developer 2016 | cloudcourse.io

เปนกำรเขยน CSS แนวใหมดวยคอนเซปตำมชอ

คอ atomic และกำร reusable

Page 191: Frontend developer 2016 | cloudcourse.io

ชอ class ในรปแบบ atomic นนไดไอเดยมำจำกแพคเกจ

ทชอวำ emmet ของ zen coding

Page 192: Frontend developer 2016 | cloudcourse.io
Page 193: Frontend developer 2016 | cloudcourse.io

Atomic CSS มอะไรด?

Page 194: Frontend developer 2016 | cloudcourse.io

ท ำงำนในรปแบบ inline css แตไมตองเรยกใชผำน @style

Page 195: Frontend developer 2016 | cloudcourse.io

ถำไมถกเรยกใชงำน CSS จะไมถกน ำมำ Compile

ท ำใหลดขนำดไฟลไดอยำงมำก

Page 196: Frontend developer 2016 | cloudcourse.io

ประสทธภำพกำรท ำงำนสงกวำ inline css

Page 197: Frontend developer 2016 | cloudcourse.io

และยดหยนกวำ inline css