[spoiler]Си:
- "Recommended C Style and Coding Standards от Bell Labs (pdf);
- "MISRA C" (127 правил UK's Motor Industry Software Reliability Association, обзор);
C++:
- "Industrial Strength C++"
Java:
- "Code Conventions for the Java Programming Language" от Oracle
C#:
- "C# Coding Standard" (pdf);
- "Design Guidelines for Class Library Developers" от Microsoft
Средства статического анализа кода.
Си:
- Splint
C++:
- PC-Lint, развиваемый аж с 1993 года, вышла версия 9.0 для Microsoft VS 2010;
Много лет ведется интересный раздел "баг месяца"!
C#:
- FxCop
- TICS Basic for C#
Java:
- PMD
- Checkstyle
Давно и регулярно Tiobe ведет топ языков программирования, отслеживая интерес к ним специалистов и корпораций. Вот ведущая двадцатка на октябрь 2011:
Java, Си, С++, PHP, C#, Objective-C, (Visual) Basic, Python, Perl, JavaScript, Ruby, Delphi, Lisp, T-SQL, PL/SQL, Lua, RPG, Pascal, Ассемблер, Ада.
Первые две позиции пока абсолютно незыблемы. Но, самое интересное, интерес практически ко всем языкам первой десятки падает -- кроме C#, спрос на который растет. Ну и Си по-прежнему стабильно важен, а Java, C++, PHP и др. заметно сдают в последние годы. Objective-C еще за пару лет очень сильно поднялся.
Язык D 22-й, Go -- 32-й (Фортран 31-й), и остальные языки из списка 50 практически все у программистов на слуху.
То есть знание Си было, есть и будет для программиста абсолютно необходимо, а далее -- обязательно понимание ООП в духе С++ и способность быстро перейти на другой С++-подобный язык.
Голый ЯП, мало кому нужен сейчас.
И если все же о ЯП. У D нет ниши. С++ ему не заменить. Как раз потому что придется платить за те удобства что он дает.
А для java/c# программистов он тоже неинтересен. Отвыкли от такой потребности - компиляция в натив. "А зачем??"
Go - не взлетающ был изначально. Что появлением Dart сама Google признала.
Objective-C - это временно. Держится на интересе к айфонам и айпадам. А количество их аналогов - растет. Причем там, у аналогов знакомая Java.
Про веб - не скажу. Когда JavaScript таки начнет нормально и на серверной стороне поддерживаться, тяжело конечно придется PHP
Python - отличный и универсальный ЯП. Конкурентов у него не предвидится.
Ruby - это RoR. Без него мало кому нужен. Python - "шустрее", и компания его поддерживающая - надежней.
Так что пятерка от Tiobe - надолго. Разве что в строчке PHP заменить на "for Web"
Мир программирования уже изменился. Просто новые ЯП - уже неинтересны.
Java же будет основным языком пока есть стандартизированная JVM. А от JVM ни Oralce ни IBM - нет смысла отказываться. Хотя бы потому что у .NET - таже идея, а больше серьезных законодателей то и нет.
Java может сменить роль, станет "ассемблером" JVM, а в разработке одного приложения будут применяться одновременно скажем Scala и Jython.
Общая же моя мысль такая - с ростом количества работающего кода и укрупнением производителей ПО - изменения в ИТ на обсуждаемом уровне. замедляются, и будут замедляться.
Вторым фактором замедления является отсутствие новых концепций, перспектив фундаментальных изменений. Скажем - когда придуманы функциональное, логическое и объектно-ориентированная парадигмы? Есть что хотя бы в лабораториях им на смену? Значит будут только гибриды, типа Scala. А тогда сразу возникает сомнение - а окупится ли переход на новый гибрид в скорости и качестве разработки, если там вобщем-то - ничего нового?
Есть разве что некие надежды на DSL и метапрограммирование. Но и критики уже накоплено, на неуспевшие стать массовыми.
Итогом для любого нового ЯП будет - более медленное чем ранее проникновение в массы. Это уже сейчас можно зафиксировать, сколько лет языкам первой десятки Tiobe? Как раз тех самых 90ых, когда появление нового ЯП приводил в восторг, и энтузиасты брались делать реальные проекты - уже не будет.
Можно сказать - языкоделание станет скучной темой, все понимают или чувствуют что это просто игры, забавы, головоломки, к реальному программированию почти не имеющие отношения.