Front-end Developer Handbook 2019.pdf

(6288 KB) Pobierz
Front-end Developer
Handbook 2019
Written by
Cody Lindley
Sponsored by
Frontend Masters,
advancing your skills with in-depth, modern front-
end engineering courses
Overview:
This is a guide that everyone can use to learn about the practice of front-end
development. It broadly outlines and discusses the practice of front-end
engineering: how to learn it and what tools are used when practicing it in 2019.
It is specifically written with the intention of being a professional resource for
potential and currently practicing front-end developers to equip themselves with
learning materials and development tools. Secondarily, it can be used by managers,
CTOs, instructors, and head hunters to gain insights into the practice of front-end
development.
The content of the handbook favors web technologies (HTML, CSS, DOM, and
JavaScript) and those solutions that are directly built on top of these open
technologies. The materials referenced and discussed in the book are either best in
class or the current offering to a problem.
The book should not be considered a comprehensive outline of all resources
available to a front-end developer. The value of the book is tied up in a terse,
focused, and timely curation of just enough categorical information so as not to
overwhelm anyone on any one particular subject matter.
The intention is to release an update to the content yearly. This is currently the
fourth year an edition has been released.
What is in this Handbook:
Chapter
0
provides a lite recap of the year in front-end development and what may
be to come. Chapter
1
&
2
aim to give a brief overview of the discipline and practice
of front-end development. Chapters
3
&
4
organize and recommend learning paths
and resources. Chapter
5
organizes and list the tools used by front-end developers
and Chapter
6
highlights front-end information outlets.
Contribute content, suggestions, and fixes on github:
https://github.com/FrontendMasters/front-end-handbook-2019
Chapter 0. Recap of 2018 and Looking
Forward
0.1 — Recap of Front-end Development in 2018
React had several notable releases this past year that included,
lifecycle methods,
context API, suspense,
and
React hooks.
Microsoft buys Github.
Yeah, that happened.
Fonts created by CSS became a
thing.
What I used to call front-end driven apps, gets labeled
"serverless".
Unfortunately,
this term is
overloaded.
However, the term
JAMstack
does seem to be
resonating
with developers.
Google offered some neat tools this year to help make webpages load faster, i.e.
squoosh
and
quicklink.
Vue gets
more
Github stars
than React this year. But React remains dominant in
terms
of
use.
A solution similar to React, without a virtual DOM or JSX, is introduced
RE:DOM.
Alternatives to NW.js and Electron show up,
DeskGap
and
Neutralino.js.
In 2017 the
great
divide between a
front-end HTML & CSS developer
v.s.
front-end
application developer is realized/verbalized.
In 2018 that
divide has grown wider
and deeper
and more
people
start to
feel the divide.
This year, like most recent years, was stock full of app/framework solutions trying to
contend with the mainstream JavaScript app tools (i.e.
React, Angular, and Vue
etc...)
Let me list them for you.
Radi.js, DisplayJS, Stimulus, Omi, Quasar.
JavaScript frameworks start offering their own languages that compile to JavaScript
(e.g.
Mint).
CodeSandbox
evolves to become the dominant solution for online code sharing.
CSS Grid
and
CSS Flexbox
are fully supported in modern browsers and get taken for
some serious rides. But many are left
wondering
when to
use which one and how.
Many realize the long terms costs of bolted on type systems (e.g. TypeScript and
Flow). Some concluded bolted on systems are not unlike bolted on module systems
(i.e. AMD/Require.js) and come with
more issues than solutions.
Minimally, many
developers realize that if types are needed in large code bases, that bolted on
systems are not ideal in comparison to languages that have them baked in (e.g.
Reason, Purescript, Elm).
CSS Variables
gain
browser support
among modern web browsers
The flavors of
CSS in JS
exploded and
some
question the practice.
ES modules
are now usable in modern browsers and
dynamic imports
are close
behind. We are even seeing a shift in
tooling
around this fact.
Many realize that end to end testing is the starting point of doing tests correctly in
large part due to
Cypress
(i.e. Cypress first, then
Jest).
While
Webpack
was heavily used again this year, many developers found
Parcel
to
be easier to get up and running.
One of the most important questions asked this year was, what is the
cost of
JavaScript.
Babel 7 was released this year.
That's a big deal because the last major release was
almost three years ago.
Zgłoś jeśli naruszono regulamin