13 материалов для «продолжающих» С++ разработчиков


Оглавление (нажмите, чтобы открыть):

Книги или справочники для опытных(или проффесиональных) программистов!

Пожалуйста, Подскажите книги или справочники для опытных и проффесиональных программистов!

Особенно хотелось бы найти:
1) полный справочник по STL( желательно на русском ) или любые другие полезные справочники
2) книги с практикой( например чтобы в книге было написано как создать большой и полность законченый проект проект )
3) книги с задачами типа: «напишите игру сапёр. «, «напишите игру морской бой. «

14.08.2010, 17:14

Книги Г.Шилдта в каком порядке нужно или какие книги для изучения с++
Скажите в каком порядке надо читать книги Г.Шилдта для изучения с++ . Возможно сначала придется с.

Требуется совет опытных программистов
Основы С++ более менее изучены. Что же дальше? Что учить чтоб писать хоть какие то простенькие.

необходим совет опытных программистов c++
ребят, помогите, пожалуйста, мне, новичку, если не сложно. вобщем есть у меня прога, которую я.

Прошу ответить опытных программистов знающих все реализации языка
Здравствуйте! Опять я мудак туплю) Это скрины из Far Cry3 как создать такое окно и особенно такие.

Сайты или книги для начинающих веб-программистов
Подскажите , пжлста, какие-нибудь хорошие сайты или книги для начинающих веб программистов,где.

Задачи для продвинутых и продолжающих по программированию

Post Author: Nikulux

Похожие записи

Задачи для освоения ассоциативных массивов, файлов, циклов, функций, хеш-таблиц, матриц Python, C/C++, Java, C#, Pascal

Создайте пустой ассоциативный массив, добавьте в него три произвольных.

Задачи для освоения исключений, файлов, циклов, времени, матриц Python, C/C++, Java, C#, Pascal

Выведите на экран текущую дату. Выведите на экран 24 случайных числа.

Задачи для освоения основ программирования Python, C/C++, Java, C#, Pascal

Вывести на экран предложение «Hello World! I am developer!»; Вывести на экран.

Задачи для освоения условных конструкций Python, C/C++, Java, C#, Pascal

Дано два числа. Вывести на экран наибольшее из чисел; Пользователь.

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Литература для начинающих и продолжающих

Exkalibur Почетный пользователь

Сообщения : 89
Очки : 144
Репутация : 13
Дата регистрации : 2010-02-28
Возраст : 29
Откуда : Красноярск

  • Сообщение 1

Литература для начинающих и продолжающих

автор Exkalibur в Пт Мар 19, 2010 9:09 pm

Administrator Admin

Сообщения : 34
Очки : 142
Репутация : 4
Дата регистрации : 2010-01-07

  • Сообщение 2


Re: Литература для начинающих и продолжающих

автор Administrator в Пт Мар 19, 2010 10:13 pm

Exkalibur Почетный пользователь

Сообщения : 89
Очки : 144
Репутация : 13
Дата регистрации : 2010-02-28
Возраст : 29
Откуда : Красноярск

  • Сообщение 3

Re: Литература для начинающих и продолжающих

автор Exkalibur в Пт Мар 19, 2010 10:33 pm

Сообщения : 5
Очки : 5
Репутация : 0
Дата регистрации : 2010-01-10

  • Сообщение 4

Список книг по С++

автор ValeryLaptev в Вс Май 16, 2010 1:30 pm

Последний раз редактировалось: ValeryLaptev (Вс Май 23, 2010 2:58 am), всего редактировалось 1 раз(а)

Алёна C++

программирование для прагматиков

четверг, сентября 21, 2006

Хорошие книги по C++ для продолжающих

Итак, вы уже прочитали одну или несколько вводных книг по C++, успели попрограммировать на этом языке и считаете, что уже все про него знаете. В таком случае вам помогут следующие книги.

«Effective C++: 55 Specific Ways to Improve Your Programs and Designs», автор Scott Meyers. Чаще всего название сокращают до «Effective C++». Скотт Мейерс рассказывает, что книга оказалась очень удачна тем, что разбита на маленькие независимые друг от друга главы. И ее очень удобно читать урывками, когда нет времени: в транспорте, в перерывах между занятиями. У этой книги есть продолжение — «More Effective C++: 35 New Ways to Improve Your Programs and Designs». Вот по ее поводу Мейерс сокрушается, что не удалось выдержать тот же стиль, и она по популярности проигрывает первой.
Книга эта написана довольно давно, поэтому осторожнее относитесь к фразам «это еще не во всех современных компиляторах реализовано» и подобным. Это современность была несколько лет назад.
Обратите внимание на цифры в названиях. Изначально в «Effective C++» было 50 советов, но в третьем издании Мейерс добавил еще 5 и получилось, что их теперь 55. В наших книжных магазинах названия переводены слегка по-разному, но по числам в названии всегда можно понять о какой именно книге идет речь.
«Эффективное использование C++. 55 верных советов улучшить структуру и код ваших программ» на Ozon.ru
«Наиболее эффективное использование C++. 35 новых рекомендаций по улучшению ваших программ и проектов» на Ozon.ru

«Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions.» Книга Герба Саттера, которая также имеет продолжение — More Exceptional C++. Составлена на основе его Guru of the Week. Это набор интересных вопросов по C++ с ответами на них. Я не читала книгу, а читала Guru of the Week. У Саттера на сайте написано какие именно выпуски входят в какие книги, плюс в книгах есть еще дополнительные, для затравки, я так понимаю. 🙂
«Решение сложных задач на С++» на Ozon.ru
«Новые сложные задачи на C++» на Ozon.ru

«Язык программирования С++», Бьерн Страуструп. Часто на вопрос «Я хочу изучать С++, что бы мне такое почитать?» отвечают — «А почитай Страуструпа!». Это безопасный совет — Страуструп не мог написать плохо о языке своего собственного сочинения. Но вот начинать с этой книжки нельзя категорически. Её рекомендуют еще со стародавних времен, когда по С++ особенно нечего было читать. Но те времена давно прошли. Для человека незнакомого с С++ (возможно, и не знакомого с программированием вообще) — это как нокаутирующий удар. Он не просто ничего не поймет, но больше никогда и не вернется к изучению этого ужасного сложного языка. Почему так? Книга написана очень тяжелым языком. Ёмкие предложения, ничего лишнего. Остальные книги читаются легче, некоторые даже разбавлены веселыми примерами, анекдотами, а здесь такого нет. Не надо начинать с нее. А вот продолжить — стоит. Во-первых, несмотря на тяжелый язык есть что-то в ней неуловимо притягательное, когда втянешься в чтение. Во-вторых, считается, что каждый достойный С++ программист просто обязан прочитать эту книгу, так уж сложилось. Читать ее следует медленно, проникаясь духом великого и могучего языка С++, у меня ее чтение вызывает философско-пофигистические настроения.
Возможно, кому-то покажется интересным такой момент: главы этой книги сопровождаются упражнениями.
В оригинале эта книга называется «The C++ Programming Language», тут никаких сюрпризов.

«Язык программирования С++» есть на lib.ru.
«Язык программирования C++ Специальное издание» на Ozon.ru

«Современное проектирование на C++», Андрей Александреску. Книга посвящена в основном шаблонам. Это сложная в чтении книга, не надо спешить при ее чтении, над каждым примером кода придется подолгу медитировать. Процесс чтения напоминает американские горки — дух захватывает периодически.
После некоторых размышлений, я все-таки решила включить эту книгу в этот раздел, а не в раздел для фанатов. Потому что эта книга стала очень модной в последние годы и пользуется бешеной популярностью. Модный хардкор такой. 🙂
При применении изложенных там приемов нужно полностью понять код и идею, иначе можно такого наворотить. Несмотря на то, что я из этой книги узнала много нового, применять эти приемы на практике мне не приходилось. Я все же стараюсь обходиться более простыми решениями.
Название оригинала: Modern C++ Design: Generic Programming and Design Patterns Applied
«Современное проектирование на C++» на Ozon.ru

Это продолжение разговора о хороших книгах по С++. Начало тут.

23 коммент.:

JFYI, у Майерса и Саттера в тех же сериях есть ещё «Effective STL» и «Exceptional C++ Style».

А, совсем забыл. У Саттера и Александреску вышла совместная книжка «C++ Coding Standarts». Не знаю, есть ли в русском переводе.

21/9/06 01:57 night beast комментирует.

«C++ Coding Standarts». Не знаю, есть ли в русском переводе.

Есть. Называется «Стандарты программирования на С++»

Элджера, Элджера. http://www.piter.com/book/978580460045/
А я тоже писал такую статью. Поменьше, правда — как смог.
http://singalen.livejournal.com/29690.html

И зря вы так Страуструпа. Если в тексте нет ничего лишнего, то он наоборот, понимается легко.
Сложно с ним может быть из-за объёма материала — он просто титанический. Я после восьми лет до сих пор в него лажу.

Вспомнилась шутка:
«- Язык PL/1 плох так, что сложен в изучении! (менеджер)
— Нам-то что? Мы его уже знаем. (программисты на PL/1)»

у Майерса и Саттера в тех же сериях есть ещё «Effective STL» и «Exceptional C++ Style».

Угу, «Effective STL» будет в рассказе о книгах по STL.


И зря вы так Страуструпа. Если в тексте нет ничего лишнего, то он наоборот, понимается легко.

Это исключительно мое субьективное мнение. Я периодически встречаю мнение, что это вообще лучшая книга по С++.

Вы знаете Алёна, как альтернатива Александреску, я бы советовал прочитать «Шаблоны С++. Справочник разработчика» Авторы: Дэвид Вандевурд, Николаи М. Джосаттис (http://www.rsdn.ru/res/book/cpp/Template.xml). Прочитав её я понял что то о чём пишет Александреску может быть доступно простым смертным. Ну и последнее откровение Мэтью Уилсон
C++. Практический подход к решению проблем программирования (+ CD-ROM)
в оригинале Imperfect C++: Practical Solutions for Real-Life Programming (http://www.ozon.ru/context/detail/id/2657586/). После её прочтения я понял, что для того чтобы делать действительно елегантные и сложные вещи, аля Александреску, необязательно иметь последний компилятор 2010 года выпуска. Некоторые примеры будут работать даже на VC++5.0(eVC). И как вы правильно заметили, читаешь Александреску, круто, но вот использовать в реальной жизни не приходится. Методики Уилсона, я начал использовать почти после прочтения первых глав, хотя до кое-чего сам дошол.

Я бы посоветовал еще следующее:
— Фундаментальные алгоритмы на С++ — Седжвик
— Стандартная библиотека С++ — хорошо использовать в качестве справочника
— Для образования стоит прочитать статью «A Critique of C++ and Programming and Language Trends, 3ed»
— Хороши также книжки про Boost — «Beyond the C++ Standard Library. An introduction to Boost» и «C++ Template Metaprogramming»
— еще для образования можно почитать «C++ Network Programming», оно есть на русском
— Есть еще » Exceptional C++ Style. 40 New Engineering Puzzles, Programming Problems, and Solutions», но есть ли она на русском — не помню

Стоит отметить, что на lib.ru есть только второе издание, которое по сравнению с третьим немного неточное 😉
Вот тут можно найти несколько книг по С++ в электронном виде, включая 3е дополненное издание Страуструпа, Александреску, Мейерса. В общем полезный ресурс:)

Уважаемая Алена!
Выражаю Вам глубокую признательность,
за заслуги перед продвежением С++ в темные массы!8)))
Был немного удевлен(надо сказать приятно удивлен 8)), когда увидел блог
девушки, посвященный программингу и, темболее С++!

Желаю Вам удачи в этом благородном деле!8)

С уважением, DeepRat aka C1@# (vprofi@mail.ru)

Уважаемая Алена!
Выражаю Вам глубокую признательность,
за заслуги перед продвежением С++ в темные массы!8)))

Веприк said. я бы советовал прочитать «Шаблоны С++. Справочник разработчика» Авторы: Дэвид Вандевурд, Николаи М. Джосаттис (http://www.rsdn.ru/res/book/cpp/Template.xml).
Давненьк разыскиваю даннуюю книженци, возможно у кого-то имеется электронный вариант. Буду очень благодарен

http://www.flazx.com/ebook749.php
Если кто-то еще не нашел
«Шаблоны С++. Справочник разработчика» Авторы: Дэвид Вандевурд, Николаи М. Джосаттис
Правда по ссылке — на английском:
«C++ Templates: The Complete Guide» Nicolai M. Josuttis

Интересно а может кто-нибудб показать хоть одну нормальную программу написанную Бьерн Страуструп, все что приводилость в его книгах (ссылки на софт разработанный автором) полное говно. Как можно учить язык по книге человека который сам в этом плохо разбирается. После таких авторов и появляются редакторы на уровне блокнота для работы которых необходим чуть ли не кластер и тд.

Программирование: принципы и практика использования C++
Бьярне Страуструп

Programming: Principles and Practice Using C++
Bjarne Stroustrup

Книга уже продается, хотя год издания 2011 😀 И в действительности подходит начинающим. В отличие от «Язык программирования С++», которая больше как справочник имхо. Но по охвату материала обе хороши.

Здравствуйте, Алена! Огромное спасибо за Ваш блог.
Посоветуйте пожалуйста продолжающему изучать С++. Прочел Дэвис «С++ для чайников» и Шилдт «С++ Базовый курс». Что дальше? Судя по требованиям к соискателям на должность С++ developer, необходимы знания MFC и API. Порекомендуйте пожалуйста литературу в этой области.
Заранее благодарен, Евгений.

Анонимный
Здравствуйте, Алена! Огромное спасибо за Ваш блог.

Посоветуйте пожалуйста продолжающему изучать С++. Прочел Дэвис «С++ для чайников» и Шилдт «С++ Базовый курс». Что дальше? Судя по требованиям к соискателям на должность С++ developer, необходимы знания MFC и API. Порекомендуйте пожалуйста литературу в этой области.
Заранее благодарен, Евгений.

Требования сильно зависят от того, что именно вы будете разрабатывать. Знания MFC и WinAPI нужны были для разработки оконных приложений под Windows и было это довольно давно.
Тут я ничего посоветовать не могу, потому что этим не занимаюсь.

Короче говоря, на данном этапе Вам нужно выбрать специализацию.

Со специализацией уже определился, точнее меня определили будущие работадатели, сказали под Linux нужно писать. Прошел техническое собеседование по основам С++, чтоб попасть на 3-х месячный курс обучения в большой ИТ-конторе:) Ведущий группы порекомендовал читать пока такие книги:
Крэг Ларман «Применение UML 2.0 и шаблонов проектирования.»
Гамма — «Приемы объектно-ориентированного проектирования. Паттерны проектирования.»
Я так понимаю — это классика.
Какое Ваше мнение об этих книгах?
Если MFC и API не актуальны, то что же используют под Windows? С#?

Евгений
Крэг Ларман «Применение UML 2.0 и шаблонов проектирования.»
Гамма — «Приемы объектно-ориентированного проектирования. Паттерны проектирования.»
Я так понимаю — это классика.
Какое Ваше мнение об этих книгах?

Первую не читала. Вторая — хорошая книга и да, классика.

Если MFC и API не актуальны, то что же используют под Windows? С#?

Я вообще-то всегда считал, что Скотт Майерс взял эти примеры из своей практики. Они очень ценны так позволяют перейти на уровень профессионала и даже эксперта. Но как выяснилось это лажа, Скотт Майерс просто писатель. а не хороший программист. Он просто зарабатывает деньги! Потому что почитав источник его советов Guru of the weeks я увидел, что они все оттуда. А туда пишут разные программисты. Т.е. это коллективный труд, а не его персональная заслуга. кстати, в Guru of the weeks намного больше примерчиков всяких и это актуально ибо всё время пополняется. И вы можете туда отправить что-то ценное, если найдёте и это послужит уроком других. Обмен опытом это очень хорошо. Правда там по английски, но для меня всё равно. Читайте Guru of the weeks и не надо никаких книг покупать! К тому же это ещё и бесплатно.

В целом все книги в описании устарели. Язык и стандарт развивается. На сейчас я бы посоветовал последнее на сейчас издание Страуструпа (пока только на английском) и Майерса описывающие C++ 11 и С++ 14.

В целом все книги в описании устарели. Язык и стандарт развивается. На сейчас я бы посоветовал последнее на сейчас издание Страуструпа (пока только на английском) и Майерса описывающие C++ 11 и С++ 14.

13 материалов для «продолжающих» С++ разработчиков

Кэширование кода на примере браузера Chrome: какую роль оно играет для оптимизации работы сайтов, а также какие бывают виды кэша.
— Читать дальше «Кэширование кода для JavaScript-разработчиков на примере Chrome»

Как настроить полифилл globalThis в универсальном JavaScript

В статье рассказано, как с помощью свойства globalThis реализовать стандартный способ доступа к глобальному значению this в разных средах.
— Читать дальше «Как настроить полифилл globalThis в универсальном JavaScript»

Разбираемся с Async/Await в JavaScript на примерах

На конкретных примерах с кодом объясняем концепцию асинхронного программирования с использованием Async/Await в JavaScript.

Анимированное руководство по CSS flex


Свойство CSS flex — это сокращенное свойство, определяющее способность гибкого элемента растягиваться или сжиматься для заполнения собой доступного свободного пространства. Это свойство устанавливает flex-grow, flex-shrink и flex-basis.

Зачем нужен Python Global Interpreter Lock и как он работает

Python Global Interpreter Lock (GIL) — блокировка, позволяющая только одному потоку управлять интерпретатором Python. Рассмотрим, как она работает.
— Читать дальше «Зачем нужен Python Global Interpreter Lock и как он работает»

10 принципов ООП, о которых стоит знать каждому программисту

Эта статья расскажет о 5 принципах SOLID и других существующих принципах объектно-ориентированной разработки и какие преимущества они предлагают.
— Читать дальше «10 принципов ООП, о которых стоит знать каждому программисту»

1–2 июня, Минск: EMERGE HACK

На хакатоне ждут всех, кто хочет улучшить качество жизни людей, городскую среду, повысить уровень здоровья и долголетия населения планеты.
— Читать дальше «Хакатон EMERGE HACK»

18–19 мая, Казань, Ижевск, Новосибирск, Екатеринбург: хакатон «Урбатон»

На хакатоне, посвящённом урбанистике, нужно будет придумать и реализовать идею, направленную на улучшение жизни горожан и развитие городской инфраструктуры.
— Читать дальше «Хакатон «Урбатон»»

12 концепций, которые прокачают ваш JavaScript

Эти 12 основополагающих концепций, конечно, не охватывают всего, что должен знать разработчик, но они важны для любого JS-программиста.

Пишем одностраничное приложение с Flask и Vue.js

Это пошаговое руководство по настройке CRUD-приложения с помощью Vue и Flask. Вы узнаете как создать новое приложения с Vue CLI.

Конференция SECON’2020

На конференции узнаете последние тренды и новости из мира IT, пообщаетесь со специалистами и посоревнуетесь с другими гостями в логическом мышлении.
— Читать дальше «Конференция SECON’2020»

JavaScript для продвинутых: пишем симулятор гравитации

В этот руководстве создадим симуляцию внутренней области нашей Солнечной системы, используя только старый добрый JavaScript.
— Читать дальше «JavaScript для продвинутых: пишем симулятор гравитации»

Как эмулировать многопоточность в JavaScript

Изучая языки, подобные Java, мы часто сталкиваемся с потоками. Они предназначены для исполнения кода за пределами основной программы. Многие языки, например семейство .NET, имеют реализации параллельного программирования. Однако JavaScript — однопоточный язык.

Хакатон Tula Web Cup 2020

Можно показать себя в сфере веба или основ программирования, а также выиграть ценные призы и обучение по программе «Сбербанка».
— Читать дальше «Хакатон Tula Web Cup 2020»

Способы передачи данных между компонентами в React

В React есть несколько способов передачи данных между компонентами: Render props / props, Context, React-Redux / Redux.

Интенсив Scala Basic

16–17 февраля в Москве пройдёт интенсивный курс по основам языка Scala. Организатор — сообщество Binary District. Для кого? Программа предназначена для людей, уже знакомых с программированием, но не умеющих работать со Scala, а также для начинающих ана…

Конференция PyCon Belarus 2020

15–16 февраля в Минске состоится пятая конференция PyCon Belarus 2020. Она организована сообществом SPACE в сотрудничестве с Python-энтузиастами из Беларуси, России, Украины и Португалии. Кому будет интересно? Всем, кто интересуется Python: студентам, …

React: практики, которые помогут стать продвинутым разработчиком

React.js — один из лучших и наиболее популярных способов создать одностраничное приложение. Это гибкий и удобный фреймворк, с помощью которого можно либо добавить компонент на существующий сайт, либо создать новый
— Читать дальше «React: практики, кото…

Курс «Python для анализа данных» от Mail.Ru Group

Mail.Ru Group совместно с МФТИ запустили на онлайн-платформе Coursera программу «Python для анализа данных». Кому подойдёт? Курс завершает специализацию «Программирование на Python», поэтому рассчитан на учащихся со средними знаниями разработки. Есть б…

React.js для продолжающих

Итак, вы изучили основы React.js и теперь не знаете, что делать дальше? В статье рассмотрены 5 интересных вещей, которые поднимут ваши навыки и знания React.js на новый уровень. Жизненный цикл
— Читать дальше «React.js для продолжающих»

Используем параллельные алгоритмы C++17 для улучшения производительности


Мы перевели пост из блога Microsoft, в котором разработчик рассказывает, как пользоваться параллельными алгоритмами, поддержка которых появилась в стандартной библиотеке C++17. Как использовать параллельные алгоритмы Чтобы использовать библиотеку парал…

26 полезных приёмов и хитростей Python

Python — один из самых популярных и востребованных языков программирования. На это есть несколько причин: Его легко изучить. Он очень универсальный. У него есть множество модулей и библиотек. В процессе
— Читать дальше «26 полезных приёмов и хитростей …

Тест: вы уверены, что знаете C++ достаточно хорошо?

Думаете, что знаете C++? Этот каверзный тест на знание неочевидных моментов языка с любовью и нежностью собран по крупицам из книг, статей и выступлений на конференциях. Не торопитесь с ответом,
— Читать дальше «Тест: вы уверены, что знаете C++ достато…

Создаём веб-приложение с Java Servlets

Одной из самых приятных особенностей Java является её многогранная природа. Конечно, создание традиционных десктопных и даже мобильных приложений — это здорово. Но что, если вы хотите уйти с проторенных дорожек
— Читать дальше «Создаём веб-приложение с…

Как разобраться в Computer Science самостоятельно

Для большинства программистов Computer Science — факультет в зарубежных вузах, целиком и полностью посвящённый программированию, математике и всему, что связано с разработкой программного обеспечения. К счастью, в современном мире необязательно
— Читат…

Какую структуру данных выбрать для реализации словаря

Если вам нужно создать словарь, вероятно, вы уже задумывались над выбором структуры данных для хранения слов. Ваш выбор должен зависеть от задач, которые призвана решить эта структура. Хеш-таблица Если вы
— Читать дальше «Какую структуру данных выбрать…

Продвинутая работа с данными

Мы в основном, использовали буферы в OpenGL для хранения данных в течение довольно долгого времени. Есть более интересные способы манипулирования буферами, а также другие занятные методы передачи больших объемов данных шейдерам с помощью текстур. В этом руководстве мы обсудим несколько наиболее более интересных функций буфера и то, как мы можем использовать текстурные объекты для хранения больших объемов данных (текстурная часть урока еще не написана).

eao197 26 февраля 2020 в 13:19

Асинхронные HTTP-запросы на C++: входящие через RESTinio, исходящие через libcurl. Часть 1

Преамбула

Наша команда занимается разработкой небольшого, удобного в использовании, встраиваемого, асинхронного HTTP-сервера для современного C++ под названием RESTinio. Начали его делать потому, что нужна была именно асинхронная обработка входящих HTTP-запросов, а ничего готового, чтобы нам понравилось, не нашлось. Как показывает жизнь, асинхронная обработка HTTP-запросов в C++ приложениях нужна не только нам. Давеча на связь вышли разработчики из одной компании с вопросом о том, можно ли как-то подружить асинхронную обработку входящих запросов в RESTinio с выдачей асинхронных исходящих запросов посредством libcurl.

По мере выяснения ситуации мы обнаружили, что эта компания столкнулась с условиями, с которыми сталкивались и мы сами, и из-за которых мы и занялись разработкой RESTinio. Суть в том, что написанное на C++ приложение принимает входящий HTTP-запрос. В процессе обработки запроса приложению нужно обратиться к стороннему серверу. Этот сервер может отвечать довольно долго. Скажем, 10 секунд (хотя 10 секунд — это еще хорошо). Если делать синхронный запрос к стороннему серверу, то блокируется рабочая нить, на которой выполняется HTTP-запрос. А это начинает ограничивать количество параллельных запросов, которые может обслуживать приложение.

Qt: Пишем обобщенную модель для QML ListView

Кому-то материал этой статьи покажется слишком простым, кому-то бесполезным, но я уверен, что новичкам в Qt и QML, которые впервые сталкиваются с необходимостью создания моделей для ListView , это будет полезно как минимум как альтернативное*, быстрое и довольно эффективное решение с точки зрения «цена/качество».

*Как минимум, в свое время ничего подобного мне нагуглить не получилось. Если знаете и можете дополнить — welcome.

О чем шум?

С приходом в Qt языка QML создавать пользовательские интерфейсы стало проще и быстрее… пока не требуется тесное взаимодействие с C++ кодом. Создание экспортируемых C++ классов достаточно хорошо описано в документации и до тех пор пока вы работаете с простыми структурами все действительно достаточно тривиально (ну почти). Основная неприятность появляется, когда нужно «показать» в QML элементы какого-то контейнера, а по-простому — коллекции, и в особенности, когда эти элементы имеют сложную структуру вложенных объектов, а то и другие коллекции.

Пробрасываем вызовы Steam API из Wine в GNU/Linux и обратно с помощью Nim

У игроков на платформе GNU/Linux множество проблем. Одна из них — необходимость устанавливать отдельный клиент Steam для каждой Windows игры из Steam. Ситуация усугубляется необходимостью установки ещё и родного клиента Steam для портированных и кроссплатформенных игр.

Но что если найти способ использовать один клиент для всех игр? За основу можно взять родной клиент, а игры для Windows пусть обращаются к нему так же как, например, к OpenGL или звуковой подсистеме GNU/Linux — средствами Wine. О реализации такого подхода и пойдёт речь далее.

Рекомендуем

Воспоминания разработчика Blizzard: как появилась первая Diablo

Полотна Уорхола и рабочие места: зачем брать в аренду то, что можно купить

Если друг стал жертвой преступления, а из улик только код: квест в стиле нуар

STM32 blink++ или читаем данные инкрементального энкодера

Мотивация

Пару месяцев назад я рассказывал, как работает инкрементальный энкодер и как читать угол при помощи простейшей ардуины. Разумеется, немедленно получил вот такие комментарии:

У меня ардуино головного мозга. Пусть лично я самой средой ардуино и не пользуюсь, но всё же считаю, что это весьма полезная штука. Я слышал много ужасов про то, как начинать с stm32, и не хотел в это влезать. С другой стороны, в последнее время всё чаще стали слышны комментарии о том, что инструментарий допилили и вообще всё в шоколаде. Решил попробовать, сколько времени у меня займёт сделать простейший проект типа помигать светодидом. Купил синюю таблетку, купил китайский аналог отладчика st-link v2, и сел с этим всем разбираться.


Забегая вперёд, вот так выглядит железка, о которой идёт речь:

clubs 21 февраля 2020 в 09:27

Флаги в аргументах функций

Вы когда-нибудь сталкивались с таким кодом?

Эта функция, судя по названию, что-то обрабатывает (process). Но что означают параметры? Какой параметр здесь true, а какой false? По вызывающему коду об этом нельзя судить.

Нам придется заглянуть в объявление функции, которое дает подсказку:

Очевидно, автор использует два параметра типа bool как флаги (toggles). Реализация функции может быть похожа на это:

Назначение флагов очевидно, поскольку каждый из них имеет осмысленное название. Проблема возникает в вызывающем коде.

Основные принципы C++: Правила выражений и операторов

Что ж, мы плавно выходим на старт второго потока группы «Разработчик С++» и разбираем интересные материалы, которые накопились у преподавателя в свободное от работы и преподавания время. Сегодня рассмотрим (а потом и продолжим) серию материалов, где разбираются отдельные пункты С++ Core Guidelines.

В C++ Core Guidelines много правил, посвященных выражениям и операторам. Если быть точным, то более 50 правил посвящено объявлениям, выражениям, операторам и арифметическим выражениям.

*перевод
Информативные названия

Оптимальная длина переменных

  • Не должны быть слишком длинными (maximimNumberOfPointsInModernOlympics.) или слишком короткими (например, x, x1)
  • Длинные названия сложно печатать, короткие названия недостаточно информативны..
  • Дебажить программы с названиями от 8 до 20 символов гораздо проще
  • Гайдлайны не заставляют вас срочно менять названия переменных на имена из 9-15 или 10-16 символов. Но если вы найдете в своем коде более короткие названия, убедитесь, что они достаточно информативны.

Слишком длинные: numberOfPeopleOnTheUsOlympicTeam; numberOfSeatsInTheStadium; maximumNumberOfPointsInModernOlympics
Слишком короткие: n; np; ntmn; ns; nslsd; m; mp; max; points
В самый раз: numTeamMembers, teamMembersCount

AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Ускоряем метод Виолы-Джонса (Viola-Jones)

В последнее время метод Виолы-Джонса, который долгое время был основным способом детектирования объектов на изображении, отступает под натиском более новых и совершенных алгоритмов. Тем не менее, актуальность этого метода еще сохраняется и в настоящем времени.

Да, каскадный классификатор основанный на признаках Хаара (метод Виолы-Джонса) уступает в скорости работы каскадному LBP классификатору. Он менее точен, чем детектор, основанный на HOG признаках, и тем более детектор, базирующийся на сверточных нейронных сетях. И все же у него есть определенная ниша, когда требуется точность выше, чем у LBP каскада, но скорость работы более точных детекторов недостаточна высока. Не менее важным фактором является то, что для каскадного Хаар классификатора существует большое количество уже обученных каскадов, в том числе в стандартной поставке библиотеки OpenCV. Поэтому скорость работы этого алгоритма весьма важна. Что и побудило автора в свое время занятся его оптимизацией.

Открытый урок «Диаграммы UML»

Наш курс «Разработчик С++» потихоньку растёт и ширится: присоединился новый преподаватель с очень богатым опытом — Юрий Авраменко. И он уже провёл у нас первый открытый урок по диаграммам UML, на котором разбирались: виды диаграмм, инструменты построения схем и диаграмм, варианты представлений и прочее.

eao197 12 февраля 2020 в 19:41

Задействовать для простых тестов наследование, полиморфизм и шаблоны? Почему бы и нет…

Язык C++ сложен. Но его сложность проистекает из сложности задач, которые решаются с помощью C++. Каждая фича, которая была добавлена в C++, была добавлена не просто так, а для того, чтобы дать возможность справиться к какой-то проблемой. Ну а уж сочетание существующих в C++ фич делает язык чрезвычайно мощным инструментов. Конкретному примеру того, как это происходит на практике, и посвящена данная статья.

Добавлю еще, что одним из мощных стимулов к написанию данной статьи стало то, что очень часто на глаза попадаются объемные флеймыобсуждения на тему «ООП не нужно» и, особенно, «шаблоны-дженерики на практике почти никогда не нужны». Мне, как далеко не молодому программисту, начинавшему в 1990-ом как раз с инструментов, в которых не было ни ООП, ни шаблонов-дженериков, странно сталкиваться с подобными точками зрения. Но, чем дальше, тем чаще с ними сталкиваешься. Особенно со стороны приверженцев новых языков программирования, вроде Go или Rust-а.

Сложно сказать, чем это вызвано. Может быть людей перекормили ООП (а это так и было)… Может быть задачи за несколько минувших десятилетий сильно поменялись (а это так и есть)… Может быть и просто «вот и выросло поколение»… Как бы то ни было, можно попробовать на примере из реальной жизни показать, что все не так однозначно ©.

Итак, о чем пойдет речь?

Вакансии

eao197 9 февраля 2020 в 14:18

Научиться перехватывать необработанные сообщения или пример того, как SObjectizer обрастает новыми фичами…

Нам очень приятно, когда в SObjectizer добавляются новые возможности, возникшие в результате подсказок и/или пожеланий пользователей SObjectizer-а. Хотя далеко не всегда это оказывается просто. Ведь, с одной стороны, у нас, как у команды разработчиков и старых пользователей SObjectizer-а, уже есть собственные стереотипы о том, как SObjectizer принято использовать. И не всегда получается сразу оценить «свежий взгляд со стороны», понять что реально хочет видеть пользователь во фреймворке и почему он не удовлетворен имеющимися средствами. С другой стороны, SObjectzer не такой уж и маленький фреймворк, добавление новых возможностей требует определенной осмотрительности. Нужно, чтобы новая функциональность не конфликтовала с уже имеющимися фичами. И, тем более, чтобы после добавления чего-то нового не сломалось то, что уже есть и давно работает. Плюс к тому, у нас есть пунктик по поводу сохранения совместимости между версиями SObjectizer-а, поэтому мы сильно против кардинальных изменений…

В общем, добавление нового в SObjectizer — это всегда приятно с точки зрения увеличения возможностей фреймворка и повышения удобства его использования. Но далеко не всегда это так же приятно и просто с точки зрения реализации.

Под катом небольшой рассказ о том, как в SObjectizer добавлялась одна новая фича. Может быть кому-то из читателей будет интересно посмотреть, как старый фреймворк адаптируется под запросы новых пользователей.

ysynov 8 февраля 2020 в 13:00


Использование Boost.Asio с Coroutines TS

Введение

Использование функций обратного вызова (callback) — популярный подход к построению сетевых приложений с использованием библиотеки Boost.Asio (и не только ее). Проблемой этого подхода является ухудшение читабельности и поддерживаемости кода при усложнении логики протокола обмена данными [1].

Как альтернатива коллбекам, сопрограммы (coroutines) можно применить для написания асинхронного кода, уровень читабельности которого будет близок к читабельности синхронного кода. Boost.Asio поддерживает такой подход, предоставляя возможность использования библиотеки Boost.Coroutine для обработки коллбеков.

Boost.Coroutine реализует сопрограммы с помощью сохранения контекста выполнения текущего потока. Этот подход конкурировал за включение в следующую редакцию стандарта C++ с предложением от Microsoft, которое вводит новые ключевые слова co_return, co_yield и co_await. Предложение Microsoft получило статус Technical Specification (TS) [2] и имеет высокие шансы стать стандартом.

Статья [3] демонстрирует использование Boost.Asio с Coroutines TS и boost::future. В своей статье я хочу показать, как можно обойтись без boost::future. Мы возьмем за основу пример асинхронного TCP эхо-сервера из Boost.Asio и будем его модифицировать, используя сопрограммы из Coroutines TS.

MarkGrin 6 февраля 2020 в 10:43

Концептуальная сортировка в С++20

К изменениям лучше готовиться заранее, поэтому предлагаю посмотреть на то, что войдет в стандарт C++20, а именно на концепции.

clubs 4 февраля 2020 в 22:02

Сумма сумм арифметических прогрессий

Пускай у нас есть некий ряд ячеек, часть которых можно пометить как «занятые»:

Нам нужно узнать, сколько всего существует вариантов расположения занятых ячеек.

К этой схеме сводится множество задач. Например, разбиение периода из N + 1 календарных дней на l + 1 следующих друг за другом меньших периодов. Допустим, мы хотим провести оптимизационный расчет методом «грубой силы», рассчитав целевую функцию для каждого возможного варианта разбиения периода, чтобы выбрать наилучший вариант. Чтобы заранее оценить время расчета, нужно определить количество вариантов. Это поможет принять решение, стоит ли вообще начинать расчет. Согласитесь — полезно будет заранее предупредить пользователя вашей программы, что с теми параметрами, которые он задал, расчет займет 10000 лет.

Понимание lvalue и rvalue в C и С++

Привет, Хабр! Представляю вашему вниманию перевод статьи Eli Bendersky, Understanding of lvalues and rvalues in C and C++.

От переводчика: предлагаю Вашему вниманию перевод интересной статьи об lvalue и rvalue в языках C/C++. Тема не нова, но знать об этих понятиях никогда не поздно. Статья рассчитана на новичков, либо на программистов переходящих с C (или других языков) на C++. Поэтому будьте готовы к подробному разжёвыванию. Если вам интересно, добро пожаловать под кат

Chromium: другие ошибки

 Мы завершаем цикл статей, посвященных рекомендациям по написанию качественного кода на примере ошибок, найденных в проекте Chromium. После написания 6 статей, у нас всё ещё остаётся много нерассмотренных ошибок. Эти ошибки разнородны и про них сложно составить материал на определённую тему. Поэтому в этой седьмой статье будут просто выбраны и рассмотрены наиболее интересные дефекты.

Как я писал в вводной статье, просматривая отчёт, выданный анализатором PVS-Studio, я заметил около 250 ошибок в проекте Chromium и использованных в нём библиотеках. Отчёт я смотрел достаточно бегло, поэтому, на самом деле, ошибок можно найти намного больше.

После вводной статьи я написал еще 6, где рассматривал различные паттерны ошибок. Писал я эти статьи, писал, и всё равно, у меня остаётся около 70 примеров ошибок. Сделать на основании оставшихся багов статьи на разные темы я затрудняюсь. Возможно, я устал. Впрочем, есть и другая причина — меня ждёт отчёт о проверке XNU и мне не терпится им позаниматься.

Московская Школа программистов (МШП) в Физтехпарке

В 2020 году Московская Школа программистов открыла новое отделение на территории Физтехпарка, теперь еще большее количество ребят сможет обучаться новым технологиям и основам IT-профессий.

Лаборатория робототехники с большим количеством роботов

Современное техническое оснащение учебных помещений

Совместный проект с МФТИ Физтех

Образовательная программа разработана на базе авторских методик, курсы подбираются исходя из возраста и индивидуальных особенностей ребенка.

Подойдет для учеников 3-4 классов, только делающих свои первые шаги в мире информатики.

Ребята познакомятся с базовой компьютерной подготовкой, основами робототехники WeDo, компьютерной графики, с азами программирования и алгоритмики, а также смогут научиться успешно решать развивающие задачи по математике.

Набор на 2020/2020 учебный год закрыт. Приглашаем на экзамены в следующем году.

Длится 2 года. Курс рассчитан на учащихся 5-7 классов и имеет 3 варианта учебного плана, каждый из которых учитывает возрастной аспект, уровень имеющихся знаний и потребности ученика.

В ходе обучения ребята смогут подготовиться к олимпиадам по информатике и даже поучаствовать в них, углубить уже имеющиеся знания и начать подготовку к ЕГЭ.

Набор на 2020/2020 учебный год закрыт. Приглашаем на экзамены в следующем году или можете учиться онлайн прямо сейчас!

Длится 1 год, предназначена для продолжающих обучение после курса «Базовая подготовка».


Занятия направлены на развитие у старшеклассников профессиональных навыков и компетенций в области IT. Также учащиеся смогут продолжить подготовку к ЕГЭ и поступлению в профильные вузы.

Ученики, которые находятся на этой ступени, уже выбрали направление профессиональной ориентации и продолжают формировать свой индивидуальный план самостоятельно, выбирая изучение современных технологий и языков, например, Assembler, C++ и C#.

В программисты за полгода: что такое буткемпы и как освоить кодинг в рекордные сроки

Теории и практики

За последние несколько лет обучение программированию в формате буткемпа превратилось в индустрию, которая только в США за 2020 год заработала 240 миллионов долларов. Буткемпы обещают научить кодингу в рекордно короткие сроки, и все больше людей выбирают такие интенсивы вместо университетских программ. T&P вместе с «Яндекс.Практикумом» разбираются, как устроены буткемпы, возможно ли стать разработчиком за полгода и кому подойдет такой формат обучения.

Что такое буткемпы и чем они отличаются от курсов по программированию?

Буткемпы — это интенсивные программы ускоренного обучения IT-специальностям, которые помогают новичкам быстро освоиться в мире технологий, получить первые профессиональные навыки и найти работу. Студент может оплатить обучение сразу, в рассрочку или после того, как начнет получать первую зарплату.

Концепция онлайн-буткемпа Thinkful — работа на стыке образования и

Первые буткемпы обучали веб-разработке, но со временем модель распространилась на другие дисциплины: анализ данных, кибербезопасность, дизайн, проектирование интерфейсов, диджитал-маркетинг и т. д. Однако веб-разработка остается самым популярным направлением — специалистов в этой области не хватает во всем мире. Университеты не справляются со спросом и учат (по сегодняшним меркам) непростительно долго: вместо четырех лет, которые уходят на получение степени бакалавра, в буткемпе можно получить знания и опыт меньше чем за год. Многие школы помогают выпускникам в поиске работы и даже гарантируют трудоустройство.

Буткемпы предлагают три варианта обучения:

полное погружение, или иммерсивное обучение, — групповые занятия в классе до 80 часов в неделю; по данным отраслевого портала Course Report, учеба занимает в среднем 14 недель и стоит $11 900;

онлайн-буткемп — самостоятельные занятия в удобное время и общение один на один с наставником; средняя продолжительность обучения — 15 недель, стоимость — $11 100;

занятия по вечерам или выходным — вариант для тех, кто не может оставить работу ради учебы; обычно это 15 часов еженедельных занятий в классе и столько же самостоятельной работы; из-за частичной занятости обучение может занять гораздо больше времени.

Буткемпы Курсы программирования
Стоимость Бесплатный вводный курс
и дорогостоящее дальнейшее
обучение
Невысокая, есть много
бесплатных курсов
Формат
обучения
и программа
Личное общение с наставником:
скорость прохождения курса
не зависит от уровня подготовки
других участников
Групповые занятия без наставничества:
скорость прохождения страдает
от разного уровня одногруппников
Практика Работа над собственными проектами
в процессе обучения
Домашние задания без практической
направленности
Помощь
в поиске
работы
Программа включает блок о том,
как устроиться на работу
и развиваться дальше
В программе отсутствует блок
о трудоустройстве
Мотивация
учиться
Есть стимул пройти обучение:
можно быстро устроиться на работу
Нет мотивации окончить курс,
особенно если он бесплатный

Как появились буткемпы?

В 2011 году пользователь сайта Hacker News, принадлежащего бизнес-акселератору Y Combinator, предложил научить шесть человек веб-разработке за восемь недель, трудоустроить учеников, а плату за обучение взять у работодателей. Идею быстро подхватили. Тут же, на Hacker News, появилось объявление о пятимесячной бесплатной программе обучения разработчиков с гарантией трудоустройства.

То самое объявление на Hacker News

Это было во времена, когда IT-индустрия остро нуждалась в программистах, но готовых специалистов было катастрофически мало. Обучение еще не было таким доступным, как сегодня. Интенсивы по программированию (буткемпы) стали, как отметил Bloomberg, решением проблем технологических компаний, которые с трудом закрывали вакансии.

Как развивался рынок буткемпов?

По данным отраслевого портала Course Report, в 2020 году в США работали 108 буткемпов — их годовой доход оценивается в 240 миллионов долларов. С 2013 года количество выпускников американских интенсивов по программированию выросло в девять раз и превысило отметку в 20 тысяч человек. Вслед за США буткемпы открылись по всему миру: в базе агрегатора SwitchUp есть информация о 434 учебных курсах такого формата.

Портал Course Report с 2014 года публикует статистику рынка в отчете Coding Bootcamp Market Size Study

В 2020 году, когда количество студентов буткемпов резко возросло, пресса обрушилась на новую отрасль с резкой критикой. Обозреватель Wired Исси Лаповски прогнозировала ее скорую смерть, а журналистка Bloomberg Сара Макбрайд написала разгромную статью с заголовком «Хотите работать в Кремниевой долине? Держитесь подальше от буткемпов». СМИ увидели несколько проблем буткемпов:

запросы IT-отрасли изменились, а образовательные программы не стали более продвинутыми;

публикуя ложную статистику об успешности своих выпускников, игроки рынка создают ажиотаж вокруг обучения; выбор среди огромного количества кампусов стал непростой задачей;

рекрутеры крупных компаний не берут на работу выпускников буткемпов, считая, что они не готовы к работе;

обучение в буткемпах слишком дорогое, поэтому студенты часто берут кредиты в надежде на обещанную высокую зарплату, но в итоге остаются без работы и с долгами.

Предсказания не сбылись: потребность американских компаний в оказалась слишком велика. В 2015 году в США количество открытых вакансий в этой сфере в десять раз превысило число выпускников IT-колледжей, а администрация Барака Обамы предсказала, что к 2020 году появится 1,4 млн рабочих мест, связанных с программированием, притом что только 400 тысяч человек будут иметь необходимые для этой работы навыки.

И все же рынок буткемпов столкнулся с серьезными изменениями:

нью-йоркская прокуратура оштрафовала одну из школ на 375 000 долларов за опубликованный на сайте отчет, согласно которому 98,5% выпускников находили работу в течение полугода после обучения, — на деле оказалось, что в расчетах учитывали стажеров, фрилансеров и даже тех, кого уволили в течение первых трех месяцев;

был создан специальный «Совет по добросовестности в отчетности» (CIRR), участники которого договорились, какого выпускника можно считать успешно трудоустроенным: он должен работать не менее 20 часов в неделю в течение трех месяцев и получать вознаграждение за свой труд;

из-за финансовых проблем закрылись два крупнейших буткемпа Dev Bootcamp и The Iron Yard, под угрозой банкротства оказался их главный конкурент General Assembly, но ему удалось устоять; сегодня под брендом GA работают 20 кампусов в шести странах мира.

Кампусы General Assembly в Атланте, Сан-Франциско, Лондоне и Сингапуре
Фото: @General Assembly

Кому нужны буткемпы?

По данным Course Report, среднестатистическому буткемперу 30 лет, за его плечами — степень бакалавра и шесть лет опыта работы в сфере, не связанной с программированием. Буткемп окажется хорошим вариантом, если вы:


решили поменять сферу деятельности, хотите получить новые навыки и найти работу как можно скорее;

способны быстро воспринимать новую информацию и любите интенсивную учебу;

нуждаетесь в наставнике, который поможет освоить профессию и покажет перспективы развития.

У многих буткемпов есть программы и для действующих разработчиков, благодаря которым можно получить сертификаты, подтверждающие определенные навыки, или просто повысить квалификацию.

Онлайн или офлайн?

Онлайн-сегмент рынка буткемпов растет быстрее традиционного офлайн-формата: в 2020 году Course Report впервые выделил его в отдельную часть отчета. Рост по сравнению с 2020 годом составил 173%.

Еще два года назад онлайн-буткемпы воспринимались скептически. Хотя изучение компьютерных наук в сети кажется логичным, школы с трудом поддерживали вовлеченность студентов в . Существующие кампусы боялись потерять доход из-за некачественного продукта, а новые не хотели рисковать. Некоторые все же решились комбинировать офлайн- и , чтобы вместить больше учеников. За 2020 год американские онлайн-буткемпы заработали $21 млн — почти 10% дохода всей отрасли.

И хотя традиционные школы все еще более популярны, у немало преимуществ:

стоимость обучения часто ниже, не нужно ехать в другой город или страну (то есть сталкиваться с дополнительными расходами);

более гибкое расписание;

в процессе обучения развивается привычка работать вне офиса — очень актуальное умение для представителей современных профессий.

Топ-5 лучших мировых онлайн-буткемпов по версии сервиса SwitchUp

App Academy (4,7 из 5)

Особенности: Участники платят за обучение только после того, как найдут свою первую работу в . Конкурсный отбор студентов

Программа обучения: Ruby on Rails, JavaScript, React, Redux, SQL, алгоритмы и структуры данных (продвинутый уровень), поиск работы.

Срок обучения: Полгода полного погружения (45 часов занятий в неделю).

Результаты работы: 650 отзывов на SwitchUp, более 2600 выпускников работают в 935 компаниях.

General Assembly (4,22 из 5)

Особенности: Обучение около половины студентов финансируется работодателями.

Программа обучения: Фронтенд-разработка, разработка ПО, программирование на Python, JavaScript, React и т. д.

Срок обучения: 2,5 месяца частичной занятости (шесть часов занятий в неделю).

Результаты работы: 643 отзыва на SwitchUp, более 2600 выпускников работают в 935 компаниях.

Springboard (4,74 из 5)

Особенности: Предусмотрен возврат средств за обучение, если выпускник не устроится на работу в течение полугода.

Программа обучения: Data-science (программа для тех, кто уже имеет опыт программирования).

Срок обучения: Полгода полного погружения (более 20 часов занятий и видеозвонков с наставником в неделю).

Результаты работы: 337 отзывов на SwitchUp, больше 1450 выпускников работают в Facebook, Google, Microsoft, LinkedIn, Boeing, HP, McAfee и других крупных компаниях.

Bloc (4,75 из 5)

Особенности: Есть стипендиальный фонд для женщин, военнослужащих и их семей.

Программа обучения: Веб-разработка (Ruby on Rails, JavaScript, jQuery, HTML, CSS, AngularJS, React.js, Node.js).

Срок обучения: Восемь месяцев полного погружения (онлайн-курс сфокусирован на развитии навыков для работы и наработки портфолио).

Результаты работы: 324 отзыва на SwitchUp, больше 5 тысяч выпускников за восемь лет работы.

Thinkful (4,7 из 5)

Особенности: Все программы можно пройти онлайн, есть возможность обучения по вечерам и выходным.


Программа обучения: Веб-разработка (CSS, Git, HTML, Node.js, React.js), подготовка к работе (составление резюме, фиктивные собеседования).

Срок обучения: Пять месяцев полного погружения (50–60 часов в неделю) или семь месяцев частичной занятости (25 часов в неделю).

Результаты работы: 275 отзывов на SwitchUp, 86% выпускников онлайн-курсов нашли постоянную работу или стажировку по специальности.

Есть ли буткемпы в России?

Как и в США, у нас катастрофически не хватает IT-специалистов. В начале прошлого года Фонд развития интернет-инициатив (ФРИИ) спрогнозировал, что к 2027 году России понадобится два миллиона новых программистов. Это значит, что ежегодно в профессию должны приходить 246 тысяч человек. Сегодня вузы и техникумы принимают лишь 60 тысяч.

Буткемпы в России еще не так популярны, но попытки сделать обучение с полным погружением и наставником уже есть:

московский Elbrus Coding Bootcamp, основной курс стоит 178 000 рублей и длится 10 недель — это 540 часов интенсивных занятий и консультаций с преподавателями;

выездной двухнедельный Javabootcamp проходит в Ленинградской области на берегу Финского залива, стоит 67 000 рублей;

видеокурсы Coding Bootcamp Ru с домашними заданиями и консультациями менторов стоят от 7000 до 30 000 рублей.

Полноценные онлайн-буткемпы появились в России только в этом году:

Moscow Coding School проводит буткемп по с Александром Патлухом, сооснователем образовательного проекта «Кружок» и автором программ «Яндекс.Практикума»: за пять месяцев и 210 уроков можно изучить основы веб-разработки и JavaScript, стоимость обучения — 49 999 рублей;

«Яндекс.Практикум» предлагает четыре курса по программированию, веб-разработке и анализу данных продолжительностью от шести до девяти месяцев, обучение стоит 60 000 — 85 000 рублей; под руководством наставников студенты занимаются не менее 10 часов в неделю и делают несколько проектов для портфолио.

Как выбрать буткемп и начать учиться?

Чтобы попасть в буткемп и получить новую профессию, не нужно специального высшего образования и опыта работы. Практически все интенсивы принимают студентов любого уровня подготовки. Если вы не знаете язык — выбирайте российские школы (к тому же они гораздо дешевле). Вот несколько советов, как сориентироваться в разнообразии вариантов:

Решите, сколько времени вы можете тратить на учебу. В зависимости от этого выбирайте формат буткемпа — полное (от 45 до 80 часов в неделю), частичное погружение (занятия в классе по вечерам, выходным и самостоятельная работа), онлайн-обучение с наставником (от 20 часов в неделю).

Изучите отзывы о работе школы на специализированных ресурсах (SwitchUp и Course Report) и подтверждение результатов его студентов на сторонних ресурсах (например, на сайте «Совета по добросовестности в отчетности»).

Пройдите вводные занятия в интересующих вас буткемпах (они часто бесплатные) — это поможет понять, подходит ли вам профессия, каков ваш уровень подготовки, подойдет ли вам учебная среда в кемпе.

Проверьте, каков опыт наставников, которых предлагает школа, а также поинтересуйтесь, сколько вам дадут времени на общение с ними.

Убедитесь, что в процессе обучения вы будете работать над реальными проектами, а в конце курса получите сертификат.

На большинство программ можно записаться без вступительных экзаменов, но некоторые буткемпы практикуют конкурсный отбор студентов. От вас может потребоваться сопроводительное письмо или видео (в котором нужно рассказать о своем опыте), техническое интервью и тестовое задание, чтобы определить уровень подготовки (особенно актуально для курсов для продолжающих).

Сразу после выпуска из буткемпа вряд ли получится зарабатывать миллионы (хотя школы рассказывают именно такие истории выпускников). Начать карьеру можно с позиции junior-разработчика в известной компании или присоединиться к небольшой команде стартапа и продолжать расти, осваивая новые навыки и технологии.

Книга по С++ НЕ для чайника [дубликат]

На данный вопрос уже ответили:

До этого кодил на php, знаю mysql,html,js. Понимаю алгоритмы, мозг повернут правильно и сонаправлен с руками) Нужна книга для обучения C++, без разжевывания и воды но и не сильно крутая, желатьно что бы было в ней побольше примеров. Посоветуйте что-нибудь. Язык: ENG/RUS.

Отмечен как дубликат участниками Nick Volynkin ♦ , ЮрийСПб ♦ , Kromster says support Monica, Cerbo, Vladimir Glinskikh 29 сен ’15 в 2:26 .

Подобный вопрос задавали ранее и на него уже получен ответ. Если представленные ответы не являются исчерпывающими, пожалуйста, задайте новый вопрос.

4 ответа 4

Вот ещё ссылки на один интересный блог:

Да и вообще блог на мой взгляд весьма интересен, рекомендую к ознакомлению.

  1. С. Липпманн — C++ для начинающих (3-е изд.) (книга очень обхъемная, и, несмотря на название, отнюдь не для чайников)
  2. Б. Страуструп — Язык программирования C++ (вообще самая что ни есть классическая классика, хотя, считается, что Страуструп пишет скучновато и академично)
  3. Б. Страуструп — Программирование. Принципы и практика использования C++
  4. Б. Страуструп — Дизайн и эволюция C++
  5. Б. Эккель — Философия С++
  6. Плюс еще 100500 книг Мейерса и Саттера

А вообще, имхо, зря вы с php начинали

Могу посоветовать вам курсы лекций по С++ от INTUIT.RU, которые я в своё время приготовил для себя в удобном доковском формате. Это и не учебник для начинающего, и не просто справочник, а нечто среднее между ними, с полноценными примерами и упражнениями. Вся информация довольно структурирована, и сжата. По этой ссылке http://depositfiles.com/files/bpg0rmxe6 можно скачать архив из 18 курсов. (Для заметки: по таким курсам я изучил РНР)

Вам наверняка поможет вот этот список: The Definitive C++ Book Guide and List.

Подборка материалов по C/C++

Подборка материалов по C/C++

— Современный язык C++: что нужно знать разработчику
https://prglb.ru/5uoca

— Туториал по стандартной библиотеке языка C++
https://prglb.ru/2k8d3

— Библиотека для юнит-тестирования на С++
https://github.com/unittest-cpp/unittest-cpp

— 13 материалов для «продолжающих» С++ разработчиков
https://prglb.ru/sfut

Если хотите получать больше материалов по теме, то не забудьте подписаться на канал �� t-do.ru/cppproglib

А здесь можно найти актуальные вакансии по C++ �� https://t-do.ru/cppdevjob

Эта статья была автоматически добавлена из сообщества Библиотека программиста

Мастер Йода рекомендует:  20 полезных сниппетов CSS для создания адаптивного меню

Добавить комментарий