<<
>>

Язык программирования

Язык программирования, используемый в проекте, влияет на оценку по меньшей мере в четырех отношениях.

Во-первых, как видно из рис. 5.6, опыт работы группы с конкретным языком и инструментарием, используемыми в проекте, способен изменить общую производительность в проекте до 40 %.

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

Таблица 5.3. Относительная функциональность команд языков высокого уровня по сравнению с эквивалентным кодом С

Язык

По отношению к С

С

1:1

c#

1:2,5

C++

1:2,5

Cobol

1:1,5

Fortran 95

1:2

Java

1:2,5

Макроассемблер

2:1

Perl

1:6

Smalltalk

1:6

SQL

1:10

Visual Basic

1:4,5

Если используемый язык программирования заранее известен, этот пункт не относится к вашей оценке. Но если вы обладаете некоторой свободой выбора языка программирования, из таблицы видно, что такие языки, как Java, C# и Microsoft Visual Basic, обычно превосходят по продуктивности С, Cobol или макроассемблер.

Третий фактор, также относящийся к языкам, — широта возможностей инструментария и рабочих сред. Согласно данным Cocomo II, слабый инструментарий и рабочая среда способны увеличить объем работы над проектом примерно на 50 % по сравнению с сильными инструментариями и рабочими средами (Boehm et al. 2000). Также следует понимать, что выбор языка программирования может определить выбор инструментария и рабочей среды.

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

Концепция объема функциональности на строку кода будет рассматриваться далее в разделе 18.2.

<< | >>
Источник: Макконнелл С.. Сколько стоит программный проект. 2007

Еще по теме Язык программирования:

  1. Основные этапы развития технологий программирования Программирование в кодах и ассемблер
  2. • Принцип оптимальности в планировании и управлении, общая задача оптимального программирования • Формы записи задачи линейного программирования и ее экономическая интерпретация • Математический аппарат • Геометрическая интерпретация задачи • Симплексный метод решения задачи 2.1. Принцип оптимальности в планировании и управлении, общая задача оптимального программирования
  3. Модульное программирование
  4. ВВЕДЕНИЕ В ЯЗЫК HTML
  5. ЯЗЫК ПОИСКОВЫХ МАШИН
  6. Язык, знания и легенды трейдеров
  7. ЯЗЫК ТЕЛА
  8. Серебряный язык
  9. ВВЕДЕНИЕ В ЯЗЫК PHP
  10. Языки программирования высокого уровня
  11. Программирование, управляемое событиями
  12. ЯЗЫК МОДЫ Стиль и дизайн
  13. Язык науки и общественное сознание
  14. Легенды, знания и язык трейдеров
  15. Язык, знания и легенды трейдеров
  16. Глава 4.6 SQL - ЯЗЫК ЗАПРОСОВ
  17. 3.3. Целочисленное программирование
  18. Программирование государственных финансов