Какво е програмирането? Езици за програмиране. Компютърно програмиране

По време на появата на първите компютърни системи възникна въпросът как да "научим" колата да възприеме въведеното в задачата лице. Тук също се появи терминът "програмиране". Днес много потребители, които не са запознати с основите и тънкостите на тези процеси, смятат, че това е нещо в областта на научната фантастика, което не е достъпно за средния жител. Въпреки това, ако желаете, можете да овладеете самото програмиране. Но нека не тичаме напред и разпръскваме всичко, както се казва, на рафтовете.

Какво представлява програмирането в общия смисъл?

Ако погледнете основните интерпретации на този термин, лесно е да направите просто заключение. Какво е програмирането? Това е писане на програми.
Тогава възниква въпросът, каква е програмата. Програмата или приложението е, грубо казано, набор от специализирани команди, инструкции, директиви или изпълними скриптове, които трябва да бъдат изпълнени от машината, както на ниво "железни" устройства, така и на други заемни средства.

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

Малко история

Говорейки за това какво е програмирането в съвременната интерпретация, трябва да погледнем историята на нейния произход. По съществоАвтоматичното изпълнение на определени действия, например в областта на математическите изчисления, е известно на човечеството за дълго време. Да си припомним поне Древна Гърция, в която е използвано устройство с различни размери, което позволява да се изпълняват прости аритметични действия. Това беше истинският прототип на модерен калкулатор. През 1206 г. уникално устройство за проследяване на така наречения метанов цикъл, построен от Ал Джаззар, използва сложни механизми, базирани на клипове и пръсти на кула. Едва през 1804 г. светът видя жакардов стан, който успява да възпроизведе мотиви върху тъкани, създадени на базата на перфокарти. Но истинският пробив е програмируемо аналитично устройство, разработено от Чарлз Бабидж, което за съжаление никога не е било построено за живота му.
Но през 1846 г. дъщерята на Байрон създава първата в света програма за аналитична машина, която решава уравнението на Бернули. Разбира се, алгоритмите за програмиране, използвани от графиня Ада Аугуста Лавлейс, са много примитивни, но те поставят същото зърно, което е било използвано за създаване на модерни компютърни програми. Смята се, че тя е прародител на програмирането по целия свят.

Как компютърът взема команди?

Всяка компютърна програма трябва да бъде изпълнена по някакъв начин от машината. Тя не трябва да пише, да казва, да прави нещо и нещо. За целта бяха създадени езици за програмиране. Оказва се обаче, че да се напише поредица от команди на език, който днес съществува многоне е достатъчно Машината все още няма да приема текстови фрази или математически формули.
Универсален инструмент е използването на двоичен (двоичен) код, състоящ се от последователности от нули и единици, които се възприемат от всяко компютърно устройство. Но как да се преведат смислени фрази и формули в тази форма? За да направите това, използвайте компилаторите, които преобразуват списъка от команди в двоичен код на чиста машина. Можете да срещнете и тройката, и шестнадесетичния код, но те се използват много рядко.

Мнемокоди

Ясно е, че въвеждането на двоични команди дори на примитивни устройства е изключително трудно, тъй като запомнянето на такива последователности, които човек по природа просто не може да направи.
Следователно, за да се обединят тези процеси, са измислени така наречените мнемодези, които под формата на текстови команди са пълни аналози на двоични комбинации. Командата за текст, както вече е ясно, е много по-лесна за запомняне от дълга последователност, състояща се от нули и единици.

Понятието за променливи

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


Програмни езици

Едни и същи езикови инструменти, които пишат (или по това време бяха написани) компютърни програми, могат да бъдат разделени на такива с ниско и високо ниво.
Ако едно от по-старите поколения си спомня, дори и в съветските времена в училищата, компютърните науки преподаваха основен език. С негова помощ беше възможно да се създадат примитивни програми на математически изчисления на машините на Yamaha KUVT, за да се програмират прости изображения или музика, която се възпроизвеждаше от динамиката на системата. За математиката е възможно да се използват логически оператори като "if", "then", "differently". Но проблемът на всички, които знаеха този език, беше, че не можеха да овладеят новите средства. Да не говорим за факта, че езикът Hasembler прави истинска революция и се използва до сега, има доста специфични инструменти, например, езиците на структурно или обектно-ориентирано програмиране (ООП).
PLO може безопасно да включва езика C + /++, на базата на кои команди са създадени еднакви операционни системи Windows. Програмирането на "С" е доста сложно, но ако желаете, можете да го овладеете. Както се казва, това би било желание. Можете да отидете на програмирането или да използвате литературата за изучаване. Вярно е, както повечето експерти смятат, че все още е възможно да се разбере самият език, но развитието на нашите знания на практика ще бъде изключително трудно. Тук никаква работа като книгите "Програмиране за манекени" няма да помогне. Но нека се върнем към езиците. Относително наскоро има езициработа на базата на преводачи (.NET Framework, Python, Java, Perl и др.). В тях вместо машинния код се генерира специален байт-код, който представлява двоичния код на виртуалната машина.
Между другото, програмирането в Java може лесно да се овладее. Например за мобилни устройства, базирани на Android, можете да използвате Android Studio и Java SDK пакета паралелно и да инсталирате Genymotion като тестов инсталатор. Можете да го направите още по-лесно, като се свържете с онлайн дизайнера App Inventor, който създава поредица от команди като създаване на пъзел. Понятието за парадигми
Понятието за парадигми не се появява на празно място. В най-широкия смисъл на парадигмата те представляват определено виждане за света и действията, които могат да бъдат направени в неговата връзка. В компютърния свят, при такъв термин, е един вид обобщение по отношение на работата на програмата. Има програми, фокусирани изключително върху една парадигма или изпълняващи само една задача, но всички съвременни езици и програми, създадени на тяхна основа, решават няколко задачи. Оттук и терминът "многозадачност".

Съвременното програмиране и неговите характеристики

На сегашния етап на развитие на компютърните технологии приоритет за много програмисти е ООП и програмирането в Java. Моля, обърнете внимание, че платформите на платформата на Java се поддържат от някоя от известните операционни системи, да не говорим за мобилни устройства. Въпреки че, както се смята, езикът C + /++ е доминиращ, не си струва да се прекъсва Assembler и сметките. Изненадващо, повечето вируси санаписано на него. И ако вземем под внимание уеб програмирането, да речем, на базата на Delphi, като цяло има такива широки възможности и перспективи, че много начинаещи дори не осъзнават за това.

Мога ли да науча себе си за програмиране?

Въпросите, свързани с самообучението, зависят пряко от това, което искате да научите. Литературата под формата на книги "Програмиране за манекени" предоставя само частични отговори, без да се уточняват основните аспекти, като се взема предвид използването на определен език. Това е, така да се каже, за общо разбиране. Курсове за програмиране - същият въпрос е спорен, защото в този случай всичко зависи не само от възприятието на ученика, но и от знанията, които учителят има, как той доставя материала и т.н. Но ако е имало нужда да се научи определен език или метод на програмиране , в нашия век интернет не е проблем. Можете дори да намерите онлайн курсове или подробни уроци на същата платформа на Java, програмиране за Android или устройства с iOS.

Кратко резюме

Какво е програмирането като цяло, изглежда, вече е ясно за всеки човек. Тук обаче имаше само общи въпроси, повдигнати без специфичното използване на всеки език, средствата за писане на приложения или свързаните с тях софтуерни модули, командите за тълкуване или превод, както и как това се прави на нивото на процесора, RAM или операционната система. , Всичко това е доста трудно да се разбере и неподготвен човек да влезе в същността на тези процеси ще бъдеНе е толкова лесно. Въпреки това, за желание и достатъчно висока степен на мотивация да учат всеки език, който можете, и в бъдеще да стане висококачествен програмист.

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