Парадигма программирования

Парадигмы программирования

Паради́гма программи́рования — совокупность идей и понятий, определяющих стиль написания компьютерных программ (подход к программированию). Это способ концептуализации, определяющий организацию вычислений и структурирование работы, выполняемой компьютером[1].

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

Также существующие парадигмы зачастую пересекаются друг с другом в деталях (например, модульное и объектно-ориентированное программирование), поэтому можно встретить ситуации, когда разные авторы употребляют названия из разных парадигм, говоря при этом, по сути, об одном и том же явлении.

История термина

Своим современным значением в научно-технической области термин «парадигма» обязан, по-видимому, Томасу Куну и его книге «Структура научных революций» (см. парадигма). Кун называл парадигмами устоявшиеся системы научных взглядов, в рамках которых ведутся исследования. Согласно Куну, в процессе развития научной дисциплины может произойти замена одной парадигмы на другую (как, например, геоцентрическая небесная механика Птолемея сменилась гелиоцентрической системой Коперника), при этом старая парадигма ещё продолжает некоторое время существовать и даже развиваться благодаря тому, что многие её сторонники, по тем или иным причинам, неспособны перестроиться для работы в другой парадигме.

Термин «парадигма программирования» впервые применил в 1978 году Роберт Флойд в своей лекции[2] лауреата премии Тьюринга.

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

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

Таким образом, по мнению Роберта Флойда, в отличие от парадигм в научном мире, описанных Куном, парадигмы программирования могут сочетаться, обогащая инструментарий программиста.

Различные определения

Далеко не все авторы, использующие термин «парадигма программирования», решаются дать интенсиональное определение данному термину. Однако и те определения, которые удаётся найти, серьёзно отличаются друг от друга.

Диомидис Спинеллис даёт следующее определение[3]:

Слово «парадигма» используется в программировании для определения семейства обозначений (нотаций), разделяющих общий способ (методику) реализаций программ.

Для сравнения тот же автор приводит определения из других работ. В статье Дэниела Боброва[4] парадигма определяется как «стиль программирования как описания намерений программиста». Брюс Шрайвер (Bruce Shriver) определяет парадигму программирования как «модель или подход к решению проблемы»[5], Линда Фридман (Linda Friedman) — как «подход к решению проблем программирования».[6]

Памела Зейв (Pamela Zave) даёт определение парадигмы как «способа размышления о компьютерных системах» (в оригинале «way of thinking about computer systems»).[7]

Питер Вегнер (Peter Wegner) предлагает другой подход к определению термина парадигмы программирования. В его работе «Concepts and paradigms of object-oriented programming»[8] парадигмы определяются как «правила классификации языков программирования в соответствии с некоторыми условиями, которые могут быть проверены».

Тимоти Бадд предлагает понимать термин «парадигма» как «способ концептуализации того, что значит „производить вычисления“, и как задачи, подлежащие решению на компьютере, должны быть структурированы и организованы».[9]

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

Основные модели программирования

Подходы и приёмы

См. также

Примечания

  1. Роганов, 2001, подраздел «Парадигмы программирования».
  2. R. W. Floyd. The Paradigms of Programming Архивная копия от 11 февраля 2007 на Wayback Machine Communications of the ACM, 22(8):455—460, 1979. Русский перевод см. в кн.: Лекции лауреатов премии Тьюринга за первые двадцать лет (1966—1985), М.: МИР, 1993.
  3. D. D. Spinellis. Programming paradigms as object classes: a structuring mechanism for multiparadigm programming. PhD thesis, University of London, London SW7 2BZ, United Kingdom, February 1994.
  4. D. G. Bobrow. If Prolog is the answer, what is the question. // Fifth Generation of Computer Systems, pages 138—145, Tokyo, Japan, November 1984. Institute for New Generation Computer Technology (ICOT), North-Holland.
  5. B. D. Shriver. Software paradigms. IEEE Software, 3(1):2, January 1986.
  6. L. W. Friedman. Comparative programming languages: generalizing the programming function. Prentice Hall, 1991, page 188.
  7. P. Zave. A compositional approach to multiparadigm programming. IEEE Software, 6(5): 15—25, September 1989.
  8. P. Wegner. Concepts and paradigms of object-oriented programming. {OOPS} messenger}, 1(1): 7—87, August 1990.
  9. T. A. Budd. Multi-Paradigm Programming in LEDA. Addison-Wesley, Reading, Massachusetts, 1995.

Литература

  • Роганов Е. А. Основы информатики и программирования. — М.: МГИУ, 2001. Архивная копия от 8 октября 2013 на Wayback Machine

Ссылки

Read other articles:

F1 AcademyKategoriKursi tunggalNegara atau daerahInternasionalMusim pertama2023Pembalap15KonstruktorTatuusPemasok mesinAutotecnicaPemasok banPirelliSitus webf1academy.com Musim saat ini F1 Academy adalah sebuah kejuaraan balap kursi tunggal yang dibentuk oleh Formula Satu dengan musim pertamanya pada tahun 2023. Sejarah Pada November 2022 Formula Satu mengumumkan pembentukan F1 Academy, sebuah seri balap khusus wanita yang berfokus untuk mengembangkan dan mempersiapkan pembalap muda untuk ber...

 

This article contains close paraphrasing of a non-free copyrighted source, http://www.vojska.net/eng/armed-forces/bosnia-and-herzegovina/vrs (Copyvios report). Relevant discussion may be found on the talk page. Please help rewriting it with your own words. (April 2020) (Learn how and when to remove this template message) 1st Krajina Corps1st Krajina Corps PatchActiveJune 1, 1992 — 1996Country Republika SrpskaAllegiance Army of Republika SrpskaBranchGround ForcesTypeMotorizedMountainInf...

 

nagamaki Nagamaki (長巻code: ja is deprecated ) adalah jenis pedang tradisional Jepang.[1][2] dengan pegangan yang panjang, yang digunakan oleh kelas samurai dari feodal Jepang. Sejarah Ada kemungkinan bahwa nagamaki pertama kali dibuat selama Zaman Heian (794-1185) tetapi tidak ada bukti yang diketahui berasal dari sebelum pertengahan Zaman Kamakura (1192-1333).[3] Selama pertengahan Zaman Muromachi (1336-1573 M) nagamaki mencapai puncaknya. Nagamaki dianggap sebaga...

School district in Jefferson County, Colorado Jeffco Public SchoolsThe sign at district headquarters in West Pleasant View.LocationWest Pleasant View, ColoradoUnited StatesCoordinates39°44′20″N 105°09′53″W / 39.73876°N 105.16473°W / 39.73876; -105.16473District informationGradesPre-K to 12th GradeEstablished1950 (74 years ago) (1950)SuperintendentTracy Dorland[1]School boardSchool Board Info (web site)NCES District ID0804800[2]...

 

2006 film directed by Gautham Menon This article's plot summary may be too long or excessively detailed. Please help improve it by removing unnecessary details and making it more concise. (February 2024) (Learn how and when to remove this template message) Vettaiyadu VilaiyaaduTheatrical release posterDirected byGautham Vasudev MenonWritten byGautham Vasudev MenonProduced byManickam NarayananStarring Kamal Haasan Jyothika CinematographyRavi VarmanEdited byAnthonyMusic byHarris JayarajProducti...

 

العلاقات الجورجية اللاتفية جورجيا لاتفيا   جورجيا   لاتفيا تعديل مصدري - تعديل   العلاقات الجورجية اللاتفية هي العلاقات الثنائية التي تجمع بين جورجيا ولاتفيا.[1][2][3][4][5] مقارنة بين البلدين هذه مقارنة عامة ومرجعية للدولتين: وجه المقارنة جور�...

State-owned long-distance data transmission firm Not to be confused with China Telecommunications Corporation, the parent company. Or Chunghwa Telecom, as known as China Telecom. China TelecomNative name中国电信股份有限公司Company typePublicTraded asSSE: 601728(A share)SEHK: 728(H share)ISINCNE1000002V2IndustryTelecommunicationsFounded10 September 2002; 21 years ago (2002-09-10)FounderChina Telecommunications CorporationHeadquartersBeijing, ChinaShanghai, Chin...

 

† Человек прямоходящий Научная классификация Домен:ЭукариотыЦарство:ЖивотныеПодцарство:ЭуметазоиБез ранга:Двусторонне-симметричныеБез ранга:ВторичноротыеТип:ХордовыеПодтип:ПозвоночныеИнфратип:ЧелюстноротыеНадкласс:ЧетвероногиеКлада:АмниотыКлада:Синапсиды�...

 

Japanese company in the wireless communication industry Uniden Holdings CorporationNative nameユニデンホールディングス株式会社Romanized nameYuniden HôrudingusuCompany typePrivateFoundedFebruary 7, 1966; 58 years ago (February 7, 1966)FounderHidero FujimotoSuccessorKengo Nate (President and CEO) (as of Jan 1st, 2023)HeadquartersChuo ku, Tokyo, JapanArea servedJapan, Taiwan, United States, Australia, New Zealand, Philippines, Vietnam, and ChinaProductsElectronic ra...

لويسبرغ     الإحداثيات 37°48′15″N 80°26′25″W / 37.804166666667°N 80.440277777778°W / 37.804166666667; -80.440277777778   [1] تاريخ التأسيس 1782  تقسيم إداري  البلد الولايات المتحدة[2][3]  التقسيم الأعلى مقاطعة غرينبريه  عاصمة لـ مقاطعة غرينبريه  خصائص جغرافية  المسا�...

 

Venezuelan state-run public TV channel Television channel Venezolana de TelevisiónCountryVenezuelaAffiliatesANTVAvila TVBuena TelevisiónTelesurViVe TVesHeadquartersCaracas,VenezuelaProgrammingLanguage(s)SpanishPicture formatSDTV 480iOwnershipOwnerSiBCI (State-owned enterprise under administration of the Ministry of Popular Power for Communication and Information)HistoryLaunchedAugust 1, 1964LinksWebsitewww.vtv.gob.veAvailabilityTerrestrialAnalog VHFChannel 8 (listings may vary)Digital UHFCh...

 

Halaman ini berisi artikel tentang kabupaten di Indonesia. Untuk kota bernama sama, lihat Kota Banjar. Untuk kegunaan lain, lihat Banjar (disambiguasi). Kabupaten BanjarKabupatenTranskripsi bahasa daerah • JawiبنجرTaman Hutan Raya Sultan Adam LambangJulukan: Melayu MartapuraMotto: Barakat(Banjar) BerkahPetaKabupaten BanjarPetaKoordinat: 3°24′29″S 114°50′55″E / 3.40813134°S 114.84854166°E / -3.40813134; 114.84854166Negara ...

Semantic distinction in philosophy For the linguistic categories, see Analytic language and Synthetic language. The analytic–synthetic distinction is a semantic distinction used primarily in philosophy to distinguish between propositions (in particular, statements that are affirmative subject–predicate judgments) that are of two types: analytic propositions and synthetic propositions. Analytic propositions are true or not true solely by virtue of their meaning, whereas synthetic propositi...

 

African-American plaintiff in freedom suit (c.1799–1858) For other uses, see Dred Scott (disambiguation). Dred ScottScott c. 1857Bornc. 1799Southampton County, Virginia, U.S.DiedSeptember 17, 1858 (aged approximately 59)St. Louis, Missouri, U.S.Resting placeCalvary CemeteryKnown forDred Scott v. SandfordSpouse Harriet Robinson ​(m. 1836)​Children4[a] Part of a series onForced labour and slavery Contemporary Child labour Child soldiers Co...

 

Questa voce sull'argomento società calcistiche montenegrine è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Fudbalski Klub Sutjeska NikšićCalcio Plavi (I Blu), Plavo-bijeli (I Bianchi-Blu) Segni distintiviUniformi di gara Casa Trasferta Colori sociali Bianco, blu Dati societariCittàNikšić Nazione Montenegro ConfederazioneUEFA Federazione FSCG CampionatoPrva liga Fondazione1927 Presidente Ranko Jovović Allenatore Vladimir Janković StadioMu...

Sketches by Boz Bagian depan dari (seri pertama) edisi pertama, Februari 1836. Digambar oleh George CruikshankPengarangCharles Dickens (Boz)Judul asliSketches by Boz, Illustrative of Every-day Life and Every-day PeopleIlustratorGeorge CruikshankPerancang sampulGeorge CruikshankNegaraInggrisBahasaInggrsGenreSketsaDiterbitkan1833–1836 di koran periodik; pada tahun 1836 (dua seri); pertama edisi pertama 1839PenerbitJohn Macrone, St. James's SquareDiikuti olehThe Pickwick Papers&...

 

Questa voce o sezione sull'argomento edizioni di competizioni calcistiche non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del progetto di riferimento. Bikar karla 2016Borgunarbikar 2016 Competizione Bikar karla Sport Calcio Edizione 57ª Organizzatore KSÍ Date dal 27 aprile 2016al 13 agosto 2016 Luogo  Islanda Partecipa...

 

Roman senator and general (c.86 BC–42 BC) For other people named Gaius Cassius Longinus, see Gaius Cassius Longinus (disambiguation). Gaius Cassius LonginusThe pseudo-Corbulo bust, likely depicting Cassius[1]Bornc. 86 BC[2]Died3 October 42 BC (aged 44)near Philippi, MacedoniaCause of deathSuicideResting placeThasos, GreeceNationalityRomanOther namesLast of the Romans[3]Occupation(s)General and politicianKnown forAssassination of Julius Caesa...

Questa voce o sezione sull'argomento veicoli militari non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del progetto di riferimento. Questa voce o sezione sull'argomento veicoli militari è priva o carente di note e riferimenti bibliografici puntuali. Sebbene vi siano una bibliografia e/o dei collegamenti esterni, manca la contest...

 

Éphémérides Chronologie du Québec 1762 1763 1764  1765  1766 1767 1768Décennies au Québec :1730 1740 1750  1760  1770 1780 1790 Chronologie dans le monde 1762 1763 1764  1765  1766 1767 1768Décennies :1730 1740 1750  1760  1770 1780 1790Siècles :XVIe XVIIe  XVIIIe  XIXe XXeMillénaires :-Ier Ier  IIe  IIIe Chronologies thématiques Art Architecture, Arts plastiques (Dessin, Gravure, Peinture et Sculpture)...