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
2022年度新卒技術研修「フロントエンド」講義
Search
excitejp
PRO
June 15, 2022
Technology
0
1.5k
2022年度新卒技術研修「フロントエンド」講義
フロントエンド技術の変遷に関する講義です。
- フロントエンド技術の変遷
- フロントエンドのフレームワーク
- ECMAScriptについて
excitejp
PRO
June 15, 2022
Tweet
Share
More Decks by excitejp
See All by excitejp
エキサイトホールディングス株式会社 - 会社説明 -
excitejp
PRO
0
18k
あつまれ!toBプロダクトの沼
excitejp
PRO
1
1.7k
excite_techcon2023__RDS_performance_insightと実行計画 との付き合い方__DBとINDEXを学ぼう
excitejp
PRO
3
1.4k
え?!デザイナーが一人になることってあるんですか?!
excitejp
PRO
1
400
KUROTEN紹介資料_202302
excitejp
PRO
0
180
【エンジニア向け】エキサイト株式会社SaaS事業部紹介資料
excitejp
PRO
0
2.8k
2022年度新卒技術研修「良いコードの書き方」講義
excitejp
PRO
0
1.5k
2022年度新卒技術研修「DNS」講義
excitejp
PRO
1
1.7k
2022年度新卒技術研修「エンジニアマインド」講義
excitejp
PRO
0
1.5k
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2025年12月度サービス・アップデート
oracle4engineer
PRO
0
220
2025年の医用画像AI/AI×medical_imaging_in_2025_generated_by_AI
tdys13
0
320
人工知能のための哲学塾 ニューロフィロソフィ篇 第零夜 「ニューロフィロソフィとは何か?」
miyayou
0
400
AWSと生成AIで学ぶ!実行計画の読み解き方とSQLチューニングの実践
yakumo
2
330
CQRS/ESになぜアクターモデルが必要なのか
j5ik2o
0
760
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
1
790
「アウトプット脳からユーザー価値脳へ」がそんなに簡単にできたら苦労しない #RSGT2026
aki_iinuma
9
4.5k
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
160
国井さんにPurview の話を聞く会
sophiakunii
1
350
Keynoteから見るAWSの頭の中
nrinetcom
PRO
1
170
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
6
3.1k
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
330
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
190
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
47
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.1k
Done Done
chrislema
186
16k
Embracing the Ebb and Flow
colly
88
4.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
30 Presentation Tips
portentint
PRO
1
180
HDC tutorial
michielstock
1
310
Building AI with AI
inesmontani
PRO
1
610
Transcript
フロントエンド フロントエンドの変遷から今どきまで iXIT 堀
はじめまして!iXITの堀です。 自己紹介 これまでサーバーサイド(C言語、Perl、ASPな ど)→インフラ&社内ヘルプデスク→フロントエン ドを経験。 最近はPM業をメインとしているためフロントエン ドの現場からは離れてしまっていますが、本日はフ ロントエンドの楽しさを知ってもらえればと思いま す。
01 フロントエンド技術の変遷 02 フロントエンドのフレームワーク 本日の内容 トピック 03 ECMAScriptについて
Web黎明期 1990年前半 IEとNetscapeによる第1次ブ ラウザ戦争。 静的にHTMLファイルを配 信するだけ。 フロントエンドエンジニア と言う区分けすらなかっ た。 動的HTML生成
1990年中盤 CGI, JavaServletなどクラ イアントからのリクエスト の内容をサーバが解釈しサ ーバ側でHTMLを作成しク ライアントに返す手法が流 行った。 DHTML 1990年後半 動的でインタラクティブな 表現が追加できることで話 題になったが当時のJS仕 様が貧弱だった上、ブラウ ザ間での差があった。 Ajax 2005年 非同期でサーバからデー タを取得する技術 フロントエンド技術の変遷 Firefox誕生 2004年 第2次ブラウザ戦争到来
jQuery登場 2006年 Ajaxの普及を後押し。 ブラウザ間の非互換性を ほとんど気にすること無 く簡潔なコードでDOM操 作、Ajax通信を可能とし た。 Chrome誕生 2008年
ブラウザ戦争が更に熾烈に Node.js登場 2009年 JSでサーバサイドを動か すことが出来ると話題に。 同時期にAngularJSも登場 しフロントエンド界隈がに ぎやかに。 React、Vue.js登場 2013年 Reactは旧Facebook社から 発表され、Virtual DOMとい う新しいレンダリング機能 が話題となり一気に普及し た。 遅れること9ヶ月、Vue.jsが 登場。 フロントエンド技術の変遷 npm登場 2010年 Node.jsにパッケージマ ネージャとして同梱され た。 モジュールを公開してシ ェアして再利用する文化 が定着し、JavaScriptプ ログラムの開発効率や品 質がかなり向上した。
旧Facebookが中心となって開発したJavaScriptのフレームワ ーク(Viewライブラリーと言われることもある) コンポーネントベースと呼ばれる考え方が取り入れられてい て、コンポーネントに分解(部品化)して管理できるようにな っている JSX記法(JSの中にHTMLタグを記載していく)による実装 CSS-in-JSやCSSフレームワークを利用してコーディング 処理が高速だがオブジェクトが増えるとCPUとメモリ消費も上 がる TypeScriptと相性が良い
【概要】 【特徴】 React フレームワーク について〜React編~ Reactを使ったアプリケーションフレームワーク。 サーバ機能を保持しているため、Webアプリケーションを実 施しやすい(Reactだけでは別途サーバモジュールを追加する 必要がある) アプリケーションの状態を保持できる ルーティングを自動生成出来る 【概要】 【特徴】 Next.js
JavaScriptのフレームワーク。 Javasciptに近い書き方が採用されているため導入ハードルが低 い。 props, emitなどを利用してデータ同期の機能が用意されている 公式で紹介されているライブラリーが多く拡張性が高い 「.vue」ファイル内にHTML, CSS, JSを記載する scoped属性を持つ<style>タグを利用して限定的なコンポーネン
トにスタイルが適用される 処理は高速でオブジェクト数が増えてもメモリ消費量は極端に は増えないが処理速度がReactより若干遅くなる Vue3でTypeScriptがサポートされた 【概要】 【特徴】 Vue.js Reactを使ったアプリケーションフレームワーク。 サーバ機能を保持しているため、Webアプリケーションを実 施しやすい(Reactだけでは別途サーバモジュールを追加する 必要がある) アプリケーションの状態を保持できる ルーティングを自動生成出来る 【概要】 【特徴】 Nuxt.js フレームワーク について〜Vue編~
高速で動作するビルドツール Vue.js, Reactのビルドもサポート 簡単に開発環境を構築することが可能(Vue3 x VITEは1行で完 了) ※Node.jsはver.12以降が必要 高速なHMR(Hot Module
Replacement) Vue CLIより高速 【概要】 【特徴】 VITE(ヴィート) フレームワーク について〜VITE編~ npm init vite@latest 開発環境の構築 yarn create vite または 実際に作ってみましょう!
ECMAScript JSの標準化を行う際に基本部分の仕様を定めたのがECMAScript です。 JSはECMAScriptの仕様に則って開発されています。 ECMAScriptは改定が行われるたびにバージョンが新しくなりま すが、JSにバージョンはありません。 Javascriptとの違い(以下JSと省略) ECMAScriptのバージョン(直近のもののみ)
ECMAScript 1997年の初版から改定を続けているECMAScriptですが、2015年 のES2015で大きな変更がありました。 一部抜粋して紹介します。 ES2015 ES2015以前はvarによる変数宣言のみでした。 スコープがグローバルで再代入可能なのでバグが多発する恐れがあった。 •変数宣言(let, const) ES2015以前はfunctionで記載。
アロー関数が導入され、=>で関数宣言が行えるようになった。 •アロー関数 Promiseは非同期処理を扱うオブジェクト。ES2015以前より使われていた コールバックより簡潔かつ明瞭に非同期処理が出来るようなった。 ES2017で追加されたsync/awaitはPromiseを使った非同期処理に対して新 しい構文。 現在はasync/awaitの方が主流となっている。 •非同期処理(Promis, async/await)
参考URL QiitaやCodepenなどを活用しよう! https://qiita.com/tags/react https://qiita.com/tags/vue.js https://zenn.dev/ https://risingstars.js.org/2021/ja Qiitaをはじめ多くの技術情報がWebに載っているので 活用しよう! https://codepen.io/ https://jsfiddle.net/
https://ja.reactjs.org/tutorial/tutorial.html https://v3.ja.vuejs.org/guide/introduction.html CodepenやJSFiddleを利用してコードを書いてみよ う!