713 Тем для обсуждения
6,530 Открытых обсуждений
- Association for Computing Machinery TechNews (ACM)
- Go Parallel! (Dr. Dobbs)
- HPCwire (Tabor Communications, Inc.)
- insideHPC (John West)
- Joe Duffy's Weblog (Microsoft)
- Microsoft Parallel Programming Development Center (Microsoft Germany)
- MultiCoreInfo.com
- scalability.org (Scalable Informatics)
- Software Dev Blog (Intel Germany)
- Soft Talk Blog (Intel United Kingdom)
- The Moth (Microsoft)
Поговорим о производительности
Marat Dukhan (Intel) (6 пост(а)) 06.07.2009 15:02
Когда на ISN речь заходит о производительности, обычно имеют в виду производительность процессора, памяти или видеокарты. Но этот пост будет о другой производительности — о производительности программиста. Я хочу рассказать о паре полезных "фич" Visual Studio, которые, как мне кажется, не слишком известны, но весьма полезны для программистов.
Первая полезная фича Visual Studio, появившаяся ни то в 2003, ни то в 2005 версии — это автоматическое форматирование исходного текста. Работает просто: выделяем кусок кода, нажимаем Ctrl+K и, не отпуская клавишу Ctrl, тут же Ctrl+F (можно также выбрать из меню Edit->Advanced->Format Selection, но это слишком долго). В результате выделенный кусок кода приводится к удобочитаемому виду. Особенно полезна эта фича для чтения созданного кодогенератором кода.
Другая полезная фича, — макросы. Про макросы слышали, пожалуй, все программисты, а вот реально их используют — лишь немногие. И это очень зря! Допустим, у нас есть кусок кода следующего содержания:
std::cout << "VariableA = " << variableA << std::endl; std::cout << "VariableB = " << variableB << std::endl; std::cout << "VariableC = " << variableC << std::endl; ...
И в какой-то момент времени нам захотелось выводить не только значение переменной, но и её тип. Сложный способ добиться этого — вручную изменить каждую строку и при этом постараться не сделать ошибок, которые не выловит компилятор. Простой способ заключается в использовании макросов. Сначала нужно установить курсор на начало первой строки. Как-то так:
Istd::cout << "VariableA = " << variableA << std::endl; ...
Теперь нужно нажать магическую комбинацию клавиш Ctrl+Shift+R (или выбрать в меню Tools->Macros->Record Temporary Macro). Теперь Visual Studio будет запоминать всё, что вы будете делать. Затем, с помощью обычного Copy & Paste нужно привести первую строчку к желаемому виду, например такому:
std::cout << "VariableA = " << variableA << ", typeof VariableA is " << typeid( VariableA ).name() <<I std::endl; ...
Обратите внимание, что имя переменной VariableA нужно не набирать с клавиатуры, а копировать из другого места этой строки. Для навигации внутри строки лучше пользоваться не обычными стрелками на клавиатуре, а комбинацией Ctrl+стрелка — в этом случае курсор будет перемещаться сразу на следующее слово. Когда первая строка преобразована к нужному виду, нужно переместить курсор на начало второй строки и снова нажать магическую комбинацию клавиш Ctrl+Shift+R, чтобы завершить запись макроса.
std::cout << "VariableA = " << variableA << ", typeof VariableA is " << typeid( VariableA ).name() << std::endl; Istd::cout << "VariableB = " << variableB << std::endl; std::cout << "VariableC = " << variableC << std::endl; ...
Теперь достаточно нажать Ctrl+Shift+P и — вуаля — Visual Studio повторит всё, что вы делали для первой строки со второй строкой, а затем переместит курсор на начало третьей строки. Таким образом, любой исходник, сколь бы большим он ни был, можно обработать за десяток секунд.
А как повышаете свою производительность вы?
Категории: Intel Software Network, Разработка софта
Метки: Microsoft* Visual Studio
Пожалуйста, обратитесь к странице Уведомление об оптимизации для более подробной информации относительно производительности и оптимизации в программных продуктах компании Intel.
Комментарии (3)
| 07.07.2009 03:03
Marat Dukhan (Intel)
| После копания в настройках Visual Studio выяснилось, что Alt+F8 и Ctrl+K+F это одно и то же |
| 08.07.2009 08:17
ilnarb
| одно нажатие двух кнопок и два нажатие трех не одно и то же ;) |



ilnarb
5,647
а еще классная фича это поиск выделенного вперед Ctrl+F3 и назад Ctrl+Shift+F3
а вообщемного такого классного можно почитать из блога Сары Форд, на русском http://blogs.msdn.com/rusaraford/