2020-04 
λ§ν¬ & μ½μ거리
Top Front-End Development YouTube Channels
YouTubeμλ λ€μν FE κΈ°μ μ½ν μΈ λ€μ΄ λμ³λμ§λ§ κ·Έλ€ μ€ λ³΄μμ κ°λ € λ΄λ κ²μ μ½μ§ μλ€. μμ€ λμ μ½ν μΈ λ₯Ό μ°Ύκ³ μλ€λ©΄ λ§ν¬μμ μκ°νλ μ±λλ€μ ν° λμμ΄ λ κ²μ΄λ€.
JavaScriptλ‘ νμ, κ°μλ¨Έμ λ± λ‘μ° λ 벨 μμ ꡬνμ μκ°νλ 'Low Level JavaScript', λ€μν CSS λ μ΄μμλ€μ κΈ°μ μ λ΄μ©λ€μ λ€λ£¨λ 'LayoutLand' λ±μ μ±λλ€μ νμΈν μ μλ€.
10 Rules Of Thumb In UI Design
UIμμ λ°λ₯΄λ©΄ μ’μ κ°μ΄λ 10κ°μ§λ₯Ό μ μνκ³ μλ€. μ΅μ λ°©μμ UIλ₯Ό κ°λ°νλ FE κ°λ°μκ° μμ§νκ³ μμΌλ©΄ μ’μ λ΄μ©λ€μ΄λ€.
λ΄λͺ¨νΌμ¦μ μλ‘μ΄ UI νΈλ λκ° λ μ μμκΉ?
μλμ λ°λΌ UI νΈλ λλ λ³νλ€. 2000λ λ νλ°μλ νμ€μ μ¬λ¬Όμ±μ κ·Έλλ‘ νννλ 'μ€νμ΄λͺ¨νΌμ¦'(Skeuomorphism)μ΄ μ ννλ€. κ·Έ μ΄ν iOS 7μ κΈ°μ μΌλ‘ νλ« ν λμμΈμ΄ λμΈκ° λμκ³ , νμ¬λ νλ« ν λμμΈμ κ·Έλ¦Όμλ₯Ό λν ꡬκΈμ λ¨Έν°λ¦¬μΌ λμμΈμ΄ UI νΈλ λλ₯Ό μ£Όλνκ³ μλ€. μ΄λ€μμ μ΄λ€ UI νΈλ λκ° μμ₯μ μ§λ°°ν κΉ?
'λ΄λͺ¨νΌμ¦'(Neumorphism)μ΄λΌκ³ λΆλ¦¬λ μλ‘μ΄ λμμΈ μ€νμΌμ΄ λλλκ³ μλ μμ¦, μ΄κ²μ΄ ꡬ체μ μΌλ‘ μ΄λ€ μ€νμΌμ΄κ³ μμΌλ‘ UI νΈλ λλ₯Ό μ΄λμ΄ λκ° μ μμμ§ κ°λ₯μ±κ³Ό νκ³μ λν΄ μ κΈμμ νμΈν΄λ³΄μ.
Functional Programming for JavaScript Developers
μλ°μ€ν¬λ¦½νΈ κ°λ°μλ₯Ό μν ν¨μν νλ‘κ·Έλλ°μ λν μλ¦¬μ¦ κΈμ νμΈν μ μλ€.
μ€λμ μ 곡κ°λ κΈμ΄κΈ΄ νμ§λ§, λ€μμ μ리μ¦λ ν¨μν νλ‘κ·Έλλ° μ¬κ³ μ λ°©λ²μΌλ‘μ μ κ·Όμ λμμ μ»μ μ μλ€.
- So You Want to be a Functional Programmer (νκΈ λ²μ)
(*μλ¬Έμ μ΄ 6κ° μλ¦¬μ¦ κΈλ‘ μμ±λμμ§λ§, νκΈ λ²μμ 5νκΉμ§ μ§νλμλ€.) Β
Front-End Dev Tools For increased Productivity
FE κ°λ°μλ€μ΄ UI/UX μμ μ λ³΄λ€ λΉ λ₯΄κ³ ν¨μ¨μ μΌλ‘ μ§νν μ μκ² λμμ€ μ μλ 10μ¬ κ°μ μ¨λΌμΈ λꡬλ€μ μκ°νλ€. Β
An abbreviated history of JavaScript package managers
μ΄ κΈμ ν¨ν€μ§ λ§€λμ μΈ npm, Yarn κ·Έλ¦¬κ³ pnpmμ λ±μ₯ λ°°κ²½κ³Ό ν¨κ» μ΄λ€ λ¬Έμ λ€μ ν΄κ²°νλμ§μ λν΄ μκ°μ νλ¦μ λ°λΌ λ°μ λμ¨ ν¨ν€μ§ λ§€λμ λ€μ κ°λ΅ν μμ¬λ₯Ό λ€λ£¨κ³ μλ€.
κ°λ Ή npmμ v1μμ Dependency hellμ ν΄κ²°νκΈ° μν΄ λ±μ₯νκ³ , μ΄ν v3μμλ Flattened dependency κ΄λ¦¬λ‘ κΉμ΄μ§λ μλΈ λλ ν°λ¦¬ λ¬Έμ ν΄κ²°μ μν¨ μ΄μλ€λ λ΄μ©λ€μ μκ°νλ€.
5 Questions Every Unit Test Must Answer
λλΆλΆμ κ°λ°μλ€μ λ¨μ ν μ€νΈλ₯Ό μμ±ν΄μΌ νλ μ¬μ€μ μ μκ³ μμ§λ§, λ§μ κ²½μ° λ¨μ ν μ€νΈμ νμ μμλ€μ 무μμΈμ§ μ μμ§ λͺ»νλ€λ μ μ΄λ€. ν΄λΉ κΈμμλ μ μ μμ μ μ€μ κ²½νμ κΈ°λ°μΌλ‘ μ€ν¨νμ§ μλ μ’μ ν μ€νΈλ₯Ό μμ±νκΈ° μν΄ μ€μ€λ‘ μ§λ¬Έν΄ λ΄μΌ νλ λ€μμ 5κ°μ§ νλͺ©λ€μ μκ°νλ€.
- What are you testing?
- What should it do?
- What is the actual output?
- What is the expected output?
- How can the test be reproduced?
React+TypeScript Cheatsheets
TypeScriptμ Reactλ₯Ό μ¬μ©ν νλ‘μ νΈ κ°λ°μμ μ°Έκ³ ν μ μλ μ€ν κ°μ΄λ(Cheat Sheet)λ₯Ό μ 곡νλ€. μ΄ 4κ°λ‘ λΆλ₯λ κ°μ΄λλ₯Ό μ κ³΅ν΄ κ°μ νμμ±μ λ°λ₯Έ μ κ·Όμ΄ κ°λ₯νλ€.
- Basic: React κ°λ°μμ TS μ μ©μ μν κΈ°λ³Έ κ°μ΄λ
- Advanced: κ³ κΈ μ¬μ©κ³Ό μ¬μ¬μ© κ°λ₯ν μ½λ μμ± κ°μ΄λ
- Migrating: Plain JS, Flow μ½λλ€μ TS λ§μ΄κ·Έλ μ΄μ κ°μ΄λ
- HOC: κ³ μ°¨ν¨μ(High Order Component) μμ± κ°μ΄λ
Deno 1.0 will be released May 13, 2020
Node.jsλ₯Ό κ°λ°νλ Ryan Dahlμ΄ 2018λ μλ‘κ² μμνλ TypeScript λ°νμ μμ§μΈ Deno 1.0 λ²μ μ 곡κ°κ° 5μ 13μΌ λ¦΄λ¦¬μ€λ μμ μ΄λΌκ³ νΈμμ ν΅ν΄ λ°νλ€.
νν 리μΌ
GitHub Learning Lab
GitHubλ μ§λ 2018λ 4μ GitHubμ μ¬μ©λ°©λ²λ€μ λ°°μΈ μ μλ μ¨λΌμΈ κ΅μ‘ λκ΅¬μΈ GitHub Learning Labμ λ°ννμλ€.
νμ¬λ GitHub μ¬μ©λ°©λ²μ κ΅ννμ§ μκ³ λꡬμ μΈμ΄(Python, Node, Java, Ruby, TensorFlow λ±), DevOps λ±μ λ€μν μ½μ€κ° μΆκ°λμκ³ λͺ¨λ 무λ£λ‘ νμ΅ν μ μλ€.
λ€λ₯Έ μ¨λΌμΈ κ΅μ‘ μλΉμ€λ€ λ³΄λ€ μ’μ μ μ λ°λ‘ GitHub νλ«νΌμ κΈ°λ°ν΄ κ΅μ‘μ΄ μ§νλλ€λ μ μΌλ‘, μ νν μ½μ€λ μμ μ GitHub μ μ₯μλ‘ clone λκ³ μ΄ν κ³Όμ μ μλμΌλ‘ λ±λ‘λλ μ΄μμ PR λ±μ ν΅ν΄ μ§νλλ€.
React Router v6 in Three Minutes
React Routerμ μ°¨κΈ° λ©μ΄μ λ²μ μΈ v6μ μλ‘μ΄ λ³νλ€μ μκ°νλ€. κ°μ₯ ν° λ³νλ‘λ λ²λ€ ν¬κΈ°κ° μ΄μ λ²μ (v5)μ λΉν΄ ~70% μ©λμ΄ κ°μλμκ³ , μλ‘μ΄ Hooks λ° μ»΄ν¬λνΈλ€μ λ³νμ λν λ΄μ©μ μκ°νλ€.
νμ¬ μμ μμμ v6 μ΅μ λ²μ μ μ§λ 2μ 곡κ°λ v6.0.0-alpha.2 μ΄λ€.
Smooth Scrolling Sticky ScrollSpy Navigation
μ¬μ΄λ λ° λ΄λΉκ²μ΄μ μ ν΅ν΄ νμ΄μ§ λ΄ μνλ μ§μ μΌλ‘ λΆλλ¬μ΄ νμ΄μ§ μ€ν¬λ‘€μ ν΅ν΄ μ΄λνλ νμ΄μ§ κ΅¬μ± λ°©λ²μ μκ°νλ€.
μμ±λ λ°λͺ¨: https://codepen.io/bramus/pen/ExaEqMJ
μ½λμ λꡬ
corona-cli
COVID-19 μ μΈκ³ νμ°μ λ°λΌ, κ΄λ ¨ λꡬλ€μ΄ κ°λ°λμ΄ κ³΅κ°λκ³ μλ€. μ΄λ€ μ€, corona-cli
λ ν둬ννΈ νκ²½(CLI)μμ κ°λ¨νκ² μ μΈκ³ κ΅κ°λ€μ νμ¬ μ§ν κ°μ νμΈν μ μκ² νλ€.
$ npm i -g corona-cli ## λλ μ€μΉμμ΄ νλ²λ§ μ€ννκ³ μΆλ€λ©΄ 'npx corona-cli'
$ corona # μ μΈκ³ ν΅κ³ μΆλ ₯
$ corona <κ΅κ°λͺ
> # νκ΅μ μν©μ 'corona korea'λ₯Ό μ€ν
κ΄λ ¨λ λ€μμ νλ‘μ νΈλ€λ ν¨κ» μ°Έκ³ ν΄ λ³΄λ©΄ μ’λ€.
- covid19 λ§€μΌ 3μ°¨λ‘ GitHub Actionμ ν΅ν΄ μ λ°μ΄νΈλλ COVID-19 μκ³μ΄ JSON ν¬λ§· λ°μ΄ν° https://pomber.github.io/covid19/timeseries.json
- Awesome Coronavirus κΈ°μ , λꡬ λ±μ μ μ©ν 리μμ€λ€μ λͺ¨μμ μ 곡νλ "Awesome" νλ μ΄μ μ ννμ κ°μ΄ COVID-19 κ΄λ ¨ κ°λ° 리μμ€λ€μ λͺ©λ‘μ μ 곡νλ€.
CodeTour
CodeTourλ VS Code μ΅μ€ν μ μΌλ‘, μ¬μ©μμ μ½λ λ² μ΄μ€λ₯Ό κΈ°λ°μΌλ‘ ν μΈν°λν°λΈ λμλ§ κ°μ΄λλ₯Ό μμ±νκ±°λ λλ μ¬μν μ μκ² νλ€.
tsParticles
κ°λ¨νκ² particleμ λ§λ€ μ μκ² ν΄ λ§μ λ§μ μ¬μ©λ€λ‘λΆν° μΈκΈ°λ₯Ό μ»μλ Particle.js(2017λ λ§μ§λ§ μ λ° λ°μ΄νΈ νλ‘ κ°λ° μ€λ¨ μν) νλ‘μ νΈμ TS ν¬ν λ²μ μ΄λ€.
React Blog
GitHubμ μ΄μλ₯Ό λ±λ‘νλ©΄ κ°μΈ λΈλ‘κ·Έμ κΈλ‘ μ ννμ¬ μ£Όλ λκ΅¬λ‘ GitHub μ΄μμμ μ¬μ©λλ 리μ‘μ Emojiλ μ¬μ© κ°λ₯νλ€.
μ¬μ©λ°©λ²μ react-blog-github νλ‘μ νΈλ₯Ό clone ν ν, κ°μΈ access ν ν°κ³Ό GihubAppμ μμ±νκ³ κ°λ¨ν μ€μ μ 보λ₯Ό λ΄λ νμΌμ λ§λ€λ©΄ λͺ¨λ νκ²½μ€μ μ΄ μλ£λλ€.
μ΄ν, μμ μ νλ‘μ νΈμ μ΄μλ₯Ό μμ±νκ³ 'blog' λ μ΄λΈμ λ€λ κ²μΌλ‘ λΈλ‘κ·Έμ μλ‘μ΄ κΈμ΄ ν¬μ€ν λλ€.
Live demo: GitHub Issue β λ°νκΈ
engine262
JavaScriptλ‘ μμ±λ JavaScript(ECMA-262) μμ§μΌλ‘ κ°λ°μλ€μ΄ μλ‘μ΄ κΈ°λ₯μ μ μνκ² νλ‘ν νμ ννκ³ νμν μ μλ μλλ°μ€λ₯Ό κ°λλ‘ νλ λꡬλ€.
μ΄μ μ μ¬νμ§λ§, κ°κΈ° λ€λ₯Έ λͺ©μ μΌλ‘ κ°λ°λκ³ μλ μ μ¬ν JavaScript μΈν°ν리ν°λ€μ λ€μκ³Ό κ°λ€.
- https://github.com/facebook/prepack
- https://github.com/mozilla/narcissus
- https://github.com/NeilFraser/JS-Interpreter
- https://github.com/metaes/metaes
- https://github.com/Siubaak/sval
Sarus
WebSocketμ λΉμ μμ μ’ λ£μ λ°λ₯Έ μ΄λ ν μλ΅λ λ°μ μ μλ€λ λ¬Έμ μ μ ν΄κ²°νκΈ° μν JavaScript WebSocket λΌμ΄λΈλ¬λ¦¬λ€.
Redux Toolkit
Redux Toolkit(μ΄μ νλ‘μ νΈλͺ "Redux Starter Kit")μ λͺ¨λ²μ¬λ‘κ° μ μ©λ νμ€μ μΈ Redux λ‘μ§ μμ± μ 곡μ λͺ©νλ‘ νλ©°, Redux μ¬μ© μ κ²ͺκ² λλ λ€μμ 보νΈμ μΈ λ¬Έμ λ€μ ν΄κ²°νκΈ° μν΄ κ°λ°λμλ€.
- Redux μ€ν μ΄ μ€μ μ 볡μ‘μ±
- Reduxκ° μ μ©ν μμ μ μννλλ‘ λ§λ€κΈ° μν΄ μλ§μ ν¨ν€μ§λ₯Ό μΆκ°ν΄μΌ νλ λ¬Έμ
- Reduxμλ λ무 λ§μ boilerplate μ½λκ° νμν λ¬Έμ
# κ°μ₯ κ°νΈν μ¬μ©λ°©λ²μ CRAλ‘ νλ‘μ νΈ μμ± μ Redux+JS ν
νλ¦Ώμ μ¬μ©νλ κ²μ΄λ€.
npx create-react-app my-app --template redux