Bagian ujung depan pada DUMP2020: kami akan menjadi pelopor bahwa akan ada rumah penuh lagi. Laporan teratas tahun lalu dan topik ini

Siapa yang setuju bahwa front-end modern itu sulit, angkat tangan! Untuk apa kita mengatur Webpack? Mengapa implementasi RSK memerlukan penulisan begitu banyak kode, dan apakah kita benar-benar membutuhkannya dengan biaya itu? Siapa yang harus disalahkan dan apa yang bisa kita, sebagai pengembang, lakukan?

Kami mencoba menjawab ini dan ratusan pertanyaan lainnya di bagian Frontend. Dan dari tahun ke tahun, topik menjadi lebih beragam dan hardcore. Dan motif utama bagian ini adalah eksperimen.
Lihat di bawah potongan, yang bereksperimen pada apa yang tahun lalu, dan apa yang akan mereka katakan dan tunjukkan dalam hal ini



Tema 2019 Teratas


Di DUMP Yekaterinburg tahun lalu, tempat pertama adalah laporan Alexander Korotaev (Tinkoff.ru). Semua orang tahu bahwa WebGL sangat cepat. Saya ingin segera menulis ulang semua yang ada di dalamnya, tetapi teknologinya sepertinya terbang ke web dari planet lain. Standarnya hampir 9 tahun, dan ada sangat sedikit spesialis di dalamnya.

Alexander berbicara tentang cara menggambar 2D dengan cepat, tetapi sederhana, menggunakan game sebagai contoh, tanpa menyumbat kepalanya dengan matriks dan API yang kompleks. Laporan ini membahas konsep pre-rendering, shader, dan menggunakan pohon Bereaksi untuk dengan cepat menggambar di pesawat.


Vitaly Dmitriev dari 404Group mengumpulkan rumah penuh yang sama tentang topik pemrograman reaktif . Vitaliy mengatakan bahwa paradigma reaktif telah diterapkan selama bertahun-tahun dalam gadget dan ekosistem digital yang mengelilingi kita. Setiap hari kami menggunakan perangkat yang dapat mengontrol perangkat lain, tetapi jika kami mencoba mereproduksi logika mereka dalam aplikasi kami, kami mendapatkan sistem proaktif yang sangat diperluas. Mengapa?

Banyak sekolah dan tutorial mengajarkan kita cara membuat entitas yang bertanggung jawab langsung untuk mengelola komponen tertentu. Dalam proyek-proyek besar yang kompleks, setelah beberapa tahun, ini berubah menjadi mimpi buruk yang membingungkan dan tidak ada alat modern yang dapat menyelesaikan masalah ini sementara pengembang menulis kode proaktif.

Untuk cara berpikir reaktif daripada proaktif, lihat pembicaraan di bawah ini:


Alexandra Shinkevich berbicara tentang bagaimana menerapkan standar pengembangan sehingga tidak ada yang terluka . Hampir setiap tim memiliki perdebatan yang sedang berlangsung tentang isu-isu topikal: "Tab atau spasi?", "Apakah Anda perlu membuat lekukan di antara tanda kurung?", "Kutipan tunggal atau ganda?", "Apakah Anda perlu meletakkan tanda koma di akhir baris?". Dan ini baru awal dari daftar. Tetapi apakah benar-benar perlu untuk membahas ini setiap kali proyek baru dimulai, peninjauan kode dilakukan, atau apakah pengembang baru datang ke tim?


Di Kazan DUMP, Denis Kolesnikov dari Avito menceritakan kisah sulit memperbarui tumpukan teknologi dalam sebuah proyek dengan sejarah panjang . Ini hampir seperti memilah-milah mesin pesawat dengan cepat. Denis menceritakan bagaimana secara iteratif, secara progresif mereka mengubah front-end di Avito, mengimplementasikan rendering server, manajemen dependensi dari microfronts, serta apa rake yang mereka temui dan kesimpulan apa yang mereka buat dari semua ini.

Laporan ini untuk pengembang menengah dan senior yang bekerja dengan basis kode terpusat besar (dan mereka yang ingin memotong basis kode ini).


Konten grafis setengah dari rata-rata halaman web. Untuk mempersiapkan bagian ini dengan benar, Anda perlu memahami bagaimana gambar disusun dan apa yang dapat Anda lakukan dengannya .

Polina Gurtova (Evil Martians) menganalisis anatomi berbagai format (PNG, JPG, WebP, SVG, dan lainnya) dan memberi tahu cara memilih yang benar.

Dia segera menjelaskan mengapa memilih format hanyalah langkah kecil di jalur optimisasi yang menyenangkan dan memberi tahu Anda apa yang harus dilakukan selanjutnya.


SvelteJS adalah salah satu kerangka kerja JavaScript yang paling cepat berkembang. Bisakah dia pindah dari sudut pandang React, Angular, dan Vue?

Pavel Malyshev, pengelola proyek dan fasilitator komunitas berbahasa Rusia, berbicara tentang keadaan terkini kerangka kerja SvelteJS, ekosistem dan komunitasnya, serta mengapa itu bukan โ€œkerangka kerja JS lainโ€ dan Anda harus melihatnya lebih dekat.


Pada peringatan DUMP2020 di Yekaterinburg, aula bagian Frontend sekarang akan menampung 400 orang. Kami setuju bahwa ruangan ini akan diisi 100% dalam beberapa laporan.

Panitia program seksi: Polina Gurtovaya (Evil Martians) dan Yegor Khodyrev (Tochka) berbicara tentang topik apa yang sedang menunggu dan mana yang sudah diumumkan.

Konsep dan aplikasi DUMP2020


Kami mencari laporan dalam bahasa Rusia dan Inggris yang berlangsung 30-40 menit. Jika Anda belum pernah melakukan di mana pun sebelumnya - tidak ada masalah. Kami akan membantu Anda memikirkan struktur, mengumpulkan konten, dan berlatih presentasi.

Untuk inspirasi, kami telah menyiapkan daftar topik yang menarik minat kami. Daftar ini tidak lengkap, kami terbuka untuk yang baru dan sedang mempertimbangkan aplikasi apa pun.

Topik utama



  • Alat: IDE, plugin, linter, pembangun
  • Metodologi, arsitektur, dan prinsip: SOLID, layanan mikro, BEM
  • Optimasi: kinerja, manajemen memori, WebAssembly
  • Pengembangan Server: Node.js, V8, ChakraCore
  • Manajemen Negara: Redux, MobX, Flux
  • Sinkronisasi dan penyimpanan data klien: REST, GraphQL, Soket Web
  • Pengembangan Seluler: PWA, ReactNative, VueNative
  • Aplikasi Desktop: Electron, NW.js
  • Keamanan: peretasan dan perlindungan, kerentanan di npm
  • ECMAScript: Fitur Spesifikasi Baru
  • Alternatif JS: Mengetik naskah, ClojureScript, Elm, Dart
  • Pengujian: Selenium, unit test, TDD
  • Kerangka Kerja: React, Angular, Vue
  • Gaya: Preprosesor, Modul CSS, CSS-in-JS, Komponen Bergaya
  • Gambar: SVG, WebGL, VR
  • Ketersediaan: semantik, ARIA, pembaca layar
  • Prototyping: Figma, sistem desain
  • Fan: IoT, Game Dev, eksperimen
  • Cerita: keberhasilan dan kegagalan, interaksi dengan bisnis
  • Lainnya: API Web, masa depan standar, sumber terbuka, pengelola paket, dll.

Anda dapat mengajukan laporan di sini .



Topik diumumkan tahun ini


Apakah kita memerlukan N (e / u) xt.js?
(Grigory Petrov, Evrone)

Dalam laporan tersebut, Grigory menggunakan dua kerangka kerja ini untuk berbicara tentang kesulitan utama dari pengembangan front-end modern dan bagaimana kita dapat mengatasinya: template yang sudah jadi, kode asli, atau arsitektur aplikasi baru. Pembicara akan menunjukkan kesulitan dari posisi "mengapa itu terjadi?" dan apa yang bisa dilakukan tentang itu.

GameDev di Frontend

Anna Blok (Bantuan Frontend, Perancang Layout Khas) dan Daria Pushkarskaya (Web Hero School)
Sebuah laporan tentang kemungkinan untuk mengubah arah jika Anda selalu bermimpi mengembangkan game.

Anna dan Daria akan menunjukkan daftar teknologi dan peluang yang dengannya game dibuat.
Dan pada akhirnya mereka akan mempresentasikan game mereka sendiri untuk menunjukkan bahwa tidak ada yang rumit.

Tentang Mercusuar
Seryozha Popov (League A. / HTML Academy)

Mercusuar melakukan semua pekerjaan kotor untuk kami, tetapi kami terus mengabaikannya. Setiap situs dan aplikasi harus diuji pada alat ini, karena di dunia modern front-end menjadi penting bukan hanya pada aplikasi apa yang ditulis, tetapi seberapa cepat memuat dan berapa banyak pengguna yang tersedia. Mercusuar lebih mudah digunakan daripada diabaikan. Sergey akan berbicara tentang masalah yang lebih penting daripada yang terlihat, dan bagaimana menyelesaikan masalah ini dengan Lighthouse.

WebAssembly: fitur baru dan masalah baru
Polina Gurtovaya (Evil Martians)

Dalam laporan ini kita akan memahami apa itu WebAssembly.

Mari kita bicara tentang WebAssembly sebagai format non-web, diskusikan bagaimana WebAssembly hidup di browser.

Menggunakan V8 sebagai contoh, mari kita lihat bagaimana JS dan WASM dijalankan. Mari kita coba memahami apa yang mempengaruhi kecepatan eksekusi JS dan WASM, dan dalam hal apa WASM lebih cepat. Dan akhirnya, kita akan membahas status teknologi saat ini dan kemungkinan penerapannya.

Mengelola monorepositori dengan NX
Anton Nikulin (Tinkoff.ru)

Saat ini, hampir semua aplikasi web besar terdiri dari banyak yang lebih kecil, yang, pada gilirannya, menggunakan perpustakaan yang berbeda. Jika setiap modul independen tersebut berada di repositori sendiri, kemudian memperbarui bahkan satu perpustakaan mulai memperbarui semua dependensi dalam rantai.

Memperbarui hari ini juga tidak sesederhana itu - pada setiap tahap rantai ini, Anda harus melewati jalur CI. Dan ini adalah masalah potensial baru: ketidakcocokan versi, tes yang hilang, versi yang ketinggalan zaman dan sebagainya. Jika memikirkan hal itu menyakitkan Anda, maka laporan ini untuk Anda.
Anton akan memberi tahu Anda betapa mudahnya menempatkan segala sesuatu dalam satu repositori menggunakan NX, bagaimana Anda dapat membagi aplikasi menjadi bagian-bagian kecil tanpa rasa sakit. Mari kita bicara bahwa itu akan memberi Anda cara menjualnya kepada tim dan bisnis. Kami melihat "di bawah tenda", dan kemudian melihat perangkap. Pada akhirnya, kami akan mencari cara menerapkan NX di rumah.



Ini hanya beberapa aplikasi yang berhasil dipertimbangkan oleh komite program, tetapi semakin banyak aplikasi, semakin baik programnya!

Apakah Anda ingin berbicara di konferensi pengembang terbesar di Distrik Federal Ural di Aula Kongres baru di aula untuk 400 orang?

Lamar sebelum terlambat.

Atau datang / datang ke DUMP pada 15 Mei untuk mendengarkan topik yang melewati penggiling daging brutal;)

Selain program utama, kami menjanjikan banyak hal menarik .

All Articles