Google взялись за разработку замены C++
Стало известно, что компания активно развивает язык программирования Carbon, который позиционируется как пока что экспериментальная замена C++, расширяющая данный язык и устраняющая имеющиеся недостатки.
Язык поддерживает базовую переносимость с C++ и может интегрироваться с имеющимся кодом на плюсах. Плюс ко всему язык предоставляет инструменты для упрощения миграции существующих проектов. Так что можно смело переписать на Carbon библиотеку и использовать её в существующем проекте на С++.
Основные фичи Carbon:
— Производительность, сопоставимая с С++.
— Сохранение низкоуровневого доступа к адресам и данным на битовом уровне.
— Переносимость кода, включая наследование классов и шаблоны.
— Упрощение миграции между версиями.
— Безопасная работа с памятью, защита от уязвимостей, вызванных обращением к области памяти после её освобождения, разыменованием нулевых указателей и выходом за границы буфера.
#google #cpp
Стало известно, что компания активно развивает язык программирования Carbon, который позиционируется как пока что экспериментальная замена C++, расширяющая данный язык и устраняющая имеющиеся недостатки.
Язык поддерживает базовую переносимость с C++ и может интегрироваться с имеющимся кодом на плюсах. Плюс ко всему язык предоставляет инструменты для упрощения миграции существующих проектов. Так что можно смело переписать на Carbon библиотеку и использовать её в существующем проекте на С++.
Основные фичи Carbon:
— Производительность, сопоставимая с С++.
— Сохранение низкоуровневого доступа к адресам и данным на битовом уровне.
— Переносимость кода, включая наследование классов и шаблоны.
— Упрощение миграции между версиями.
— Безопасная работа с памятью, защита от уязвимостей, вызванных обращением к области памяти после её освобождения, разыменованием нулевых указателей и выходом за границы буфера.
#google #cpp
Что почитать на выходных: «Думай как программист (2018)», Антон Спрол
Если вы хоть раз сталкивались с трудностями при создании кода — эта книга для вас. Её автор говорит о том, что программистов, талантливых от природы, не так много, однако можно развить в себе этот талант, если приучить свой мозг решать разнообразные задачи и делать это креативно.
Из плюсов книги:
— примеры задач и их решения;
— куча интересных упражнений;
— полезные выводы и рекомендации.
#начинающим #книги #cpp
Если вы хоть раз сталкивались с трудностями при создании кода — эта книга для вас. Её автор говорит о том, что программистов, талантливых от природы, не так много, однако можно развить в себе этот талант, если приучить свой мозг решать разнообразные задачи и делать это креативно.
Из плюсов книги:
— примеры задач и их решения;
— куча интересных упражнений;
— полезные выводы и рекомендации.
#начинающим #книги #cpp
Какие 8 самых необычных книг стоит почитать C++ разработчику?
Миллисекунды алгоритмов или чистота архитектуры, это конечно хорошо. Но как насчёт, например, осознанности деятельности C++ программистов? В этой подборке как раз про это. Тонкий юмор, немного философии и пара экземпляров из «золотого фонда» классической литературы для C++ разработчиков.
Приятного чтения: https://tproger.ru/books/8-neobychnyh-knig-dlja-c-razrabotchika/
#cpp #книги
Миллисекунды алгоритмов или чистота архитектуры, это конечно хорошо. Но как насчёт, например, осознанности деятельности C++ программистов? В этой подборке как раз про это. Тонкий юмор, немного философии и пара экземпляров из «золотого фонда» классической литературы для C++ разработчиков.
Приятного чтения: https://tproger.ru/books/8-neobychnyh-knig-dlja-c-razrabotchika/
#cpp #книги
Одному программисту настолько не понравился ненатуральный звук автомобильных двигателей в играх, что он взял и создал точный эмулятор для движков автомобилей
По сути он создал физический движок, программу, которая производит точное компьютерное моделирование того, как взаимодействуют цилиндры, поршни, маховики, воздух и топливо. Физический движок также рассчитывает скорость распространения огня, количество энергии, выделяемое при сгорании воздушно-топливной смеси. И генерирует звук исходя из давления в виртуальной выхлопной трубе. И всё это с 80 000 FPS.
Более того, разработчик так заморочился, что по пути почти создал свой язык программирования для описания двигателей — число цилиндров, расположение элементов, передачи и т. д.
Исходный код открыт и доступен на гитхабе: https://github.com/ange-yaghi/engine-sim
А посмотреть за процессом создания и послушать звуки самых разных двигателей можно в 12-минутном оригинальном видео: https://youtu.be/RKT-sKtR970
#кек #cpp #opensource
По сути он создал физический движок, программу, которая производит точное компьютерное моделирование того, как взаимодействуют цилиндры, поршни, маховики, воздух и топливо. Физический движок также рассчитывает скорость распространения огня, количество энергии, выделяемое при сгорании воздушно-топливной смеси. И генерирует звук исходя из давления в виртуальной выхлопной трубе. И всё это с 80 000 FPS.
Более того, разработчик так заморочился, что по пути почти создал свой язык программирования для описания двигателей — число цилиндров, расположение элементов, передачи и т. д.
Исходный код открыт и доступен на гитхабе: https://github.com/ange-yaghi/engine-sim
А посмотреть за процессом создания и послушать звуки самых разных двигателей можно в 12-минутном оригинальном видео: https://youtu.be/RKT-sKtR970
#кек #cpp #opensource
Изучать тонкости языка не всегда увлекательное занятие, но для исключений в C++ сделаем исключение
Исключения — важный инструмент в программировании. Но в большинстве статей исключения раскрываются поверхностно: не описана механика их работы, производительность или особенности исключений в C++. И вот интересная статья от Георгия Осипова, разработчика в ВМК МГУ и автора курса по разработке на C++ в Яндекс.Практикуме
В статье есть всё, что вы хотели узнать об исключениях в C++, но боялись спросить. Новичкам она будет полезна, чтобы погрузиться в тему. А программистам с опытом — углубиться в явление и достичь его полного понимания:
https://tprg.ru/epuG
#cpp
Исключения — важный инструмент в программировании. Но в большинстве статей исключения раскрываются поверхностно: не описана механика их работы, производительность или особенности исключений в C++. И вот интересная статья от Георгия Осипова, разработчика в ВМК МГУ и автора курса по разработке на C++ в Яндекс.Практикуме
В статье есть всё, что вы хотели узнать об исключениях в C++, но боялись спросить. Новичкам она будет полезна, чтобы погрузиться в тему. А программистам с опытом — углубиться в явление и достичь его полного понимания:
https://tprg.ru/epuG
#cpp
Насколько глубока нора исключений C++: безопасность, спецификации и бенчмарки.
Если пропустили, недавно мы уже писали про статью, в которой понятным языком разобрали ключевые слова try, catch и throw, синтаксис выбрасывания/обработки исключений и особые случаи. Но чтобы действительно стать гуру C++, придётся копнуть глубже.
Во второй части статьи вместе с Георгием Осиповым, соавтором курса «Разработчик C++» в Яндекс Практикуме, разбираем самые интересные тонкости исключений C++:
https://tprg.ru/BUSQ
#cpp
Если пропустили, недавно мы уже писали про статью, в которой понятным языком разобрали ключевые слова try, catch и throw, синтаксис выбрасывания/обработки исключений и особые случаи. Но чтобы действительно стать гуру C++, придётся копнуть глубже.
Во второй части статьи вместе с Георгием Осиповым, соавтором курса «Разработчик C++» в Яндекс Практикуме, разбираем самые интересные тонкости исключений C++:
https://tprg.ru/BUSQ
#cpp
Какие 8 самых необычных книг стоит почитать C++ разработчику?
Миллисекунды алгоритмов или чистота архитектуры, это конечно хорошо. Но как насчёт, например, осознанности деятельности C++ программистов? В этой подборке как раз про это. Тонкий юмор, немного философии и пара экземпляров из «золотого фонда» классической литературы для C++ разработчиков.
Приятного чтения: https://tproger.ru/books/8-neobychnyh-knig-dlja-c-razrabotchika/
#cpp #книги
Миллисекунды алгоритмов или чистота архитектуры, это конечно хорошо. Но как насчёт, например, осознанности деятельности C++ программистов? В этой подборке как раз про это. Тонкий юмор, немного философии и пара экземпляров из «золотого фонда» классической литературы для C++ разработчиков.
Приятного чтения: https://tproger.ru/books/8-neobychnyh-knig-dlja-c-razrabotchika/
#cpp #книги
Почему Линус Торвальдс ненавидит C++?
В 2007 году пользователь Дмитрий Какурин написал письмо Линусу Торвальдсу, в котором спросил программиста, почему тот использует чистый Си вместо того, чтобы написать все на C++. Само использование чистого Си Дмитрий Какурин назвал емким словом bullshit. В ответ Линус Торвальдс сказал, что bullshit — это сам Какурин, а C++ — ужасный язык, на котором кодеры генерируют, мягко говоря, «нечистоты».
Рассказываем, что еще сказал Линус и почему так вышло: https://tproger.ru/articles/pochemu-linus-torvalds-nenavidit-s
#linux #cpp #си
В 2007 году пользователь Дмитрий Какурин написал письмо Линусу Торвальдсу, в котором спросил программиста, почему тот использует чистый Си вместо того, чтобы написать все на C++. Само использование чистого Си Дмитрий Какурин назвал емким словом bullshit. В ответ Линус Торвальдс сказал, что bullshit — это сам Какурин, а C++ — ужасный язык, на котором кодеры генерируют, мягко говоря, «нечистоты».
Рассказываем, что еще сказал Линус и почему так вышло: https://tproger.ru/articles/pochemu-linus-torvalds-nenavidit-s
#linux #cpp #си
История C++ с 1953 года от FLOW-MATIC и Fortran до языка Си и Cfront
Язык C++ разработал датский программист Бьерн Страуструп, это известный факт. Но что, если копнуть глубже и попытаться разобраться, где находится стартовая точка эволюции языков программирования, которая привела к появлению C++, и какой эволюционный путь прошли языки?
В этой статье рассказываем, как бизнес в 1950 годах появлиял на развитие языков программирования, какие шаги проделал ALGOL перед тем, как превратился в язык Си, и как языки проделали долгий и витиеватый путь от упрощения к усложнению, и наоборот: https://tproger.ru/articles/istoriya-cpp-s-1953-goda
#cpp #си #история
Язык C++ разработал датский программист Бьерн Страуструп, это известный факт. Но что, если копнуть глубже и попытаться разобраться, где находится стартовая точка эволюции языков программирования, которая привела к появлению C++, и какой эволюционный путь прошли языки?
В этой статье рассказываем, как бизнес в 1950 годах появлиял на развитие языков программирования, какие шаги проделал ALGOL перед тем, как превратился в язык Си, и как языки проделали долгий и витиеватый путь от упрощения к усложнению, и наоборот: https://tproger.ru/articles/istoriya-cpp-s-1953-goda
#cpp #си #история
Google признал С++ устаревшим и назвал язык будущего ему на замену
Ларс Бергстром, директор по инженерии Google, рассказал о преимуществах Rust, продемонстрировав опыт компании по переносу проектов с Go и C++ на этот язык. Эксперименты Google показали, что разработчики стали в два раза продуктивнее, используя Rust вместо C++.
#cpp #golang #rust
Ларс Бергстром, директор по инженерии Google, рассказал о преимуществах Rust, продемонстрировав опыт компании по переносу проектов с Go и C++ на этот язык. Эксперименты Google показали, что разработчики стали в два раза продуктивнее, используя Rust вместо C++.
#cpp #golang #rust
Создаем свою простую C++ библиотеку с документацией, CMake и блекджеком
Каждому разработчику знакома ситуация, когда один и тот же кусок кода приходится таскать из проекта в проект. Тогда почему бы не превратить свои идеи и наработки в удобный и доступный формат?
Ведь создавая свою библиотеку, вы не только прокачаете портфолио и структурируете код, но и выразите себя творчески. Плюс, сможете поделиться плодами своего труда с другими.
А чтобы облегчить вам эту задачу, держите крутой туториал, который можно использовать как шпаргалку для создания собственных либ и других проектов.
#cpp
Каждому разработчику знакома ситуация, когда один и тот же кусок кода приходится таскать из проекта в проект. Тогда почему бы не превратить свои идеи и наработки в удобный и доступный формат?
Ведь создавая свою библиотеку, вы не только прокачаете портфолио и структурируете код, но и выразите себя творчески. Плюс, сможете поделиться плодами своего труда с другими.
А чтобы облегчить вам эту задачу, держите крутой туториал, который можно использовать как шпаргалку для создания собственных либ и других проектов.
#cpp