Системи за програмиране: примери, описание, характеристики

Системите за програмиране осигуряват платформа за разработване на софтуерни приложения и взаимодействат директно с компютърно оборудване, за да се получи необходимата производителност при изпълнение на потребителски задачи. Платформата може да се използва за програмиране на операционни системи iPhone, iPad и Android, като се използва езика за програмиране на Java. Интерфейсът Android Studio и Oracle Java SDK, съчетан с необходимите основни познания, ви позволява да създадете голямо разнообразие от приложения.

Елементи на софтуерните системи

За да започнем, ще разкрием концепцията за системите за програмиране. Тези, които използваме сега, са свързани с ерата на 3-то поколение PC. Системното програмиране е да се създаде софтуер. Тя може да изпълнява много различни задачи. Без него повечето хардуер не биха изпълнили функциите си. За да ги направите полезни, използвайте софтуера. Потребителят трябва да избере желаната програма за всяка задача.


Елементи на класическата програмна система:
  • Операционна система - е интерфейсът между софтуерното приложение и компютъра.
  • Ютилити услугите са малки, но мощни програми с ограничени възможности за специфични задачи. Обикновено се използва от потребителите, за да се осигури непрекъсната работа на компютърната система.
  • Библиотечните програми са компилация от набор от подпрограми, например библиотеки. Осигурете много функции иналични процедури при писане на програма.
  • Софтуер за превод: асемблер, компилатор, преводач.
  • Интерпретаторът анализира и изпълнява езикова програма на високо ниво по един ред.
  • Приложен софтуер, предназначен да помогне на потребителя да изпълни специфични задачи, като GIMP - за редактиране на снимки.
  • Пример за модерна система за програмиране включва услуги и основен софтуер.

    Структура на програмата

    Общата форма на програмата обръща специално внимание на отделните компоненти и взаимовръзките между тях. Програмите са добри или лошо структурирани. Една добре структурирана програма за разделяне на компонентите следва принципи като скриване на информация, а интерфейсите между компонентите са ясни и прости. На по-фино ниво, той използва съответните структури от данни и програмни единици с една входна точка и една изходна точка. При слабо структурирана програма за разделяне компонентите са до голяма степен произволни, а интерфейсите са имплицитни и сложни. В допълнение, такава програма има произволни структури от данни и поток на контрол. Почти всички структурирани програми са от общ характер:
  • Заявление за началото на програмата.
  • Обявяване на променлива.
  • Програмни приложения (кодови блокове).

    Примери за поздравленията "Hello World"

    Системите за програмиране "Hello World" и примерите на различни софтуерни езици ясно демонстрират основни различия.
    Да се ​​използва променливатавътре в програмата компилаторът трябва предварително да знае типа данни, които ще се съхраняват в него. Поради тази причина променливите се декларират в началото на програмата. Декларацията на променливата се състои от задаване на ново име и тип данни за променливата. Това обикновено се прави в самото начало.
    На следващата фигура е показан пример за система за програмиране за контурна структура, която изпълнява набор от оператори, докато условието стане вярно.

    Безкраен цикъл

    Това е такава, която няма функционираща процедура на изход. В резултат на това цикълът се повтаря непрекъснато, докато операционната система не го почувства и няма да прекрати програмата с грешка или докато не настъпи друго събитие, например програмата автоматично спира след определено време. По-долу са представени системи за програмиране и примери на програми на C език за програмата за сортиране на линии в речника. Тази програма отнема 10 думи (редове) от потребителя и ги сортира в лексикографски ред. Например, 10 програмни езика:
  • В.
  • C ++.
  • Java.
  • PHP.
  • Питон.
  • Perl.
  • Cobol.
  • Ruby.
  • R.
  • javascript.
  • Резултат:
  • C.
  • C ++.
  • Cobol.
  • Java.
  • javascript.
  • PHP.
  • Perl.
  • Питон.
  • R.
  • Ruby.
  • Основни инструменти

    Необходими са няколко инструмента за програмиране. Схема на класическата програмна система:
  • Редактор на текст - инструменти за редактиране. Този инструмент ви позволява да напишете изходния код. Това е просто средство, необходимо запрограмиране на всеки език. Наистина, при програмирането се оценяват наличието на такива функции като: автодовършване, осветяване на синтаксиса, търсене, редактиране, замяна на част от код и редактор на отстъпи.
  • Съставител или преводач. Този инструмент е пряко свързан с езика за програмиране.
  • Дебъгер. Разработчиците, както всички хора, може и да грешат. Намирането и отстраняването на грешки изисква време. Дебъгерът е инструмент, който ще ви помогне да ги проследите. Тя ви позволява да стартирате програмата стъпка по стъпка, да виждате нейното състояние по всяко време, както и да проверявате дали част от кода работи или не.
  • Библиотека на подпрограми.
  • Придружаваща документация.
  • Шаблони за дизайн

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

    Структурата на софтуера (или рамката) е специален вид софтуерна библиотека. Първата му цел е да съставя програмиране, като осигурява толкова инструменти, колкото ти е необходимо. Например, Django 2 е структура в Python, предназначена да улесни създаването на реактивни уебсайтове. Той създава структура и предлага общи инструменти, които могат да бъдат полезни за всички сайтове(административен интерфейс, услуги за удостоверяване, начин на превод на няколко езика и т.н.). Друг пример е наличието на множество кадри в javascript (jQuery или angular.js) за една цел - същите действия трябва да бъдат написани по различен начин, в зависимост от вида на браузъра, използван от посетителя на уебсайта. Те имат уникален интерфейс за превръщането му в код, който се разбира от всеки браузър. В примера на снимката е програма за програмиране на javascript за задача да отвори нов прозорец след кликване върху бутона.

    Съставени езици

    Езикът за програмиране е набор от транзакции и абстракции, които ви позволяват да напишете това, което потребителят трябва да може да даде на компютъра резултат в по-разбираема форма. Компилацията е да конвертирате изходния код в изпълним файл. Това преобразуване се извършва от компилатора. Разликата в скоростта на изпълнение е огромна. Като цяло, с други равни условия, програмата в съставения език ще работи около десет пъти по-бързо от интерпретираното. По-долу е даден пример за системата за програмиране C. Той демонстрира програма, която използва т.нар. High-end функции и чисти функции.
    В случай на интерпретирани езици, изходният код се дава на преводача, който изпълнява програмата. Няма нужда да се притеснявате за операционната система или типа процесор, тъй като тя трябва да бъде инсталирана на компютъра на потребителя. Освен това, тъй като изходният код трябва да бъде "преведен" в машината при всяко изпълнение, тълкува сеезиците често са бавни в сравнение с еквивалентни съставени езици. Въпреки това, преводачите не оптимизират генерирания машинен код, което ги прави по-бавни, но процесът на генериране на машинен код е по-бърз от компилаторите.

    Езици на виртуални машини

    Често те се наричат ​​"езици VM" (по аналогия с английското наименование на виртуалната машина). Принципът на функциониране и цел на системата за програмиране е, че изходният код не се превежда на машина, разбираема от конкретен процесор, а "фиктивен" (байт-код), който сам по себе си ще се интерпретира от езика на виртуалната машина. Този език има своите предимства и недостатъци. Както и при интерпретираните езици, програмата се компилира в байт-код, който може да работи на всяка операционна система и процесор, при условие че виртуалната машина е достъпна за тази комбинация. От друга страна, тъй като тя е компилация на потока нагоре, програмата работи по-бързо от еквивалентния интерпретиран език. Често той достига скорост, подобна на тази на "истинския" машинен код. Това обаче се компенсира от факта, че виртуалната машина може да бъде много ресурсоемка, особено в паметта. И накрая, можете да създавате нови езици, които да се компилират в същия байтов код като друг съществуващ език, което опростява тяхното взаимодействие. Това е една от задачите на системата за програмиране. Пример за езиците Clojure и Frege са компилирани като за байтовия Java. Те са функционални и радикално различни от Java в техния дизайн. В този случай можете да пишете различни части от програматаедин от най-подходящите езици и да ги накара да работят заедно на виртуална машина. Java е езикът, който най-добре компилира към виртуална машина. Но имате нужда от приложение, което се състои от набор Java класове. В началото на всеки клас има определена структура, като например JavaClassFileFormat.

    Примери на езици и системи за програмиране

    Представяме най-известните езици за програмиране:
  • Асемблер. Той не е нов, но ще научи потребителите на много неща, скрити на други езици.
  • В. Най-често използваните в света. Това е езикът, който ви дава най-пълен контрол над колата. Той се използва за шифроване на операционни системи. Нейната прилична почти половин век възраст и огромен брой библиотеки, които са подходящи за всичко, стават незаменими както за начинаещи, така и за напреднали потребители.
  • Cobol. Това е стар език. Обикновено е по-трудно да се използва от други. Въпреки това, поради някои исторически причини, той все още се използва широко в банковото дело, финансите и застраховането.
  • Fortran. Той все още се нуждае от научни изчисления, за които е разработен. Въпреки че синтаксисът на този език се актуализира редовно, възрастта му се усеща. В допълнение, някои софтуерни библиотеки във Fortran никога не са били сравнявани по отношение на ефективността.
  • Java. Има функция за компилация в байтовия код, който след това се интерпретира от виртуалната машина. Това значително опростява създаването на приложения за използване на няколко платформи операционни системи. Например Java е шлюзът за кодиране на приложение за Android.
  • Perl. Това е език, който се оценява предимно в света на Linux и Unixoids. Той е ефективен за създаване на малки, но много мощни програми от командния ред. Perl обаче не е много подходящ за създаване на графични интерфейси.
  • PHP. Какво е доминиращият свят на уеб програмирането.
  • Питон. Този език се препоръчва за начинаещи.
  • Ruby. Свързан с Python, той редовно използва иновации. Като цяло те са много сходни. Тя може да се отбележи, че синтаксисът Ruby предлага повече свобода и повече настоява за обектно-ориентиран характер и Python подкрепят по-лесно и по-голяма общност.
  • Суифт. Това е доста млад език, склонен към промени и корекции, подходящи за продуктите на Apple. През следващите години може да се окаже основната приложен програмен продукт IOS и OSX.
  • Използването на

    представя пример на машинен код: 110101010010001000111001001010101001000100001011101001000111001101110001101101010 001111010010010101011001010001010101111110100101010001. Както може да се види, този тип код е много малко видима структура. В програмни езици семантична разлика - разликата между езика, използван за програмиране на хардуера (машинен код) и тези, които се използват за програмиране на компютър като система. Примерен програмиране: за страна на клиента JavaScript изисква използването на два езика, освен че създава JavaScript (CoffeScript или Elm). За страна на сървъра PHP притежава най-горната позиция, но и Python и Ruby се използват широко. javascript се използва и на сървърната страна, благодарение на NodeJS. За видео игри в Windows използвайте C ++, Pythonи C #. Те обаче са далеч от единствените. Всеки език, който го прави доста лесно за създаване на графичен интерфейс, може да е подходящ (C, Java, Ruby или Tcl /Tk). За големи приложения на пазара доминират C ++ и Java, въпреки че C # също набира скорост. За малки помощни програми, като командния ред, е лесно да се намерят C, Perl, Python или Ruby. В областта на научните изчисления Фортран остава крал. Все по-често се конкурира с C ++, Python или специализирани езици като Matlab и R.

    PASCAL програмиране. лесен за четене и лесен за разбиране. PASCAL е резултат от едно от тези усилия. Създателят на PASCAL Никола Вирт искаше да има HLL, който лесно да се преподава, чете и пише. Той разработва PASCAL въз основа на следните понятия:
  • PASCAL трябва да затвори или да намали съществено семантичната разлика.
  • Всяка декларация PASCAL трябва да бъде изречение в английския текст.
  • Програмата PASCAL може да се разглежда като предложение на английски език.
  • Наименованията на процедурите, структурите от данни и променливите в PASCAL трябва да бъдат лесно разпознаваеми.
  • Пример за система за програмиране в PASCAL

    Следното е пример за определяне на броя на буквите в една дума.
    PASCAL улеснява модулното кодиране чрез:
  • Използване на инкапсулиращ код в процедури и функции.
  • Използване на BEGIN и END изявления за определяне на функционалния блок на кода.
  • Строга променлива (например, задаване на типове данни като цяло число, реално или низ) заподпомагане на трансфера на параметри между процедурите.
  • Приятелски синтаксис, който стеснява семантичното разкъсване.
  • В следващия пример на системата за програмиране Pascal програмата показва двоичен избор (има само два случая: ActualMark> 50 или ActualMark Общи програмни грешки Избягвайте често срещани грешки при кодирането, като по този начин спестявате време и избягвате проблеми. 97) Лошо форматиране на кода Трябва да е ясно, че трябва да има коментари в горната част на програмата.
  • Лошо тестване и проверка на грешките.
  • Практика за лоши коментари.
  • Име на ненадеждни променливи Много е трудно да се работи по код, когато много променливи са кратки, а не описателни.
  • Избор на неподходяща структура на данните
  • Подсветката на синтаксиса и стилът на отстъп често се използват, за да помогнат на програмистите да разпознаят елементите на изходния код. Важно е цветовото кодиране да бъде разпределено в фрагмента на кода като пример за системата за програмиране, написана на Python.

    Свързани публикации