Makalah dari Minsk C ++ Conference CoreHard Spring 2018


Pada tanggal 7 - 8 April, komunitas CoreHard mengadakan konferensi internasional ke-8 CoreHard Spring 2018 di Minsk dalam bahasa C ++ dan teknologi "hardcore" terkait di Minsk. Konferensi ini dihadiri oleh pembicara dari perusahaan IT terkemuka di Belarus, Rusia, Ukraina, Jerman dan Belanda. Mereka berbicara tentang pengalaman mereka dalam pengembangan dan pengujian.

Sekarang laporan konferensi tersedia secara bebas di YouTube dan semua orang dapat mengenalnya. Terima kasih kepada penyelenggara konferensi.


Evgeny Okhotnikov. 25 tahun sejarah C ++ terbang di depan mata saya



Penulis laporan bertemu C ++ pada tahun 1991, dan sejak 1992, C ++ telah menjadi bahasa pengembangan utama untuk pembicara. Apa yang terjadi pada lidah selama ini? Bagaimana dan mengapa dia menjadi populer? Bagaimana stagnasi dalam pengembangan C ++ dimulai? Bagaimana C ++ kehilangan popularitasnya? Apakah ada ruang untuk C ++ di dunia modern? Mari kita coba membicarakannya, berdasarkan 25 tahun pengalaman dalam pemrograman C ++.

Sergey Solozhentsev. Pendekatan berbasis fitur untuk pengembangan game



Mari kita bicara tentang bagaimana pendekatan untuk bekerja dengan objek game dalam pertandingan 3 telah berubah, dan bagaimana kita sampai pada pendekatan komponen-fitur saat ini untuk membuat objek game yang bisa berubah. Apa kelebihannya dibandingkan pendekatan lain yang telah dicoba dan diuji untuk membuat tutorial, banyak mode, serta meninjau kode.

Andrey Yakimov. Mengambil fungsi di bawah Windows dalam aplikasi menggunakan C / C ++



Mari kita bicara tentang kait fungsi dalam aplikasi yang ditulis dalam berbagai bahasa dan teknologi. Laporan ini akan mempertimbangkan: konsep dasar, aplikasi, varietas metode intersepsi dan fitur teknisnya, perpustakaan yang sudah jadi.

Andrey Karpushin. C ++ untuk web menggunakan Emscripten



Dalam laporan tersebut, penulis berbicara tentang pengalaman praktisnya dalam menyusun dan menggunakan C ++ di halaman web, tentang apa yang perlu dilakukan untuk port aplikasi dalam C ++ ke web, tentang batasan yang terkait dengan ini, tentang integrasi kode C ++ dengan JavaScript dan elemen web lainnya halaman.

Dengan mudah Nemkov. Inti dari dompet multicurrency Multy



3,5 blockchain 2 megabita: bagaimana, mengapa dan mengapa. Fitur pengembangan solusi blockchain lintas platform.

Alexander Markevich. Dari C ++ ke Objective-C



Dalam laporan ini, penulis berbicara tentang fakta bahwa Obj-C / C ++ adalah perpanjangan dari C / C ++ yang ada. Ini juga akan mempertimbangkan fitur-fitur bahasa, berbicara tentang manajemen memori (retain / release vs ARC vs shared_ptr / unique_ptr), tentang Swift dan mengapa itu lebih baik atau lebih buruk daripada Obj-C / C ++.

Mikhail Matrosov. C ++ multifaset dalam praktiknya



Di C ++, ada banyak cara untuk memecahkan masalah yang sama. Kami akan mengambil masalah sebenarnya dari praktik penulis dan menjelajahi sejumlah alat C ++ untuk menyelesaikannya: Wadah STL, boost.range, rentang C ++ 20, coroutine. Kami akan membandingkan solusi dalam hal antarmuka dan kinerjanya, dan kami juga akan melihat bagaimana satu solusi dapat dengan mudah diperoleh dari yang lain jika kode diatur dengan benar. Dalam prosesnya, kita melihat fitur C ++ 17: constexpr if, pernyataan pemilihan dengan initializer, std :: not_fn, dll. Perhatian khusus akan diberikan pada algoritma standar (topik favorit saya).

Pavel Belikov. Bagaimana Analisis Aliran Data Bekerja dalam Penganalisis Kode Statis



Analysis Data Flow (data stream) adalah teknologi untuk menganalisis kode sumber program yang banyak digunakan dalam berbagai alat pengembangan: kompiler, linter, IDE. Kita akan membicarakannya menggunakan pengembangan penganalisa statis sebagai contoh. Pertimbangkan klasifikasi dan berbagai jenis analisis Aliran Data, teknologi terkait yang saling melengkapi dan masalah yang muncul selama pengembangannya, dan kejutan yang disajikan C ++ kepada kami saat kami mencoba menganalisisnya. Selama laporan, kami akan menganalisis beberapa kesalahan yang ditemukan dalam proyek nyata menggunakan teknologi ini.

Alexander Zaitsev. Alat C ++ Codeing Profileing



Kebetulan bahwa kadang-kadang aplikasi Anda mulai melakukan tugas-tugas yang tampaknya biasa untuk waktu yang lama dan mengkonsumsi sejumlah besar RAM. Dan Anda, sebagai pengembang, tidak tahu mengapa ini terjadi (tetapi Anda tertarik). Selama pembicaraan, kita akan berbicara tentang alat yang dapat memahami alasan perilaku aneh program kita. Jika Anda tidak takut pada kata-kata seperti Valgrind, gprof, gperftools dan banyak lainnya - selamat datang!

Alexander Chuprina. Menyiapkan lingkungan untuk kompilasi silang berbasis buruh pelabuhan



Cara mengkonfigurasi / memperbarui lingkungan dengan cepat dan mudah untuk proyek lintas-kompilasi untuk berbagai platform (berdasarkan buruh pelabuhan), cara cepat beralih di antaranya, cara mengatur CI dan pengujian (berdasarkan GitLab dan Docker) menggunakan batu bata ini.

Alexey Tkachenko. C ++ Lintas-Platform Pembuatan Kode



Laporan akan mempertimbangkan pembuatan kode ketika mengkompilasi berbagai konstruksi bahasa, baik yang sederhana maupun kompleks, pada berbagai platform, baik x86 / x64 umum, dan yang kurang mendapat perhatian: ARM, AVR. Akan ada juga contoh untuk prosesor yang benar-benar eksotis seperti PowerPC dan bahkan MicroBlaze. Penekanan utama akan ditempatkan bukan pada pemrosesan data, tetapi pada perbandingan berbagai konstruksi kode dengan instruksi platform target.

Vadim Vinnik. Memproses koleksi: satu esensi dan banyak manifestasi



Pemrograman hari ini dibagi menjadi banyak bidang yang cukup jauh dari satu sama lain. Apakah pemrograman terpadu secara konseptual ada sama sekali dan pada apa kesatuan ini bersandar? Jawaban atas pertanyaan-pertanyaan ini dan lainnya diberikan oleh penulis laporan.

Nicolai Josuttis. Waspadai C ++ 17



Iblis ada dalam detail. Ini juga berlaku untuk C ++ 17. Kami mendapatkan fitur-fitur keren yang baru, tetapi kami juga mendapatkan hal-hal baru untuk diperhatikan dan diingat. Pembicaraan ini membahas beberapa fitur keren ketika mereka dapat menyebabkan kejutan.

Diskusi


Jangan lewatkan diskusi yang mengangkat berbagai topik mengenai diskusi bahasa Rust dan C ++, serta jawaban atas pertanyaan dari anggota Komite Standardisasi C ++.


Source: https://habr.com/ru/post/id414467/


All Articles