Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Web技術の基本 5回目 / Introduction to Web technologies...
Search
muttan
March 30, 2018
Technology
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Web技術の基本 5回目 / Introduction to Web technologies 5th class
muttan
March 30, 2018
More Decks by muttan
See All by muttan
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
bath_poo_
0
140
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
230
ISUCONってなんだ / What is ISUCON
bath_poo_
0
400
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
240
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
220
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
300
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
250
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
280
Web技術の基本 2回目 / Introduction to Web technologies 2nd class
bath_poo_
0
310
Other Decks in Technology
See All in Technology
AWS App Runnerから Cloudflare Workersへ移行した話
ryota09
0
110
音声コミュニティを守るAI監視基盤_ 90%以上の入力削減を支えたServerless設計と運用判断
shuheioka123
0
120
TiDBファミリーにDWHが新登場!! TiDB最新情報 / TiDB update 202609
yoshiakiyamasaki
0
160
Antigravity SDK for the Java Developer
glaforge
0
240
Harness Engineering on Rails
joelq
0
760
1人アドミンな私はAWSアカウント申請をSlackで完結したい!
ysuzuki
0
100
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
260
猫でもわかるKiro Web
kentapapa
1
160
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
1
250
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
480
PQC移行の今 -- IETF からみた現在地
satokan
4
660
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
190
Featured
See All Featured
Designing Experiences People Love
moore
143
24k
エンジニアに許された特別な時間の終わり
watany
109
250k
Done Done
chrislema
187
17k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
960
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
780
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
690
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
500
How STYLIGHT went responsive
nonsquared
100
6.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
530
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Transcript
Webٕज़ͷجຊ 5ճ Keisuke KAMIYA
ࠓճͷςʔϚ
Chapter 4 Webͷ༷ʑͳσʔλܗࣜ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
HTMLͷߏ • HTML(Hyper Text Markup Language) ϋΠύʔςΩετ(Webϖʔδ)Λهड़͢Δݴޠ • ಛ 1.
จষΛλάͰғΉ͜ͱͰཁૉʹͳΔ λά, ғΜͩจষ͕ʮԿΛ͔ࣔ͢ʯΛද͢ 2. ཁૉΛೖΕࢠʹ͢Δ͜ͱ͕Մೳ 3. ཁૉʹରͯ͠ଐੑΛՃ͢Δ͜ͱ͕Մೳ <a href=“https://example.com/“>ͷhrefͱ͔
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body>
<h1>d(^_^o)</h1> ͜Ε<a href=“https://example.com”>link</a> </body> </html> HTMLͷߏ headཁૉ htmlཁૉ <a href=“http://example.com/“>ϦϯΫ</a> ։࢝λά ऴྃλά ༰ ଐੑ(ଐੑ໊=ଐੑ) bodyཁૉ IUNMཁૉ IFBEཁૉ NFUBཁૉ UJUMFཁૉ CPEZཁૉ Iཁૉ Bཁૉ ֊ߏʢೖΕࢠʣɹ ʹͳ͍ͬͯΔ example.html
HTMLͷྺ࢙ • HTMLॳจॻͱϦϯΫΛදͨ͢Ίͷͷͩͬͨ ‣ Q. HTMLΛ࡞ͨ͠ͷ୭Ͱ͔͢ʁ • ͕࣌ਐΉʹͭΕͯWebʹٻΊΒΕΔػೳ૿Ճͯ͠ ͍ͬͨʢΞϓϦέʔγϣϯԽʣ ‣
Webͷීٴ৽ͨͳٕज़ͷൃలʹͭΕͯόʔδϣϯ Ξοϓ͕ߦΘΕ͖ͯͨ - Q. קࠂͲ͜ߦ͍ͬͯ·͔͢ʁ
HTMLͷྺ࢙ όʔδϣϯ ػೳ )5.- )5.-ͷݪܕ ʢجຊతͳจॻߏͱϦϯΫʣ )5.- ೖྗϑΥʔϜ )5.- දΈ
৭͚ )5.- ০ ॻࣜͳͲͷࢿ֨දݱΛ)5.-͔Β Γ͠ ݴޠ༷ΛڧԽ )5.- 8FCΞϓϦͷػೳ্ΛࢹʹೖΕͨେ෯ ͳ֦ுಈը ԻݯͷຒΊࠐΈ͕Մೳʹ )5.- ϞόΠϧ͚ͷը૾ղ૾ରԠͳͲ
HTMLͷྺ࢙ όʔδϣϯ %0$5:1&ͷܗࣜ )5.-Ҏ߱ %0$5:1&IUNM )5.-4USJDU %0$5:1&)5.-16#-*$l8$%5% )5.-&/zlIUUQXXXXPSH53 IUNMTUSJDUEUEz )5.-5SBOTJUJPOBM
%0$5:1&)5.-16#-*$l8$%5% )5.-5SBOTJUJPOBM&/zlIUUQ XXXXPSH53IUNMMPPTFEUEz )5.-'SBNFTFU %0$5:1&)5.-16#-*$l8$%5% )5.-'SBNFTFU&/zlIUUQ XXXXPSH53IUNMGSBNFTFUEUEz ྺͷDOCTYPEએݴͨͪ HTMLऴྃ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ WebϖʔδͰར༻͞Ε͍ͯΔը૾ܗࣜΛ͍͔ͭ͘հ 1. JPEG (xxx.jpeg, xxx.jpg) 2. GIF (xxx.gif) 3.
PNG (xxx.png) 4. WebP (xxx.webp)
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ(JPEG) • JPEG(Joint Photographic Experts Group) ҰൠతͳඇՄٯѹॖͷը૾ϑΥʔϚοτ. ‣ 1677ສ৭ͷ৭Λѻ͏͜ͱ͕Մೳʢࣸਅͷը૾ܗࣜͱ ͯ͠༻͍ΒΕΔ͜ͱ͕ଟ͍ʣ
‣ ඇՄٯѹॖͳͷͰ, jpeg͔Βݩͷը૾ʹશʹ෮ݩ͢ Δ͜ͱෆՄೳ
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ(JPEG) • JPEGDCT(Discrete Cosine transform)ͭ·Γࢄί αΠϯมΛ༻͍ͯѹॖ͍ͯ͠Δ • ਓͷͰೝࣝͰ͖ͳ͍ߴप ΛΓ, ߋʹྔࢠԽςʔϒϧ
ʹج͍ͮͯྔࢠԽΛߦͳ͏͜ͱ Ͱ, ใྔΛେ෯ʹݮΒ͍ͯ͠Δ • IDCTΛͯ͠ը૾Λ࡞ ը૾Ҿ༻ɿhttps://en.wikipedia.org/wiki/Discrete_cosine_transform Two-dimensional DCT frequencies from the JPEG DCT
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ(GIF) • GIF(Graphics Interchange Format) ΪϑͰͳ͍, ΪϑͰ͋Δ ‣ ѻ͑Δ৭ͷछྨ256छྨ ‣
ՄٯѹॖʢྼԽൃੜ͠ͳ͍ʣ, LZWΛ༻ ‣ ಁ໌৭Λѻ͏͜ͱ͕Մೳ ‣ ෳͷGIFը૾ΛΞχϝʔγϣϯ͢Δ͜ͱ͕Մೳ ‣ ͔ͭͯUNISYSࣾͷಛڐྉٻͷӨڹͰར༻ऀ͕ܹݮ ͕ͨ͠, ಛڐࣦޮʹ͍ར༻ऀ͕࠶ͼ૿Ճ
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ(PNG) • PNG(Portable Network Graphics) GIF͕ಛڐͰᎍΊͨ࣌ʹ, GIFͷΘΓʹར༻͢Δ ϑΥʔϚοτͱͯ͠W3CͰ։ൃ͞Εͨ ‣ 1,677ສ৭Ҏ্ͷ৭Λѻ͏͜ͱ͕Մೳ
‣ ՄٯѹॖʢྼԽͳ͠ʣ ‣ ಉ͡༰Ͱ, GIFΑΓѹॖޮ͕ྑ͍ - GIFLZW, PNGDeflate(LZ77+huffman coding) ‣ ಁ໌Λѻ͑Δʢಁ໌͕Մೳʣ
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ(WebP) • WebPʢΣοϐʔʣ Google͕։ൃ͍ͯ͠Δ࣍ੈͷը૾ϑΥʔϚοτ. ֦ு ࢠ.webp ‣ ϩεϨεϞʔυͰPNGΑΓ26%খ͍͞ ‣ ϩογʔϞʔυͰJPEGΑΓ25ʙ34%΄Ͳখ͍͞
- ͱ, Googleओு͍ͯ͠·͢ ‣ ඇՄٯѹॖͰΞϧϑΝνϟϯωϧΛ༻Մೳ https://developers.google.com/speed/webp/
WebϖʔδͰར༻͞ΕΔը૾ܗࣜ ը૾ܗࣜ ৭ͷछྨ ѹॖܗࣜ ಁաॲཧ Ξχϝʔγϣϯ +1&( ࠷େສ৭ ඇՄٯ %$5
2VBOUJ[F ✕ ✕ (*' ࠷େ৭ Մٯ -;8 ಛఆͷ৭Λಁ໌৭ ʹ͢Δ͜ͱ͕Մೳ Մೳ 1/( ࠷େສ৭ Մٯ %FqBUF ಛఆͷྖҬͷಁ໌ ΛௐՄೳ ✕ ը૾ϑΥʔϚοτऴྃ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
XML • XML(Extensible Markup Language) HTMLͱಉ͡ϚʔΫΞοϓݴޠʢߏͳͲΛࣔ͢ݴޠʣ ‣ HTMLͱҟͳΓ, ༷ʑͳ༻్ʹ൚༻తʹར༻Մೳ -
HTMLHyper TextʹಛԽͨ͠ϚʔΫΞοϓݴޠ ‣ HTMLXML, ಉ͡ݴޠ͔Βੜͯ͠Ͱ͖ͨ - SGML(Standard Generalized Markup Language)
XML • HTMLHyper TextΛهड़͢Δ͜ͱʹରͯ͠ಛԽͨ͠ ༻ࡦఆ͕קΊΒΕ͍ͯͨ • ͦΕʹରͯ͠, XMLతʹԠͯࣗ͡ΒλάΛఆٛ͢Δ ͜ͱ͕ՄೳͰ, ࣗ༝ͳܗࣜͰॊೈʹߏԽ͞ΕͨจষΛ
࡞Δ͜ͱ͕Մೳ ‣ XMLHTMLW3Cʹͯඪ४Խ͞Εקࠂ͞ΕΔ
XHTML <?xml version="1.0"?> <catalog> <book id="bk101"> <author>Gambardella, Matthew</author> <title>XML Developer's
Guide</title> <genre>Computer</genre> <price>44.95</price> <publish_date>2000-10-01</publish_date> <description>An in-depth look at creating applications with XML.</description> </book> </catalog> λάࣗͰಠࣗʹఆٛ͢Δ͜ͱ͕Մೳ )5.-ͱಉ༷ʹ ։࢝λάͱऴྃλάͰ จষΛڬΉ XMLͷྫ
XHTML • XHTML(Extensible HyperText Markup Language) HTMLΛXMLͷจ๏Ͱ࠶ఆٛͨ͠ͷ ‣ XMLͷจ๏੍ʹΑΓ, ด͡λάͷলུλά໊ͷ
έʔεͷࠞࡏ͕ڐ͞Εͳ͘ͳΔͳͲHTMLΑΓݫີ ‣ HTMLͱXMLͷ྆ํͷػೳΛ͏͜ͱ͕ग़དྷΔ - ࣜΛຒΊࠐΉMathMLSVGͳͲΛຒΊࠐΉ͜ͱ ͕Մೳ
<?xml version="1.0" encoding="UTF-8"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="jp" lang="jp"> <head> <title>Document</title> </head>
<body> <h1>My Homepage</h1> ͡Ί·ͯ͠ɻ<u>◦◦</u>Ͱ͢ɻ<br></br> ͜Εɺ<a href="https://example.com/">ϦϯΫ</a>Ͱ͢ɻ<br /> </body> </html> XHTML 9.-એݴ͔Β։࢝ ։࢝λά͚ͩڐ͞Εͳ͍ͷͰ ऴྃλά Λ͚Δ͔ඌʹΛ͚Δ XHTMLͷྫ ඞͣ։࢝λάͱऴྃλά͕ඞཁ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
CSS • CSS(Cascading Style Sheets) ‣ HTMLXMLͷදࣔํ๏ʢମࡋʣΛදݱ͢Δͷ ‣ ελΠϧγʔτͱݺΕΔ͜ͱ͕ଟ͍ ‣
HTMLXML͋͘·ͰߏΛදݱ͢Δͷ - HTMLͰ, όʔδϣϯ4.0͔ΒCSSΛ༻͍ͯจॻߏ ͱମࡋͷهड़Λ͢Δ͜ͱΛਪ ‣ CSS1, CSS2ͱ͖ͯ, ݱࡏCSS3
CSS • ಛఆͷจࣈͷେ͖͞৭ͳͲΛมߋ͍ͨ͠߹ ‣ CSS͕ଘࡏ͠ͳ͍ੈք fontλάͳͲΛͬͯ, HTML্Ͱදࣔํ๏Λࢦఆ - ڽͬͨදࣔʹ͠Α͏ͱ͢Δͱ, HTMLϑΝΠϧ͕ෳ
ࡶԽͯ͠͠·͏ ‣ CSS͕ଘࡏ͢Δੈք ʮ͋ΔಛఆͷλάΛ੨৭ʹ͢ΔʯΈ͍ͨͳ͜ͱ͕Մ ೳʹͳͬͨ
CSS • CSS͕ଘࡏ͠ͳ͍ੈք <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8">
<title>͠·Μͷ෦</title> </head> <body> <h1><font size="20" color="blue">ݟग़͠20pxͰ੨৭</font></h1> ͔͜͜Βຊจ <font size="10" color="red">͜͜10pxͰهड़</font><br> 2ߦ<font size="10" color="red">͜͜10pxͰ</font> </body> </html> fontλάྑ͘ͳ͍ htmlͷΈ(ߏ+ମࡋ)
CSS • CSSΛ༻͢Δͱ… <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8">
<title>͠·Μͷ෦</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1>ݟग़͠20pxͰ੨৭</h1> ͔͜͜Βຊจ <div class="red10">͜͜10pxͰهड़</div><br> 2ߦ<div class="red10">͜͜10pxͰ</div> </body> </html> h1 { color: blue; font-size: 20px; } .red10 { color: red; font-size: 10px; } html(ߏ) css(ମࡋ) ΘΓͱγϯϓϧʹͳهड़ʹ"
CSS • HTMLϑΝΠϧͷதʹελΠϧΛॻ͘͜ͱՄೳ • CSSʢମࡋʣΛ͓ͯ͘͜͠ͱͰ ‣ σβΠϯΛڞ༗͢Δ͜ͱ͕Մೳ ‣ ద༻͢ΔCSSΛมߋ͢Δ͜ͱͰ, ར༻͢ΔΫϥΠΞϯ
τ(PC, εϚʔτϑΥϯ, etc…)ʹదͨ͠ελΠϧΛద ༻͢Δ͜ͱ͕Մೳ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
εΫϦϓτݴޠ • ಈతͳϖʔδʹεΫϦϓτݴޠͷଘࡏ͕ඞཁෆՄܽ • 2छྨͷεΫϦϓτ͕ଘࡏ ‣ αʔόʔαΠυεΫϦϓτ CGIʢαʔόଆʣ͔Βݺͼग़͞ΕΔεΫϦϓτ. Perl Python,
RubyͳͲ͕ଟ͍Ͷ ‣ ΫϥΠΞϯταΠυεΫϦϓτ WebϒϥβଆʢΫϥΠΞϯτଆʣͰ࣮ߦ͞ΕΔεΫ Ϧϓτ. JavaScript͕ΘΕΔ͜ͱ͕ଟ͍Ͷ
εΫϦϓτݴޠʢαʔόʔαΠυεΫϦϓτʣ • αʔόʔαΠυεΫϦϓτʹ, Ruby, Python, Perl, PHP ͳͲ͕ΘΕΔ͜ͱ͕ଟ͍ ݴޠ ಛ
3VCZ ΦϒδΣΫτࢦΛऔΓೖΕͨݴޠ 1ZUIPO ΠϯσϯτͰϒϩοΫΛද͢ 1FSM ྺ࢙Λײ͡Δʜ 1)1 )5.-ʹຒΊࠐΊΔΑͶ ※ݸਓͷײͰ͢ ͪΐͬͱͨ͠ͷͩͱPHP͏ײ
εΫϦϓτݴޠʢΫϥΠΞϯτεΫϦϓτʣ • ΫϥΠΞϯτεΫϦϓτʹ, JavaScript͕ΘΕΔࣄ ͕ଟ͍(JavaScript ≠ Java) • NetMozilla FoundationͱMicrosoft͕ͦΕͧΕ։ൃͯ͠
ͨ ‣ ECMAΠϯλʔφγϣφϧ͕த৺ͱͳΓ, ECMAScript ͱ͍͏JavaScriptͷඪ४Λࡦఆ ‣ ଟ͘ͷϒϥβ͕ECMAScriptΛαϙʔτ
εΫϦϓτݴޠʢΫϥΠΞϯτεΫϦϓτʣ • ES6ͱES2015ಉ͡ͷΛࢦ͠·͢ ‣ ES2016Ͱݴ͓͚ͬͯؒҧ͍ͳͦ͞͏ ‣ ͕͜͜ৄ͍͠ˠhttp://blog.cybozu.io/entry/9081 • ES6ΛES5ʹม͢ΔτϥϯεύΠϥͬͯͷ͋Γ·͢ ‣
Babel • AltJSͱ͍͏ͷଘࡏ͢Δ ‣ CoffeeScript, TypeScript, …
εΫϦϓτݴޠʢΫϥΠΞϯτεΫϦϓτʣ • ϑϨʔϜϫʔΫଓʑొ ‣ jQueryʢ͜ΕϑϨʔϜϫʔΫͰͳ͍ʣ ‣ React ‣ Angular ‣
Vue.js
εΫϦϓτݴޠʢΫϥΠΞϯτεΫϦϓτʣ • ࠷ۙαʔόʔαΠυjsͬͯͷ͋Γ·͢Ͷ • খωλ Node.jsͷύοέʔδϚωʔδϟnpmͷެࣜαΠτࠨ্
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
DOM • DOM(Document Object Model) HTMLXMLจॻΛѻ͏ͨΊͷAPI • DOMΛ͏͜ͱͰ, ϓϩάϥϜ͔ΒจॻߏΛ؆୯ʹ ࢀরɾ੍ޚ͢Δ͜ͱ͕Մೳ
ϓϩάϥϜ %0. <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>͠·Μͷ෦</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1>ݟग़͠</h1> ͔͜͜Βຊจ </body> </html> headͷtitleཁૉͷ Λ͍ͩ͘͞ “͠·Μͷ෦”Ͱ͢ HTMLΛḷͬͯ Λऔಘ ϓϩάϥϜͱ)5.- ͷڮ͠
DOM • WebϒϥβʹݶΒͣ, WebϒϥβͱWebαʔόؒͰͷXMLจॻ ͷΓऔΓʹΘΕͯΔͬΆ͍ • DOMW3C͕ඪ४Խ, קࠂΛߦ͍ͬͯΔ • Levelͱ͍͏֓೦͕͋Δ
‣ Level 1 XML1.0ͱXHTML4.0xͷରԠ ‣ Level 2 XML1.0ͷ֦ுͱXHTML1.0, CSSͷαϙʔτՃ ‣ Level 3 XML1.0ͷ֦ுͱDOMπϦʔͷಡΈॻ͖ػೳͳͲͷՃ
• DOM, ରͱͳΔจॻͷ֤ཁૉΛπϦʔߏʹͯ͠ ѻ͍ͬͯΔ(DOMπϦʔ) DOM <!DOCTYPE html> <html lang="ja"> <head>
<meta charset="UTF-8"> <title>͠·Μͷ෦</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1>ݟग़͠</h1> ͔͜͜Βຊจ </body> </html> )5.- IFBE CPEZ NFUB UJUMF MJOL I ͠·Μͷ෦ ݟग़͠ ͔͜͜Βຊจ %0.πϦʔ
DOM <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>͠·Μͷ෦</title> <link
rel="stylesheet" href="style.css"> </head> <body> <h1>ݟग़͠</h1> ͔͜͜Βຊจ </body> </html> )5.- IFBE CPEZ NFUB UJUMF MJOL I ͠·Μͷ෦ ݟग़͠ ͔͜͜Βຊจ %0.πϦʔ ͭͭΛ ϊʔυͱ͍͏ ཁૉ͕ଟ͘ͳΔͱDOMπϦʔ͕ڊେʹͳΔͨΊ, จॻͷྔ͕ଟ͍߹ॲཧʹ͕͔͔࣌ؒΔ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
JSON • JSON(JavaScript Object Notation) ߏԽͨ͠σʔλΛදͨ͢Ίͷσʔλهड़ݴޠ. JavaScriptͷΦϒδΣΫτදݱͷαϒηοτ ‣ JavaScriptͰ͔͑͠ͳ͍ͱ͔Ͱͳ͍ {
"copyright": { "image": { "height": 26, "link": "http://weather.livedoor.com/", "title": "livedoor ఱؾใ", "url": "http://weather.livedoor.com/img/cmn/livedoor.gif", "width": 118 }, "link": "http://weather.livedoor.com/", "title": "(C) LINE Corporation" }, "publicTime": "2018-03-14T17:00:00+0900", "title": "ݝ ͷఱؾ" } Weather Hacks: http://weather.livedoor.com/weather_hacks/
JSON • JSONΛར༻͢Δ͜ͱͰ, σʔλΛߏͰදݱ͢Δ͜ ͱ͕Մೳ ‣ ͦͷͰXMLͱ͋·ΓมΘΒͳ͍ͷͰ • XMLλάͰσʔλͷߏΛද͢ •
JSONσʔλΛ֊తʹฒͯߏΛද͢
JSON • XMLͷಛ ‣ σʔλͱͯ͠จࣈྻ͔͠ද͢͜ͱ͕Ͱ͖ͳ͍ ‣ શͯͷใʹλά͚͕ඞཁ ‣ ςΩετͷҙͷॴʹλά͚͕Մೳ •
JSONͷಛ ‣ จࣈྻҎ֎ʹ, ۭΛҙຯ͢ΔσʔλΛ༻Մೳ ‣ σʔλΛΧοίͰׅΔ͚ͩͳͷͰ, αΠζখ͞Ί ‣ λάʹΑΔϚʔΫ͕ͳ͍ͷͰՄಡੑ͕͍
JSON { "copyright": { "image": { "height": 26, "link": "http://weather.livedoor.com/",
"title": "livedoor ఱؾใ", "url": "http://weather.livedoor.com/img/cmn/livedoor.gif", "width": 118 }, "link": "http://weather.livedoor.com/", "title": "(C) LINE Corporation" }, "publicTime": "2018-03-14T17:00:00+0900", "title": "ݝ ͷఱؾ" } <?xml version="1.0" encoding="UTF-8" ?> <copyright> <image> <height>26</height> <link>http://weather.livedoor.com/</link> <title>livedoor ఱؾใ</title> <url>http://weather.livedoor.com/img/cmn/livedoor.gif</url> <width>118</width> </image> <link>http://weather.livedoor.com/</link> <title>(C) LINE Corporation</title> </copyright> <publicTime>2018-03-14T17:00:00+0900</publicTime> <title>ݝ ͷఱؾ</title> JSON XML
JSON • Web্ͰͷσʔλͷΓऔΓͰ, JSON͕Α͘ར༻͞ Ε͍ͯΔ • JSON·Μ·JavaScriptͷΦϒδΣΫτͳͷͰ, DOM Λ༻͢ΔXMLʹൺͯΦʔόʔϔου͕গͳ͍ ϓϩάϥϜ
%0. 9.- ϓϩάϥϜ +40/ XML JSON DOMΛܦ༝͢Δඞཁ͋Γ DOMΛܦ༝͢Δඞཁͳ͠ JSON.parse()ͱ͔ͰΑͦ͞͏
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
ϑΟʔυ • ϑΟʔυ WebαΠτͷߋ৽ཤྺΛ৴͢ΔͨΊͷϑΝΠϧ • ϑΟʔυΛνΣοΫ͢Δ͜ͱͰ, ࣮ࡍʹϖʔδʹΞΫη εͤͣʹϖʔδͷߋ৽ࠩΛಘΔ͜ͱ͕ग़དྷΔ ‣ ϑΟʔυͷதओʹϋΠύʔϦϯΫͷू·Γ
• ҎԼͷΑ͏ͳϑΥʔϚοτ͕͋Δ ‣ RSS ‣ Atom
ϑΟʔυ • RSSͷྺ࢙ࠞಱͱ͍ͯ͠Δ ݱঢ়ΘΕͯΔͷ2छྨ Ҿ༻ɿ https://developer.mozilla.org/ja/docs/Archive/RSS/Version
ϑΟʔυ(RDF) • RSS ݱࡏ, RSS2ͭͷܥྻʹ͔Ε͍ͯΔ ‣ RSS 1.0(RDF Site Summary
1.0) - RDF(Resource Description Framework)͕ϕʔεʹͳ͍ͬͯΔ - ߏจෳࡶ, ໊લۭؒͷαϙʔτ ‣ RSS 2.0(Really Simple Syndication 2.0) - XML͕ϕʔεʹͳ͍ͬͯΔ - 1.0ʹൺΔͱγϯϓϧ • ུশͷ௨Γ, RSS2.0RSS1.0ͷޙܧͰͳ͍ผͰ͋Δʹҙ
ϑΟʔυ(Atom) • Atom IETFͰඪ४Խ͕ਐΊΒΕ͍ͯΔϑΥʔϚοτ ‣ XMLΛϕʔεͱͨ͠ϑΥʔϚοτ ‣ 2छྨ͕ଘࡏ - ৴ϑΥʔϚοτͷAtom
Syndication Format - ग़൛ϓϩτίϧͷAtom Publishing Protocol
ϑΟʔυ • ϑΟʔυϦʔμʔʢϑΟʔυΞάϦήʔλʔʣ Web্ͷϑΟʔυΛऔಘͯ͠ཧ͢Διϑτ ‣ Feedlyͱ͔༗໊Ͱ͢ΑͶ ϑΟʔυ ϑΟʔυ ϑΟʔυ ఆظతʹΞΫηε
ϑΟʔυϦʔμʔ
ϑΟʔυ • ϙουΩϟετ Webαʔό্ʹಈըԻָΛΞοϓϩʔυ͠, RSSΛ௨ ͯ͠৴͢Δํ๏ Իָ ಈը ϑΟʔυ ϑΟʔυϦʔμʔ
αʔόʹΞοϓϩʔυ͞Εͨ ԻָಈըͷϦετ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
ϚΠΫϩϑΥʔϚοτ • ϚΠΫϩϑΥʔϚοτ HTMLXHTMLͰهड़͞ΕͨWebϖʔδͷதʹ, ҙຯΛ ද͢هड़ΛຒΊࠐΉͨΊͷॻࣜ ళฮ໊ ম͖Ϩετϥϯ͞Θ͔ দࣰέళ ి൪߸
053-421-8911 63- IUUQXXXHFOLPUTVICDPN TIPQTIPQTTIPQIUNM <ul class="vcard"> <li class="org">ম͖Ϩετϥϯ͞Θ͔ দࣰέళ</li> <li class="tel">053-421-8911</li> <li class=“url">http://www.genkotsu-hb…</li> </ul> webϖʔδͷදݱʹӨڹͷ༰ʹ classଐੑͳͲΛͬͯҙຯΛຒΊࠐΉ
ϚΠΫϩϑΥʔϚοτ • ࿈བྷઌΛද͢hCard <div class="vcard"> <a class="fn org url" href="http://www.commerce.net/">CommerceNet</a>
<div class="adr"> <span class="type">Work</span>: <div class="street-address">169 University Avenue</div> <span class="locality">Palo Alto</span>, <abbr class="region" title="California">CA</abbr> <span class="postal-code">94301</span> <div class="country-name">USA</div> </div> <div class="tel"> <span class="type">Work</span> +1-650-289-4040 </div> <div class="tel"> <span class="type">Fax</span> +1-650-289-4041 </div> <div>Email: <span class="email">
[email protected]
</span> </div> </div>
ϚΠΫϩϑΥʔϚοτ • ΠϕϯτใΛද͢hCalendar <div class="vevent"> <h3 class="summary">XYZ Project Review</h3> <p
class="description">Project XYZ Review Meeting</p> <p>To be held on <span class="dtstart"> <abbr class="value" title="1998-03-12">the 12th of March</abbr> from <span class="value">8:30am</span> <abbr class="value" title="-0500">EST</abbr> </span> until <span class="dtend"> <span class="value">9:30am</span> <abbr class="value" title="-0500">EST</abbr> </span> </p> <p>Location: <span class="location">1CP Conference Room 4350</span></p> <small>Booked by: <span class="uid">guid-1.host1.com</span> on <span class="dtstamp"> <abbr class="value" title="1998-03-09">the 9th</abbr> at <span class="value">6:00pm</span> </span> </small> </div>
ϚΠΫϩϑΥʔϚοτ • ҙຯʹؔ͢ΔใΛຒΊࠐΉ͜ͱͰ, ηϚϯςΟοΫ Webͷ࣮ݱ͕Մೳ • GoogleͷϦονεχϖοτ͕༗໊ ͜͜ͱ͔ (o^_^) Կ͕ͲͷใԽΛϚʔΫΞοϓ͓ͯ͘͠ͱ,
ίϯϐϡʔλ͕ཧղͯ͠දࣔͯ͘͠ΕΔ
ϚΠΫϩϑΥʔϚοτ • ϚΠΫϩϑΥʔϚοτ, microformatsίϛϡχςΟ͕ ཧ͍ͯ͠Δ • ϚΠΫϩϑΥʔϚοτͷΑ͏ʹߏԽϚʔΫΞοϓΛߦ ͳ͏ͷ༷ʑͳஂମͰ։ൃ͞Ε͍ͯΔ ‣ ϚΠΫϩσʔλ
‣ PDFa ‣ Schema.org Google, Yahoo, Microsoft, YandexͳΜ͔͕ओମ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
Իɾಈը৴ • ԻಈըͷσʔλΛͦͷ··ྲྀ͢ͱ༷ʑͳʢసૹ࣌ ؒɾଳҬʣ͕ൃੜ͢ΔͨΊ, ѹॖΛߦ͏ඞཁ͕͋Δ ‣ Τϯίʔυ σʔλΛѹॖ͢Δ͜ͱ ‣ σίʔυ
ѹॖͨ͠σʔλΛ෮ݩ͢Δ͜ͱ • σʔλͷѹॖʹ, ίʔσοΫͱݺΕΔιϑτΣΞ͕ ༻͞ΕΔ ‣ H.265(HEVC), H.264, MPEG-2, etc…
Իɾಈը৴ • ԻίʔσοΫ • ಈըίʔσοΫ ن໊֨ ֦ுࢠ
༻్ ""$ BBD NBͳͲ ܞଳܕԻָϓϨʔϠʔ .1 NQ ܞଳܕԻָϓϨʔϠʔ 8." 8JOEPXT.FEJB "VEJP XNB 8JOEPXT1$ ن໊֨ ֦ுࢠ ༻్ .1&( NQ NWͳͲ ܞଳܕԻָϓϨʔϠʔ .1&( NQH NQ ্σδλϧ์ૹ 8.7 8JOEPXT.FEJB 7JEFP XNW 8JOEPXT1$
Իɾಈը৴ • ৴ํ๏ओʹ3छྨଘࡏ͢Δ 1. μϯϩʔυ৴ 2. ϓϩάϨογϒμϯϩʔυ৴ YouTubeͱ͔χίχίಈըͳͲͷΦϯσϚϯυ 3. ετϦʔϛϯά৴
AbemaTVΒχίੜΒ
Իɾಈը৴ • μϯϩʔυ৴ Webαʔό͔ΒಈըϑΝΠϧΛμϯϩʔυ͠, ྃ͠ ͔ͯΒ࠶ੜ͢Δ ϑΝΠϧΛ ͦͷ··ૹ৴ μϯϩʔυ͕ ͔ྃͯ͠Β࠶ੜ
μϯϩʔυ৴ μϯϩʔυத࠶ੜͰ͖ͳ͍͕ μϯϩʔυ͕ऴྃ͢Ε͍ͭͰ࠶ੜՄೳ
Իɾಈը৴ • ϓϩάϨογϒμϯϩʔυํࣜ ϑΝΠϧΛμϯϩʔυ͠ͳ͕Β࠶ੜ͢Δํ๏ ‣ YouTubeͳͲͰΘΕ͍ͯΔํࣜ ϑΝΠϧΛ ͦͷ··ૹ৴ μϯϩʔυதʹ ࠶ੜ։࢝Ͱ͖Δ
μϯϩʔυ৴ μϯϩʔυதʹ࠶ੜ͢Δ͜ͱ͕Ͱ͖ μϯ ϩʔυͨ͠ͷΩϟογϡͱͯ͠อଘ
Իɾಈը৴ • ετϦʔϛϯά৴ ϑΝΠϧΛࡉׂ͔ͯ͘͠Ϣʔβ৴͢Δ ‣ ετϦʔϛϯάαʔό͕ඞཁ ϑΝΠϧΛ ׂͯ͠ૹ৴ ड͚औͬͨͱ͜Ζ͔Β ࠶ੜ͠,
࠶ੜࡁΈͷͷഁغ μϯϩʔυ৴ σʔλ͕Βͳ͍ͨΊ ࠶ੜ͢Δͨͼʹσʔλ Λμϯϩʔυ͢Δඞཁ͕͋Δ
࣍ 1. HTML 2. WebϖʔδͰ༻͞ΕΔը૾ܗࣜ 3. XML 4. CSS 5.
εΫϦϓτݴޠ 6. DOM 7. JSON 8. ϑΟʔυ 9. ϚΠΫϩϑΥʔϚοτ 10.Իɾಈը৴ 11.ϝσΟΞλΠϓ
ϝσΟΞλΠϓ • ϝσΟΞλΠϓ Ӿཡʹ༻͢ΔػثͷछྨΛࢦఆ͢Δํ๏ • ػثʹΑͬͯը໘ͷେ͖͞දࣔํ๏͕ҟͳΔ ‣ ϓϦϯλʔ ‣ PC
‣ ࣈσΟεϓϨΠ ‣ εϚʔτϑΥϯ • ͦΕͧΕͷػثʹ͋ͬͨσβΠϯΛࢦఆՄೳ
ϝσΟΞλΠϓ • ϝσΟΞλΠϓͷྫ ϝσΟΞλΠϓ छྨ TDSFFO 1$ͷεΫϦʔϯ UUZ จࣈ෯͕ݻఆͷػث UW
ςϨϏ QSPKFDUJPO ϓϩδΣΫλʔ CSBJMMF ࣈσΟεϓϨΠ BVSBM TQFFDI Ի߹ػث BMM શͯͷϝσΟΞ
ϝσΟΞλΠϓ • HTMLͰࢦఆ͢Δํ๏ • CSSͰࢦఆ͢Δํ๏ <html> <head> <link rel="stylesheet" type="text/css"
media="screen, tv" href=“screen.css”> <link rel="stylesheet" type="text/css" media="projection" href=“projection.css"> <link rel="stylesheet" type="text/css" media="braille" href=“braille.css"> </head> <body> d(^_^o) </body> </html> ࣈεΫϦʔϯͷ߹, braille.cssΛద༻͢Δ @media screen,tv { body {font-size: large;} } @media projection { body {font-size: small;} } @media braille { body {font-size: large;} } - @media <media-type>ͷܗͰࢦఆ͢Δ - ରͷϝσΟΞ͕ෳଘࡏ͢Δ߹, ΧϯϚ۠ΓͰࢦఆ
ࢀߟαΠτ
ࢀߟαΠτ • ͜ͷҰͰશ෦Θ͔Δ Webٕज़ͷجຊ, ιϑτόϯΫΫ ϦΤΠςΟϒ, 2017 • Descrete Cosine
Transform https://en.wikipedia.org/wiki/Discrete_cosine_transform • A new image format for the Web https://developers.google.com/speed/webp/ • JavaScript͕ḷͬͨมભ https://qiita.com/naoki_mochizuki/items/ cc6ef57d35ba6a69117f
ࢀߟαΠτ • DOM https://developer.mozilla.org/ja/docs/DOM • RSS https://developer.mozilla.org/ja/docs/Archive/RSS • schema.orgͰߏԽϚʔΫΞοϓʂϦονεχϖοτ දࣔͰΫϦοΫΛվળ
https://promonista.com/schema-org/ • microformats.org http://microformats.org/wiki/Main_Page