投稿時間:2023-03-19 16:09:11 RSSフィード2023-03-19 16:00 分まとめ(10件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
TECH Techable(テッカブル) 無人拠点や遠隔地にある機器のリモート保守を実現、IoT向けLTEルーターをソラコムが提供開始 https://techable.jp/archives/200110 ltewifi 2023-03-19 06:00:10
js JavaScriptタグが付けられた新着投稿 - Qiita JavaScriptの基礎 https://qiita.com/Jackoguro/items/ea778774bb18a0ea6fed const 2023-03-19 15:46:18
js JavaScriptタグが付けられた新着投稿 - Qiita ESModulesの、export default と export の違い https://qiita.com/skanno/items/ba278836d0369b259ca5 constgetagegtreturn 2023-03-19 15:35:30
js JavaScriptタグが付けられた新着投稿 - Qiita 【Vue】propsがArray・Objectの時default値にはファクトリー関数を使う https://qiita.com/yusuke1209kitamura/items/2b574c30c5751c959a97 arrayrequiredfalsedefault 2023-03-19 15:01:13
Linux Ubuntuタグが付けられた新着投稿 - Qiita When GNU GRUB appears and Ubuntu doesn't start https://qiita.com/RENOX/items/1418c7859ded295c0736 drive 2023-03-19 15:58:05
golang Goタグが付けられた新着投稿 - Qiita 【Golang】ECDSA 公開鍵から ECDH 鍵交換で共通鍵を作成する(楕円曲線ディフィー・ヘルマン鍵共有) https://qiita.com/KEINOS/items/db51a1a6e775a03a650f ecdsa 2023-03-19 15:20:37
Git Gitタグが付けられた新着投稿 - Qiita vimdiffでgitの差分を確認する方法を紹介します https://qiita.com/hachicombu/items/328b5569aeb37f0331a1 diffto 2023-03-19 15:29:29
海外TECH DEV Community Deep dive into How Web Browsers work (with illustrations) ⚙️🚀 https://dev.to/ruppysuppy/deep-dive-into-how-web-browsers-work-with-illustrations-249b Deep dive into How Web Browsers work with illustrations ️Browsers are now a part of everyday life but have you ever wondered how they work under the hood This article will take a closer look at the magic behind the scenes of web browsers Let s get started NavigationNavigation is the first step of loading a web page It happens when the user enters a URL in the address bar or clicks on a link DNS lookupThe first step is to find the IP address where the resources are located This is done by a DNS lookup The Domain Name System DNS Server is a server that is specifically used for matching website hostnames like www example com to their corresponding Internet Protocol or IP addresses The DNS server contains a database of public IP addresses and their corresponding domain namesFor example if you visit www example com the DNS server will return the IP address which is its corresponding IP address way TCP HandshakeThe next step is to establish a TCP connection with the server This is done by a way TCP handshake First the client sends a request to open up a connection to the server with a SYN packet The server then responds with a SYN ACK packet to acknowledge the request amp requesting the client to open up a connection Finally the client sends an ACK packet to the server acknowledging the request TLS handshakeIf the website uses HTTPS encrypted HTTP protocol the next step is to establish a TLS connection via a TLS handshake During this step some more messages are exchanged between the browser and the server Client says hello The browser sends the server a message that includes which TLS version and cipher suite it supports and a string of random bytes known as the client random Server hello message and certificate The server sends a message back containing the server s SSL certificate the server s chosen cipher suite and the server random a random string of bytes that s generated by the server Authentication The browser verifies the server s SSL certificate with the certificate authority that issued it This way the browser can be sure that the server is who it says it is The premaster secret The browser sends one more random string of bytes called the premaster secret which is encrypted with a public key that the browser takes from the SSL certificate from the server The premaster secret can only be decrypted with the private key by the server Private key used The server decrypts the premaster secret Session keys created The browser and server generate session keys from the client random the server random and the premaster secret Client finished The browser sends a message to the server saying it has finished Server finished The server sends a message to the browser saying it has also finished Secure symmetric encryption achieved The handshake is completed and communication can continue using the session keys Now requesting and receiving data from the server can begin Fetching resourcesAfter the TCP connection is established the browser can start fetching resources from the server HTTP RequestIf you have any experience with web development you will have encountered the concept of HTTP requests HTTP requests are used to fetch resources from the server It requires a URL amp the type of request GET POST PUT DELETE to be processed The browser also adds some additional headers to the request to provide additional context The first request sent to a server is usually a GET request to fetch an HTML file HTTP ResponseThe server then responds with an appropriate HTTP response for the given request The response contains the status code the headers amp the body Parsing HTMLNow comes the main section After the browser has received the HTML file it parses it to generate the DOM Document Object Model tree This is done by the browser engine which is the core of the browser Eg Gecko for Firefox Webkit for Safari Blink for Chrome etc Here is an example HTML file lt DOCTYPE html gt lt html gt lt head gt lt title gt Page Title lt title gt lt head gt lt body gt lt p gt Hello World lt p gt lt body gt lt html gt TokenizationThe first step for displaying the web page is to tokenize the HTML file Tokenization is the process of breaking up a string of characters into meaningful chunks for the browser called tokens Tokens are the basic building blocks of the DOM tree DOM Tree constructionLexing is the process of converting a sequence of tokens into a tree structure called the DOM tree The DOM tree is a tree data structure that represents the nodes in the HTML document NOTE If the page requires any external resources it will be handled as follows Non blocking resources are fetched in parallel Eg Images Deferring resources are fetched in parallel but are executed after the DOM tree is constructed Eg script WITH defer attribute amp CSS files Blocking resources are fetched and executed sequentially Eg script WITHOUT defer attribute Parsing CSSAfter the DOM tree is constructed the browser parses the CSS file to generate the CSSOM CSS Object Model This process is similar to the DOM tree construction using tokenization amp generation of the CSSOM Executing JavaScriptAs mentioned previously if the page requires a blocking script it will be fetched and executed instantly while the DOM tree construction is paused else the script will be fetched amp executed after the DOM tree construction is completed Regardless of when the script is executed it will be handled by the JavaScript engine which too like the browser engine varies from browser to browser JIT compilationAssuming you are familiar with the concept of interpreters amp compilers the JavaScript engine uses a hybrid approach called JIT Just in Time compilation JIT stands for Just In Time meaning unlike with a compiled language such as C where the compilation is done ahead of time in other words before the actual execution of the code with JavaScript the compilation is done during execution RenderingIt s finally time to render the page The browser uses the DOM tree amp CSSOM to render the page Render tree constructionThe first step is to construct the render tree The render tree is a subset of the DOM tree that contains only the elements that are visible on the page LayoutThe next step is to layout the render tree This is done by calculating the exact size amp position of each element in the render tree This step happens every time we change something in the DOM that affects the layout of the page even partially Examples of situations when the positions of the elements are recalculated are Adding or deleting elements from the DOMResizing the browser windowChanging the width height or the position of an element PaintingFinally the browser decides which nodes need to be visible and calculates their position in the viewport it s time to paint them render the pixels on the screen This phase is also known as the rasterization phase where the browser converts each element calculated in the layout phase to actual pixels on the screen Just like the layout phase this phase happens every time we change the appearance of an element in the DOM even partially Examples of situations when the positions of the elements are recalculated are Changing the outline of an elementChanging the opacity or visibility of an elementChanging the background color of an element Layering amp CompositingThe final step is to composite the layers This is done by the browser to optimize the rendering process Compositing is a technique to separate parts of a page into layers painting them separately and compositing as a page in a separate thread called the compositor thread When sections of the document are drawn in different layers overlapping each other compositing is necessary to ensure they are drawn to the screen in the right order and the content is rendered correctlyNOTE DOM updates specifically layout amp paint are extremely expensive operations which can be noticed significantly on low end devices So it s important to minimize the number of times it is triggered That s all folks Thanks for readingNeed a Top Rated Front End Development Freelancer to chop away your development woes Contact me on UpworkWant to see what I am working on Check out my Personal Website and GitHubWant to connect Reach out to me on LinkedInFollow me on Instagram to check out what I am up to recently Follow my blogs for bi weekly new Tidbits on DevFAQThese are a few commonly asked questions I get So I hope this FAQ section solves your issues I am a beginner how should I learn Front End Web Dev Look into the following articles Front End Development RoadmapFront End Project IdeasWould you mentor me Sorry I am already under a lot of workload and would not have the time to mentor anyone 2023-03-19 06:08:57
海外ニュース Japan Times latest articles Screen time has limited effects on toddlers’ development: Japan study https://www.japantimes.co.jp/news/2023/03/19/national/science-health/screen-time-children/ Screen time has limited effects on toddlers development Japan studyThe study also found that the negative effects of a day s screen time on young children can be reduced by letting them play outside for 2023-03-19 15:10:05
ニュース BBC News - Home UFC 286: Leon Edwards' title defence continues inspiring underdog story https://www.bbc.co.uk/sport/mixed-martial-arts/65003803?at_medium=RSS&at_campaign=KARANGA rocky 2023-03-19 06:40:26

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)