Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
New in v20 Part 2
Search
4D Japan
July 13, 2023
Technology
0
130
New in v20 Part 2
4D Japan
July 13, 2023
Tweet
Share
More Decks by 4D Japan
See All by 4D Japan
4D 21
miyako
0
5
4D 20 R10
miyako
0
26
4D 20 R9
miyako
0
14
4D 20 R7 & R8
miyako
0
68
Unicodeの話 (2007)
miyako
0
24
Unicodeの話 (2008)
miyako
0
40
Google Apps Integration (2012)
miyako
0
36
Creating Custom Widgets (2012)
miyako
0
43
マルチスレッディングの仕組み (2016)
miyako
0
41
Other Decks in Technology
See All in Technology
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
250
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
580
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
340
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
620
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
230
プロポーザルに込める段取り八分
shoheimitani
1
470
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
220
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
380
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.5k
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
370
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
180
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
940
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Building an army of robots
kneath
306
46k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
450
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
120
The Language of Interfaces
destraynor
162
26k
Prompt Engineering for Job Search
mfonobong
0
160
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
W E E K 2 4D v20 WEBINAR
4D v20Ͱͷ৽ػೳ ۩ମྫ2
4D v20ͷ৽ػೳ- ϦετϘοΫεͰͷࣗಈߦߴػೳͷ֦ு • ࣗ 自自自自自自自 ‣ ߦ 行行行行行行行行行行行行行行行行行 行行行
4D v20ͷ৽ػೳ- ϦετϘοΫεͰͷࣗಈߦߴػೳͷ֦ு • ࣗಈߦߴػೳͱ ‣ ߦͷߴ͞Λಈతʹมߋ͢Δ͜ͱͰݟ͘͢͢Δ ‣ ྻܕͷϦετϘοΫεͰͷΈ༻Մೳʮͩͬͨʯ •
ίϨΫγϣϯ/ΤϯςΟςΟηϨΫγϣϯͰ༻Մ ‣ จͷςΩετϐΫνϟʔΛදࣔ͢ΔϦετϘοΫεͰ େ͍ʹޮՌ͕ظͰ͖Δ
4D v20ͷ৽ػೳ- Ϙλϯؔ࿈ͦͷ1 • ਫ 水水水水水 水水水水水水 ‣ ࠨ 左左左左左左左左左左左左左左左
CSSͰࢦఆՄೳʂ
4D v20ͷ৽ػೳ- Ϙλϯؔ࿈ͦͷ1 • ਫฏํἧ͑ΛઃఆՄೳʹ ‣ ࠨἧ͑ɺதԝἧ͑ɺӈἧ͕͑Մೳʹ • λΠτϧͱΞΠίϯΛྡͤ͞Δ͜ͱ͕Մೳʹ ‣
্هͷػೳͱΈ߹ΘͤΔ͜ͱͰද͕ࣔࡉ͔ʹઃఆՄೳ CSSͰࢦఆՄೳʂ
• Ϙ ボボボボボボボボボボ 4छ 種種種 6छ 種種 ‣ ϥ ララララララララララララララララララ
ラララララ ‣ Ҏ 以以 T T T T T T T T T T T T T T T T T T T T T T T T T T T ͷ4छ 4D v20ͷ৽ػೳ- Ϙλϯؔ࿈ͦͷ2
• Ϙλϯͷεςʔτը૾͕4छྨ͔Β6छྨʹ ‣ ϥδΦϘοΫεͱνΣοΫϘοΫεʹରͯ͠ઃఆՄೳ ‣ ҎલTrue/False/Rollover/Disableͷ4छ ‣ v20ͰTrue/FalseɺTrue Rollover/False Rolloverɺ
True Disable/False Disableͷ6छྨ 4D v20ͷ৽ػೳ- Ϙλϯؔ࿈ͦͷ2
4D v20ͷ৽ػೳ- ݕࡧͱஔ
4D v20ͷ৽ػೳ- ݕࡧͱஔ
4D v20ͷ৽ػೳ- ݕࡧͱஔ
4D v20ͷ৽ػೳ- σʔλΤΫεϓϩʔϥ
4D v20ͷ৽ػೳ- σʔλΤΫεϓϩʔϥ ҰཡϑΥʔϜ ৄࡉϑΥʔϜ ΫΤϦ Մೳ
4D v20ͷ৽ػೳ- σʔλΤΫεϓϩʔϥ • v v v ͔ か 4
4 ʹ ににににに ‣ ϒ ブブブブブブブブブ
4D v20ͷ৽ػೳ- σʔλΤΫεϓϩʔϥ • v20͔Β4Dʹ౷߹͞Εͨ ‣ ϒϥβͰදࣔՄೳ • ΞΫηεΩʔͰอޢ͕Մೳ ‣
ϑΟʔϧυ୯ҐͰඇදࣔʹ͢Δ ͜ͱՄೳ
ؓٳ ίϚϯυͱΫϥε
• ΦϒδΣΫτࢦͷجຊ ‣ ORDAࠓޙΫϥεϕʔε ‣ ωοτϫʔΫؔ࿈Ҿ͕ ෳࡶͳͷಘҙ 4D v20ͷ৽ػೳ- ίϚϯυͱΫϥε
COMMAND 4D.Class • खଓ͖ܕϓϩάϥϛϯά ‣ ॻ͍ͨॱʹ࣮ߦɺ͔Γ͍͢ • UIؔ࿈ίϚϯυ͕ϝΠϯ ‣ ίϚϯυʹΑͬͯ Ҿ͕ଟඞཁ 👍
IC Plugin FTP TCP 4D v20ͷ৽ػೳ- ίϚϯυͱΫϥε 4D.Transporter 4D.cURL…? cURL
ϝϦοτ͕ͨ͘͞Μʂ
IC Plugin FTP TCP 4D.SystemWorker 4D v20ͷ৽ػೳ- ίϚϯυͱΫϥε 4D.Transporter cURL
ϝϦοτ͕ͨ͘͞Μʂ
ωοτϫʔΫؔ࿈ͷ ৽ػೳ
• FTP(ϑΝΠϧసૹϓϩτίϧ) ‣ 4DͷICϓϥάΠϯͳͲͰ༻Մೳ ‣ ొ50Ҏ্લ(!)ͰɺηΩϡϦςΟʹෆ͕҆Δ • ۀքશମతʹFTP༻͠ͳ͍ํ ‣ ओཁϒϥβFTPػೳ͕2021ʹഇࢭ
- Edge1݄ɺFirefox6݄ɺChrome8݄ʹશഇࢭ 4D v20ͷ৽ػೳ- ϓϥάΠϯͰͳ͘cURL cURLΛ༻ʂ
• ϑΝΠϧͷૹड৴Λߦ͏ίϚϯυϥΠϯπʔϧ ‣ HTTPɺHTTPSɺFTPɺFTPSͳͲ༷ʑͳϓϩτίϧʹରԠ • OSʹϓϦΠϯετʔϧ͞Ε͍ͯΔ ‣ ݱߦͷOSͰ͋ΕՃͷಋೖෆཁ - macOSͰ͋Ε10.15Ҏ্ɺWindowsͰ͋Ε10Ҏ্Ͱ͋ΕΠϯετʔϧࡁΈ
‣ cURLͷΞοϓσʔτOS͕ߦͬͯ͘ΕΔ 4D v20ͷ৽ػೳ- cURLͱ
4D v20ͷ৽ػೳ- cURLͷ͍ํ • cURL4D͔ΒݟΔͱ֎෦ϓϩηεʹ͋ͨΔ LAUNCH EXTERNAL PROCESS
4D v20ͷ৽ػೳ- cURLͷ͍ํ • cURL4D͔ΒݟΔͱ֎෦ϓϩηεʹ͋ͨΔ 4D.SystemWorker
• cURLΛ༻͢Δʹ৽͍͠System WorkerΛ༻ ‣ System WorkerLAUNCH EXTERNAL PROCESSΛ ஔ͖͑Δ͜ͱ͕Ͱ͖Δ৽͍͠Ϋϥε •
LEPͱҧ͍ݱత ‣ ҾΦϒδΣΫτΛ͢/ࡉ͔ͳઃఆ͕Մೳ ‣ ίʔϧόοΫΛ༻͢Δ͜ͱͰ్தͰΞΫγϣϯΛىͤ͜Δ ‣ ਐḿόʔΛදࣔͨ͠ΓμϯϩʔυΛ్தͰࢭΊͨΓͰ͖Δ 4D v20ͷ৽ػೳ- cURLͱSystem WorkerΛΈ߹ΘͤΔ ඇಉظͰͷॲཧ
4D v20ͷ৽ػೳ- HTTPRequestΫϥε • H H H H Ϧ リリリリリリリリリリリリ
リリリ リ ‣ ί コ コ コココココココ コココココココココ ココココココ
4D v20ͷ৽ػೳ- HTTPRequestΫϥε • HTTP ϦΫΤετΛߦ͏ͨΊͷ৽͍͠Ϋϥε ‣ ίʔϧόοΫΛઃఆ͓ͯ͘͜͠ͱͰඇಉظͷಈ࡞͕Մೳ ‣ ͪΖΜಉظ࣮ߦՄೳ
‣ ίʔϧόοΫΠϕϯτʹॱ൪͕͋Δ͜ͱʹҙ • HTTP/3ͳͲͷ৽ػೳࠓޙΫϥεͷํʹͷΈ࣮͞ΕΔ ‣ ઌʹॻ͖͑Λߦ͓͚ͬͯରԠָ͕
4D v20ͷ৽ػೳ- WebSocketʹ͍ͭͯ • Ϧ リ リリ リ リリリリリリリリリリリリ W
W W W W W W W W Λ をを ‣ ௨ 通通通通通通通通通通 H H H H Ͱ でででで
4D v20ͷ৽ػೳ- WebSocketʹ͍ͭͯ • ϦΞϧλΠϜͳԠ͕ඞཁͳ߹ʹWebSocketΛ༻ ‣ ௨νϟοτͳͲʹHTTPͰෆ͖ ‣ WebSocketServerͱWebSocketConnectionͷ2छྨͷΫϥεΛ༻ -
WebSocketServerαʔόʔΛཧɺWebSocketConnection௨৴Λཧ ‣ ίʔϧόοΫΛ༻ͯ͠ΠϕϯτʹରԠ͢Δ • WebϥΠηϯεΛ͍࣋ͬͯΕՃϥΠηϯεෆཁ
ϝʔϧؔ࿈ͷ ৽ػೳ
• IMAPͷ৽ػೳˠϝʔϧϘοΫεͷIDͱಠࣗϑϥάͷઃఆ ‣ ϝʔϧϘοΫεͷIDΛऔಘ͢Δ͜ͱͰ໊শมߋͯ͠ಛఆ͕Մೳ ‣ Ωʔϫʔυ(ಠࣗϑϥά)Λઃఆ͢Δ͜ͱͰྫ͑ ʮ৽ؔ࿈ʯ/ʮॏཁސ٬ʯͳͲͷϑϥάΛϝʔϧʹઃఆՄೳ • POP3ͷ৽ػೳˠϝʔϧͷϔομʔ͚ͩΛऔಘ ‣
ϝʔϧͷऔࣺબҰཡද͕ࣔεϐʔυΞοϓ 4D v20ͷ৽ػೳ- ϝʔϧؔ࿈ͷ৽ػೳ
• v19Ҏ߱ICϓϥάΠϯΠϯετʔϧ͞Εͳ͍ ‣ ఏڙͦͷͷଓ͚ΒΕΔ • ࠓޙඪ४ϝʔϧίϚϯυҠߦ ‣ IMAP/POP3/SMTPΛΧόʔ͍ͯ͠Δ ‣ transporterΦϒδΣΫτ/ΦϒδΣΫτه๏Ͱ͍͍͢
4D v20ͷ৽ػೳ- Internet Commandsഇࢭ༧ఆ
• ͳͥඪ४ίϚϯυ͕͋Δͷʹ৽͍͠NetKit͕ඞཁͳͷ͔ ‣ Microsoft 365ͷOAuth 2.0ʹରԠ͢Δඞཁ͕͋ͬͨ ‣ Ϣʔβʔͱύεϫʔυ͚ͩͰෆे ‣ σόΠεೝূ·ͨੜମೝূ͔ΒಘΒΕΔτʔΫϯ͕ඞཁͱͳΔ
‣ τʔΫϯ͕औಘͰ͖ͨΒͦΕΛ༻ͯ͠ϝʔϧʹΞΫηε͕Մೳ 4D v20ͷ৽ػೳ- ৽͍͠NetKitίϯϙʔωϯτ
• OAuth 2.01ͭͷن֨ɺৄࡉαʔϏε͝ͱʹҟͳΔ ‣ MSʹMSͷɺGoogleʹGoogleͷɺͦΕͧΕͷ༷͕͋Δ ‣ ΧελϚΠζՄೳͳܗʹ͢ΔͨΊʹιʔεެ։ͨ͠ํ͕ϕλʔ 4D v20ͷ৽ػೳ- NetKitɺͳͥΫϥεͰͳ͘ίϯϙʔωϯτ?
OAuth 2.0 Microsoftͷ༷ Googleͷ༷ Facebookͷ༷
WEEK 2 ৼΓฦΓ
Webinar WEEK2 ৼΓฦΓ- UIؔ࿈ͷΞοϓσʔτ • ϦετϘοΫεͷࣗಈߦߴػೳ ‣ લྻܕݶఆͩͬͨɺࠓޙίϨΫγϣϯ/ESܕͰ༻Մೳʹ • ϘλϯͷΞοϓσʔτ
‣ λΠτϧͷۙදࣔ/εςʔτը૾ͷঢ়ଶ͕4͔Β6 • σʔλΤΫεϓϩʔϥʔͷ4Dͷ౷߹ • ϝιουΤσΟλʔͷݕࡧػೳ্
Webinar WEEK2 ৼΓฦΓ- ωοτϫʔΫؔ࿈(ϑΝΠϧసૹ)ͷ৽ػೳ • ϓϥάΠϯͰͳ͘cURL ‣ LAUNCH EXTERNAL PROCESS͔ΒSystemWorker
• HTTPRequestΫϥε ‣ ίʔϧόοΫΛ༻͢Δ͜ͱͰඇಉظͷϦΫΤετ • WebSocket௨৴ ‣ ํ/ϦΞϧλΠϜͳΓͱΓͷՄೳੑ
Webinar WEEK2 ৼΓฦΓ- ϝʔϧؔ࿈ͷ৽ػೳ • IMAP/POP3ͷ৽ػೳՃ ‣ Internet Commands͔Βશʹ͢Δ͜ͱ͕Մೳʹ •
NetKitίϯϙʔωϯτ ‣ OAuth 2.0ͱ͍͏ݱతͳೝূΛ࣮ݱ͢ΔͨΊʹඞཁ ‣ ιʔεެ։͞Ε͓ͯΓվมՄೳ
Webinar WEEK3 ༧ࠂ- CI/CDؔ࿈ • CI/CDؔ࿈ ‣ CI/CDͱԿ͔ ‣ tool4d/ίϯύΠϧͱϏϧυͷҧ͍/ϏϧυͷࣗಈԽ
etc… • ϥϯήʔδؔ࿈ ‣ σʔλετΞͷϩοΫɺϓϩύςΟͷܕએݴɺͳͲ
4D v20 Webinar Week2 - Thank you!