По време на появата на първите компютърни системи възникна въпросът как да "научим" колата да възприеме въведеното в задачата лице. Тук също се появи терминът "програмиране". Днес много потребители, които не са запознати с основите и тънкостите на тези процеси, смятат, че това е нещо в областта на научната фантастика, което не е достъпно за средния жител. Въпреки това, ако желаете, можете да овладеете самото програмиране. Но нека не тичаме напред и разпръскваме всичко, както се казва, на рафтовете.
Какво представлява програмирането в общия смисъл?
За да стане ясно какво е това програмиране, можете да дадете прост пример. Инсталираната клиентска програма, насочена към изпълнение на конкретна задача, се занимава не само с RAM и процесора, но и с други физически устройства чрез техните инструменти за управление, наречени драйвери, които също са програми.
Малко история
Как компютърът взема команди?
Универсален инструмент е използването на двоичен (двоичен) код, състоящ се от последователности от нули и единици, които се възприемат от всяко компютърно устройство. Но как да се преведат смислени фрази и формули в тази форма? За да направите това, използвайте компилаторите, които преобразуват списъка от команди в двоичен код на чиста машина. Можете да срещнете и тройката, и шестнадесетичния код, но те се използват много рядко.
Ясно е, че въвеждането на двоични команди дори на примитивни устройства е изключително трудно, тъй като запомнянето на такива последователности, които човек по природа просто не може да направи.
Следователно, за да се обединят тези процеси, са измислени така наречените мнемодези, които под формата на текстови команди са пълни аналози на двоични комбинации. Командата за текст, както вече е ясно, е много по-лесна за запомняне от дълга последователност, състояща се от нули и единици.
Но този случай не е ограничен. Прилагането в зората на разработката на алгоритмите за програмиране изискваше въвеждането на нова стойност, наречена променлива. Същността на нейното използване във всеки програмен език е да се определи определена област от паметта, която запазва някаква стойност, обозначението на буквата. За да се преведат мнемодезите в инструкцията и променливите в паметта, използваните инструменти се наричат преводачи. И всички езици, които са използвали тази техника, са получили иметоасемблер.
Едни и същи езикови инструменти, които пишат (или по това време бяха написани) компютърни програми, могат да бъдат разделени на такива с ниско и високо ниво.
Ако едно от по-старите поколения си спомня, дори и в съветските времена в училищата, компютърните науки преподаваха основен език. С негова помощ беше възможно да се създадат примитивни програми на математически изчисления на машините на 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 или операционната система. , Всичко това е доста трудно да се разбере и неподготвен човек да влезе в същността на тези процеси ще бъдеНе е толкова лесно. Въпреки това, за желание и достатъчно висока степен на мотивация да учат всеки език, който можете, и в бъдеще да стане висококачествен програмист.