Trend teknologi pembangunan web 2019

Pengenalan

Transformasi digital merangkumi lebih banyak bidang kehidupan dan perniagaan yang berbeza setiap tahun. Jika perniagaan ingin berdaya saing, tapak maklumat biasa tidak lagi mencukupi, aplikasi mudah alih dan web diperlukan yang bukan sahaja memberikan maklumat kepada pengguna, tetapi juga membolehkan mereka melaksanakan fungsi tertentu: menerima atau memesan barangan dan perkhidmatan, menyediakan alatan.

Trend teknologi pembangunan web 2019

Sebagai contoh, bank moden tidak lagi mencukupi untuk mempunyai tapak web dengan maklumat; mereka perlu mempunyai alatan dalam talian untuk pelanggan mereka, akaun peribadi yang membolehkan pengguna mengurus akaun, pelaburan dan pinjaman. Malah perniagaan kecil memerlukan alat yang mudah untuk meningkatkan penukaran, seperti membuat temu janji dengan doktor atau pendandan rambut, atau menempah meja di restoran atau bilik permainan kanak-kanak untuk majlis hari jadi.

Dan pemilik sendiri perlu menerima maklumat tepat pada masanya dalam bentuk yang mudah mengenai keadaan syarikat mereka, sebagai contoh, pengumpulan data statistik dan analitik untuk jabatan pengeluaran yang berbeza, atau produktiviti jabatan. Selalunya, setiap jabatan mengumpul data ini dengan cara tersendiri, malah mungkin menggunakan alat yang berbeza dan pemilik perlu menghabiskan banyak masa peribadi untuk memahami semua ini, secara tidak langsung atau langsung ini boleh menjejaskan kecekapan syarikat dan, akhirnya, keuntungan. Transformasi digital dan pembangunan aplikasi web atau mudah alih juga akan membantu di sini.

Teknologi tidak berdiam diri dan sentiasa berkembang, dan apa yang digunakan beberapa tahun lalu mungkin tidak lagi relevan hari ini, atau apa yang tidak boleh dilakukan beberapa tahun lalu telah menjadi kenyataan. Terdapat lebih banyak alat moden yang membantu anda membuat web dan aplikasi mudah alih dengan lebih pantas dan lebih baik. Berdasarkan pemerhatian dan pengalaman peribadi, saya ingin berkongsi visi saya tentang teknologi dan alatan yang mana akan menjadi permintaan dalam masa terdekat dan mengapa anda perlu memberi perhatian kepadanya semasa membuat aplikasi web moden.

Aplikasi halaman tunggal

Mari kita definisikan sedikit istilah. Aplikasi Halaman Tunggal (SPA) ialah aplikasi web yang komponennya dimuatkan sekali pada satu halaman, dan kandungannya dimuatkan mengikut keperluan. Dan apabila bergerak antara bahagian aplikasi, halaman tidak memuat semula sepenuhnya, tetapi hanya memuatkan dan memaparkan data yang diperlukan.

Aplikasi satu halaman mendapat banyak manfaat daripada aplikasi web klasik dari segi kelajuan dan kemudahan penggunaan. Dengan bantuan SPA, anda boleh mencapai kesan tapak web yang berfungsi seperti aplikasi pada desktop, tanpa but semula dan kelewatan yang ketara.

Jika beberapa tahun yang lalu aplikasi satu halaman secara praktikal tidak menyokong pengoptimuman enjin carian dan digunakan terutamanya untuk mencipta akaun peribadi dan panel pentadbiran, hari ini mencipta aplikasi satu halaman dengan sokongan penuh untuk pengoptimuman enjin carian (SEO) telah menjadi lebih mudah. Menggunakan aplikasi halaman tunggal yang diberikan pelayan hari ini, masalah ini telah hilang sepenuhnya. Dalam erti kata lain, ini adalah aplikasi satu halaman yang sama, tetapi pada permintaan pertama, pelayan menjana bukan sahaja data, tetapi mencipta halaman HTML sedia untuk paparan dan enjin carian menerima halaman siap dengan semua maklumat meta dan penanda semantik .

Dengan pembangunan alat untuk mencipta aplikasi web sebelah pelanggan, pembangunan dan peralihan kepada aplikasi satu halaman hanya akan berkembang pada tahun ini dan seterusnya. Jika anda mempunyai aplikasi lama yang sudah lapuk dan berfungsi dengan perlahan, malah dengan muat semula halaman yang lengkap apabila bertukar antara bahagian, maka tahun ini anda boleh menaik taraf dengan selamat kepada aplikasi satu halaman yang pantas - kini adalah masa yang baik, teknologi sudah membenarkan anda untuk melakukan ini dengan cepat dan cekap.

Mempunyai tapak web yang moden dan pantas adalah sangat baik, tetapi izinkan saya memberitahu anda dengan jujur: tidak semua aplikasi boleh ditukar dengan mudah kepada aplikasi satu halaman, dan peralihan boleh mahal! Oleh itu, anda perlu memahami siapa yang memerlukan peralihan sedemikian dan mengapa.

Untuk membantu anda memahami, dalam jadual di bawah saya akan memberikan beberapa contoh apabila membangunkan atau bertukar kepada SPA adalah sesuai dan wajar, dan apabila ia tidak.

UNTUK

Jika anda ingin membuat aplikasi moden, pantas dan mahu menggunakan bukan sahaja versi web, tetapi juga versi mudah alih atau desktop, dan semua proses dan pengiraan berlaku pada pelayan jauh atau awan. Selain itu, supaya semua pelanggan mempunyai satu antara muka interaksi dan tidak perlu membuat setiap pengeditan pada kod pelayan apabila menambah pelanggan baharu.

Contohnya: rangkaian sosial, agregator, platform SaaS (perisian sebagai perkhidmatan awan), pasaran

Jika anda mempunyai kedai atau perkhidmatan web, anda tahu bahawa ia lambat dan orang ramai akan pergi, anda mahu menjadikannya lebih pantas, anda memahami nilai pelanggan dan bersedia membayar lebih sejuta rubel untuk naik taraf.

Anda mempunyai aplikasi mudah alih yang menggunakan API tapak, tetapi tapak itu perlahan dan memuatkan semula kandungan yang lengkap apabila bergerak antara halaman

TERHADAP

Jika khalayak sasaran anda tidak menggunakan penyemak imbas dan peranti moden.

Contohnya: bidang korporat tertentu, seperti pembangunan sistem dalaman untuk bank, institusi perubatan dan pendidikan.

Anda menjalankan aktiviti utama anda di luar talian dan tidak bersedia untuk menyediakan sebarang perkhidmatan dalam talian, dan anda hanya perlu menarik pelanggan.

Jika anda mempunyai kedai dalam talian atau perkhidmatan web yang sudah laris, anda tidak melihat aliran keluar atau aduan pelanggan

Jika anda mempunyai aplikasi yang berfungsi yang tidak boleh disesuaikan untuk SPA dan anda hanya perlu menulis semula segala-galanya dari awal dan menggunakan teknologi lain, dan anda tidak bersedia untuk membelanjakan beberapa juta untuk ini.

Contohnya: Terdapat tapak berkotak atau sejenis kod monolitik kuno yang ditulis sendiri.

Aplikasi Web Progresif

Aplikasi Web Progresif adalah hasil evolusi bersama aplikasi asli dan tapak web. Pada asasnya, ini ialah aplikasi web yang kelihatan dan berkelakuan seperti aplikasi asli yang sebenar, boleh menerima pemberitahuan tolak, berfungsi dalam mod luar talian, dsb. Dalam kes ini, pengguna tidak perlu memuat turun aplikasi dari AppStore atau Google Play, tetapi hanya menyimpannya ke desktop.

Sebagai teknologi atau pendekatan pembangunan, PWA telah dibangunkan sejak 2015, dan baru-baru ini mendapat populariti yang besar dalam bidang e-dagang.

Beberapa contoh kehidupan sebenar:

  • tahun lepas, hotel Best Western River North mampu meningkatkan hasil sebanyak 300% selepas melancarkan tapak web berdaya PWA baharu;
  • Bahasa Arab Avito OpenSooq.com, selepas mencipta sokongan PWA di laman webnya, dapat meningkatkan masa melawat tapak sebanyak 25% dan bilangan petunjuk sebanyak 260%;
  • perkhidmatan temu janji terkenal Tinder dapat mengurangkan kelajuan pemuatan daripada 11.91s kepada 4.69s dengan membangunkan PWA; tambahan pula, berat aplikasi itu 90% kurang daripada rakan Android asalnya.

Hakikat bahawa teknologi ini patut diberi perhatian juga ditunjukkan oleh fakta bahawa salah satu enjin terbesar untuk mencipta projek e-dagang, Magento, melancarkan versi pembangunan awal PWA Studio pada 2018. Platform ini membolehkan anda mencipta bahagian hadapan berasaskan React di luar kotak untuk penyelesaian e-dagang anda dengan sokongan PWA.

Nasihat untuk mereka yang sudah mempunyai projek Internet atau hanya idea untuk perkhidmatan baharu dengan sokongan untuk peranti mudah alih: jangan tergesa-gesa untuk menulis aplikasi asli yang lengkap, tetapi lihat dahulu teknologi PWA. Ini mungkin penyelesaian nilai terbaik untuk produk anda.

Sedikit daripada amalan. Untuk mencipta aplikasi berita mudah alih asli yang ringkas, dengan syarat anda sudah mempunyai pelayan REST siap sedia, anda memerlukan kira-kira 200-300 jam kerja setiap platform. Dengan harga pasaran purata untuk satu jam pembangunan ialah 1500-2000 rubel / jam, aplikasi boleh menelan belanja kira-kira 1 juta rubel. Jika anda membangunkan aplikasi web dengan sokongan penuh untuk PWA: pemberitahuan tolak, mod luar talian dan barangan lain, maka pembangunan akan mengambil masa 200-300 jam kerja, tetapi produk akan segera tersedia pada semua platform. Iaitu, penjimatan kira-kira 2 kali ganda, apatah lagi hakikat bahawa anda tidak perlu membayar yuran untuk penempatan di kedai aplikasi.

Tanpa pelayan

Ini adalah satu lagi pendekatan moden untuk pembangunan. Oleh kerana namanya, ramai orang berpendapat bahawa ini benar-benar pembangunan tanpa pelayan, tidak perlu menulis kod bahagian belakang, dan mana-mana pembangun bahagian hadapan boleh mencipta aplikasi web sepenuhnya. Tetapi itu tidak benar!

Apabila membuat aplikasi Tanpa Pelayan, anda masih memerlukan pelayan dan pangkalan data. Perbezaan utama pendekatan ini ialah kod back-end dibentangkan dalam bentuk fungsi awan (nama lain untuk tanpa pelayan ialah FaaS, berfungsi sebagai perkhidmatan atau Functions-as-a-Service) dan membenarkan aplikasi untuk skala dengan cepat dan dengan mudah. Apabila mencipta aplikasi sedemikian, pembangun boleh memberi tumpuan kepada masalah perniagaan dan tidak memikirkan tentang skala dan penyediaan infrastruktur, yang seterusnya mempercepatkan pembangunan aplikasi dan mengurangkan kosnya. Selain itu, pendekatan Tanpa Pelayan akan membantu anda menjimatkan penyewaan pelayan, kerana ia menggunakan seberapa banyak sumber yang diperlukan untuk menyelesaikan tugas, dan jika tiada beban, maka masa pelayan tidak digunakan sama sekali dan tidak dibayar.

Sebagai contoh, syarikat media besar Amerika, Bustle dapat mengurangkan kos pengehosan sebanyak lebih daripada 60% apabila bertukar kepada Tanpa Pelayan. Dan syarikat Coca-Cola, apabila membangunkan sistem automatik untuk menjual minuman melalui mesin layan diri, dapat mengurangkan kos pengehosan daripada $13000 kepada $4500 setahun dengan bertukar kepada Tanpa Pelayan.

Sejak beberapa tahun kebelakangan ini, disebabkan kebaharuan dan batasannya, Serverless telah digunakan terutamanya untuk projek kecil, permulaan dan MVP, tetapi hari ini, terima kasih kepada evolusi perisian, kepelbagaian dan kuasa kontena pelayan, alat muncul yang membolehkan anda mengalih keluar sekatan, memudahkan dan mempercepatkan pembangunan aplikasi awan .
Ini bermakna bahawa senario perniagaan perusahaan di mana pemodenan awan sebelum ini dianggap mustahil (contohnya, untuk peranti tepi, data dalam transit atau aplikasi stateful) kini menjadi kenyataan. Alat yang baik yang menunjukkan banyak janji ialah perusahaan kNative dan Tanpa Pelayan.

Tetapi di sebalik semua ini, Serverless bukanlah peluru perak untuk pembangunan aplikasi web. Seperti mana-mana teknologi lain, ia mempunyai kelebihan dan kekurangannya, dan anda perlu memilih alat ini dengan pemahaman, dan "bukan tukul paku dengan mikroskop" hanya kerana ia lebih maju dari segi teknologi.

Untuk membantu anda memikirkannya, berikut ialah beberapa contoh masa anda mungkin ingin mempertimbangkan Tanpa Pelayan apabila membangunkan perkhidmatan web baharu atau mempertingkatkan perkhidmatan web semasa:

  • Apabila beban pada pelayan adalah berkala dan anda membayar untuk kapasiti terbiar. Sebagai contoh, kami mempunyai pelanggan dengan rangkaian mesin kopi dan perlu memproses permintaan dan mengumpul statistik hanya beberapa ratus atau seribu kali sehari, dan pada waktu malam bilangan permintaan menurun kepada beberapa dozen. Dalam kes ini, adalah lebih cekap untuk membayar hanya untuk penggunaan sumber sebenar, jadi kami mencadangkan dan melaksanakan penyelesaian pada Tanpa Pelayan;
  • Jika anda tidak bercadang untuk menyelami butiran teknikal infrastruktur dan membayar lebih untuk menyediakan dan menyelenggara pelayan dan pengimbang. Sebagai contoh, semasa membangunkan pasaran, anda tidak tahu dengan tepat apakah trafik itu, atau sebaliknya - anda merancang banyak trafik dan supaya aplikasi anda pasti dapat menahan beban, maka Tanpa Pelayan ialah pilihan yang sangat baik.
  • Jika anda perlu melakukan beberapa acara penstriman dalam aplikasi utama, tulis data sisi ke dalam jadual, lakukan beberapa pengiraan. Contohnya, kumpulkan data analisis tindakan pengguna, proseskannya dengan cara tertentu dan simpannya dalam pangkalan data;
  • Jika anda perlu memudahkan, menyatukan atau mempercepatkan operasi semasa aplikasi. Sebagai contoh, cipta perkhidmatan yang meningkatkan prestasi untuk bekerja dengan imej atau video, apabila pengguna memuat naik video ke awan, dan fungsi berasingan mengendalikan transcoding, manakala pelayan utama terus beroperasi seperti biasa.

Jika anda perlu memproses acara daripada perkhidmatan pihak ketiga. Contohnya, memproses respons daripada sistem pembayaran, atau mengubah hala data pengguna kepada CRM untuk mempercepatkan pemprosesan permintaan daripada bakal pelanggan.
Jika anda mempunyai aplikasi yang besar dan beberapa bahagian aplikasi boleh dilaksanakan dengan lebih optimum menggunakan bahasa yang berbeza daripada yang utama. Sebagai contoh, anda mempunyai projek dalam Java dan anda perlu menambah fungsi baharu, tetapi anda tidak mempunyai sebarang tangan bebas, atau pelaksanaan dalam bahasa tertentu mungkin mengambil masa yang lebih lama dan sudah ada penyelesaian dalam bahasa lain, maka Tanpa Pelayan boleh membantu dengan ini juga.

Ini bukan senarai keseluruhan alatan dan teknologi yang patut diberi perhatian; Saya hanya berkongsi perkara yang kita sendiri gunakan setiap hari dalam kerja kita dan mengetahui dengan tepat cara mereka boleh membantu perniagaan.

Sumber: www.habr.com

Tambah komen