MUST READ по Computer Science.zip
542.1 MB
📚 Подборка необходимых книг по Computer Science [30 книг]
📔Параллельное программирование на С++ в действии. Практика разработки многопоточных программ (2016, EN + RU) Энтони Уильямс
📕Таненбаум Э. - Современные операционные системы. 3-е изд. (Классика Computer Science) - 2010
📗Язык программирования С [2015] Брайан У. Керниган, Деннис М. Ритчи
📙97 этюдов для программистов. Опыт ведущих экспертов [2012] Пит Гудлиф, Роберт Мартин, Диомидис Спинеллис, Кевлин Хенни
📘Algorithms Unlocked [2013] Thomas H. Cormen
📓Computer Networks [2021] Andrew S. Tanenbaum, Nick Feamster, David J. Wetherall
📒Introduction to Algorithms, Third Edition [2009] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
📔Martin. The Clean Coder - A Code of Conduct for Professional Programmers. 2011
📕Алгоритмы. Вводный курс [2014] Томас Х. Кормен
📗Алгоритмы. Построение и анализ. Изд. 3-е [2013] Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн
📙Высоконагруженные приложения. Программирование, масштабирование, поддержка [2018] Клеппман Мартин
📘Игровой движок. Программирование и внутреннее устройство. Третье издание [2021] Грегори Джейсон
📓Идеальная работа. Программирование без прикрас [2022] Мартин Роберт
📒Идеальный программист. Как стать профессионалом разработки ПО [2012] Роберт Мартин
📔Карьера программиста 6 изд [2020] Лакман Макдауэлл
📕Компьютерные сети. 6-е изд. [2023] Эндрю С. Таненбаум, Ник Фимстер, Дэвид Уэзеролл
📗Приемы объектно-ориентированного проектирования. Паттерны проектирования 2015
📙Совершенный код [2010] Стив Макконнелл
📘Таненбаум Э. - Архитектура компьютера. 6-е изд. (Классика Computer Science) - 2013
📓Чистая архитектура [2021] Роберт Мартин
📒Чистый Agile. Основы гибкости [2020] Роберт Мартин
📔Чистый код создание, анализ и рефакторинг [2019] Роберт Мартин
📕Экстремальное программирование. Разработка через тестирование [2017] Кент Бек
📗Эффективный и современный С++ Скотт Мейерс
📙Наиболее эфективное использование C++ [2000] Мейерс
📘Эффективное использование C++ [2000] Скотт Мейерс
📓Эффективное использование STL [2002] Скотт Мейерс
📒Эффективный и современный С++ 42 рекомендации по использованию С++ 11 и С++14 [2016] Скотт Мейерс
Computer Science — это наука, объединяющая в себе различные области знаний, которые будут полезны специалисту, работающему с компьютерами и вычислениями. В общем-то это знания, которые пригодятся программисту. По словам Питера Деннинга, к фундаментальным вопросам информатики относится следующий вопрос: «Что может быть эффективно автоматизировано?» Изучение теории алгоритмов сфокусировано на поиске ответов на фундаментальные вопросы о том, что можно вычислить и какое количество ресурсов необходимо для этих вычислений. Для ответа на первый вопрос в теории вычислимости рассматриваются вычислительные задачи, решаемые на различных теоретических моделях вычислений. Второй вопрос посвящён теории вычислительной сложности; в этой теории анализируются затраты времени и памяти различных алгоритмов при решении множества вычислительных задач. Computer Science полезна для разработчиков, системных архитекторов, аналитиков высокого уровня, инженеров, системных администраторов, учёных и других специалистов. #подборка_книг #программирование #computerscience #алгоритмы #coding #programming
💡 Physics.Math.Code // @physics_lib
📔Параллельное программирование на С++ в действии. Практика разработки многопоточных программ (2016, EN + RU) Энтони Уильямс
📕Таненбаум Э. - Современные операционные системы. 3-е изд. (Классика Computer Science) - 2010
📗Язык программирования С [2015] Брайан У. Керниган, Деннис М. Ритчи
📙97 этюдов для программистов. Опыт ведущих экспертов [2012] Пит Гудлиф, Роберт Мартин, Диомидис Спинеллис, Кевлин Хенни
📘Algorithms Unlocked [2013] Thomas H. Cormen
📓Computer Networks [2021] Andrew S. Tanenbaum, Nick Feamster, David J. Wetherall
📒Introduction to Algorithms, Third Edition [2009] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
📔Martin. The Clean Coder - A Code of Conduct for Professional Programmers. 2011
📕Алгоритмы. Вводный курс [2014] Томас Х. Кормен
📗Алгоритмы. Построение и анализ. Изд. 3-е [2013] Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн
📙Высоконагруженные приложения. Программирование, масштабирование, поддержка [2018] Клеппман Мартин
📘Игровой движок. Программирование и внутреннее устройство. Третье издание [2021] Грегори Джейсон
📓Идеальная работа. Программирование без прикрас [2022] Мартин Роберт
📒Идеальный программист. Как стать профессионалом разработки ПО [2012] Роберт Мартин
📔Карьера программиста 6 изд [2020] Лакман Макдауэлл
📕Компьютерные сети. 6-е изд. [2023] Эндрю С. Таненбаум, Ник Фимстер, Дэвид Уэзеролл
📗Приемы объектно-ориентированного проектирования. Паттерны проектирования 2015
📙Совершенный код [2010] Стив Макконнелл
📘Таненбаум Э. - Архитектура компьютера. 6-е изд. (Классика Computer Science) - 2013
📓Чистая архитектура [2021] Роберт Мартин
📒Чистый Agile. Основы гибкости [2020] Роберт Мартин
📔Чистый код создание, анализ и рефакторинг [2019] Роберт Мартин
📕Экстремальное программирование. Разработка через тестирование [2017] Кент Бек
📗Эффективный и современный С++ Скотт Мейерс
📙Наиболее эфективное использование C++ [2000] Мейерс
📘Эффективное использование C++ [2000] Скотт Мейерс
📓Эффективное использование STL [2002] Скотт Мейерс
📒Эффективный и современный С++ 42 рекомендации по использованию С++ 11 и С++14 [2016] Скотт Мейерс
Computer Science — это наука, объединяющая в себе различные области знаний, которые будут полезны специалисту, работающему с компьютерами и вычислениями. В общем-то это знания, которые пригодятся программисту. По словам Питера Деннинга, к фундаментальным вопросам информатики относится следующий вопрос: «Что может быть эффективно автоматизировано?» Изучение теории алгоритмов сфокусировано на поиске ответов на фундаментальные вопросы о том, что можно вычислить и какое количество ресурсов необходимо для этих вычислений. Для ответа на первый вопрос в теории вычислимости рассматриваются вычислительные задачи, решаемые на различных теоретических моделях вычислений. Второй вопрос посвящён теории вычислительной сложности; в этой теории анализируются затраты времени и памяти различных алгоритмов при решении множества вычислительных задач. Computer Science полезна для разработчиков, системных архитекторов, аналитиков высокого уровня, инженеров, системных администраторов, учёных и других специалистов. #подборка_книг #программирование #computerscience #алгоритмы #coding #programming
💡 Physics.Math.Code // @physics_lib
This media is not supported in your browser
VIEW IN TELEGRAM
В промышленных процедурных и объектных языках сборка мусора долго не использовалась. Предпочтение отдавалось ручному управлению памятью, как более эффективному и предсказуемому. Но со второй половины 1980-х годов технология сборки мусора стала использоваться и в директивных (императивных), и в объектных языках программирования, а со второй половины 1990-х годов всё большее число создаваемых языков и сред, ориентированных на прикладное программирование, включают механизм сборки мусора либо как единственный, либо как один из доступных механизмов управления динамической памятью. В настоящее время она используется в Оберон, Java, Python, Ruby, C#, D, F#, Go и других языках.
▪️Висячая ссылка (англ. dangling pointer) — это ссылка на объект, который уже удалён из памяти. После удаления объекта все сохранившиеся в программе ссылки на него становятся «висячими». Память, занимаемая ранее объектом, может быть передана операционной системе и стать недоступной, или быть использована для размещения нового объекта в той же программе. В первом случае попытка обратиться по «повисшей» ссылке приведёт к срабатыванию механизма защиты памяти и аварийной остановке программы, а во втором — к непредсказуемым последствиям. Появление висячих ссылок обычно становится следствием неправильной оценки времени жизни объекта: программист вызывает команду удаления объекта до того, как его использование прекратится.
▪️Утечки памяти — Создав объект в динамической памяти, программист может не удалить его после завершения использования. Если ссылающейся на объект переменной будет присвоено новое значение и на объект нет других ссылок, он становится программно недоступным, но продолжает занимать память, поскольку команда его удаления не вызывалась. Такая ситуация и называется утечкой памяти (англ. memory leak). Если объекты, ссылки на которые теряются, создаются в программе постоянно, то утечка памяти проявляется в постепенном увеличении объёма используемой памяти; если программа работает долго, объём используемой ею памяти постоянно растёт, и через какое-то время ощутимо замедляется работа системы (из-за необходимости при любом выделении памяти использовать свопинг), либо программа исчерпывает доступный объём адресного пространства и завершается с ошибкой.
#программирование #архитектура #многопоточность #сборщикмусора #cpp #java #coding #programming
💡 Physics.Math.Code // @physics_lib
Please open Telegram to view this post
VIEW IN TELEGRAM