Реклама
Когато се опитвате да разберете кой език за програмиране да науча 6 най-лесни езика за програмиране за научаване за начинаещиДа се научиш да програмираш е свързано с намирането на правилния език точно толкова, колкото и за процеса на назидание. Ето шестте най-лесни езика за програмиране за начинаещи. Прочетете още , вероятно ще срещнете термините „високо ниво“ и „ниско ниво“. Хората говорят за езици за програмиране на високо и ниско ниво през цялото време.
Но какво точно означава това? И какво означава да се научиш да пишеш код? Нека започнем с определенията на всеки и да продължим оттам.
Езици за програмиране „по-високо“ и „по-ниско ниво“.
В цялата тази статия ще говоря за езиците на „високо“ и „ниско“ ниво. Но има няма конкретни квалификационни критерии за двете. Ето защо ще говоря и за „по-високи“ и „по-ниски“ нива.
Само имайте предвид, че това зависи до голяма степен от вашата гледна точка. Ако сте програмист на C, Java може да изглежда на доста високо ниво. Ако сте свикнали с Ruby, Java може да изглежда като език от ниско ниво.
Машинен код и езици от ниско ниво
Дали даден език се счита за високо или ниско ниво (или някъде по средата) е всичко за абстракция. Машинният код няма абстракция - той съдържа отделните инструкции, предавани на компютър. И тъй като машините работят само с числа, те са представени в двоичен вид (въпреки че понякога се записват в десетична или шестнадесетична система).
Ето пример за машинен код (чрез Уикипедия):
8B542408 83FA0077 06B80000 0000C383. FA027706 B8010000 00C353BB 01000000. B9010000 008D0419 83FA0376 078BD989. C14AEBF1 5BC3
В машинния код операциите трябва да бъдат точно посочени. Например, ако част от информацията трябва да бъде извлечена от паметта, машинният код ще трябва да каже на компютъра къде в паметта да я намери.
Писането директно в машинен код е възможно, но много трудно.
Добавяне на езици за програмиране от ниско ниво малко абстракция на машинния код. Тази абстракция крие специфични инструкции за машинен код зад декларации, които са по-четими от човека. Асемблерите са езиците от най-ниско ниво до машинния код.
В машинния код може да напишете нещо като „10110000 01100001“ – но асемблерът може да опрости това до „MOV AL, 61ч“. Все още има почти едно към едно съответствие между написаното на асемблерния език и инструкциите, предадени на машината.
Преминавайки към по-популярни езици за програмиране, ще стигнете до нещо като C Характеристики на програмирането на C, които го правят уникален (и по-добър)Езикът за програмиране C е майката на всички съвременни езици за програмиране. Почти всеки език, който се използва днес, включва няколко функции, които за първи път се появиха в езика C. Прочетете още . Въпреки че не е толкова нисък като асемблер, все още има силно съответствие между написаното на C и машинния код. Повечето операции, написани на C, могат да бъдат завършени с малък брой инструкции за машинен код.
Езици за програмиране от високо ниво
Точно като езиците от по-ниско ниво, тези от по-високо ниво покриват широк спектър от абстракция. Някои, като Java (за която можете да спорите, че всъщност е a средно ниво език за програмиране), все още ви дават много контрол върху как компютърът управлява паметта и данните.
Други, като Ruby и Python, са много абстрактни. Те ви дават по-малък достъп до тези функции от по-ниско ниво, но синтаксисът е много по-лесен за четене и писане. Можете да групирате нещата заедно в класове, които наследяват характеристики, така че трябва да ги декларирате само веднъж.
Променливите, обектите, подпрограмите и циклите са важни части от езиците на високо ниво. Тези и други концепции ви помагат да кажете на машината да прави много неща с кратки, сбити изявления.
Когато асемблерният език има почти едно към едно съответствие между неговите команди и команди на машинния код, език от по-високо ниво може да бъде в състояние да изпрати десетки команди с един ред код.
Важно е да се отбележи, че „езиците за програмиране на високо ниво“ може да включват всичко, което е по-абстрактно от асемблер. Зависи кой обсъжда темата. Така че, когато говорите или четете за езици, уверете се, че сте на една и съща страница.
Трябва ли да научите език на ниско или високо ниво?
Това със сигурност ще бъде често срещан въпрос сред новите и амбициозни програмисти. По-добри ли са езиците за програмиране на високо или ниско ниво? Както е в случая с много програмни въпроси, високо ниво срещу. Въпросът за езиците за програмиране на ниско ниво не е толкова ясен.
И двата вида езици имат важни ползи. Езици от ниско ниво, тъй като обикновено изискват малко интерпретация от компютъра бяга много бързо Защо някои езици за програмиране са по-бързи от други?Има много езици за програмиране. Всички те имат индивидуални странности, използвани за различни неща. Но какво прави един език за програмиране по-бърз от друг? Прочетете още . И те дават на програмистите много контрол върху съхранението, паметта и извличането на данни.
Езиците от високо ниво обаче са интуитивно по-лесни за разбиране и позволяват на програмистите да пишат код много по-ефективно. Тези езици също се считат за „по-безопасни“, тъй като има повече предпазни мерки, които предпазват кодерите от издаване на лошо написани команди, които могат да причинят щети. Но те не дават на програмистите толкова контрол върху процесите на ниско ниво.
Имайки това предвид, ето селекция от популярни езици в скала от ниска до висока:
- ° С
- C++
- Java
- ° С#
- Perl
- Lisp
- JavaScript
- Python
- Руби
- SQL
Разбира се, това е отчасти субективно. И включва само а малко напречно сечение от наличните езици.
Но трябва да ви даде известна представа къде попадат езиците, които ви интересуват, в скалата.
Какво искаш да правиш?
Когато решавате какво искате да научите, първият ви въпрос трябва да бъде това, което искате да програмирате.
Ако искате да пишете операционни системи, ядра или нещо, което трябва да работи с най-високата възможна скорост, език от по-ниско ниво може да е добър избор. Голяма част от Windows, OS X и Linux са написани на езици, получени от C и C, като C++ и Objective-C.
Много съвременни приложения са написани на по-високо ниво или дори на специфични за домейна езици. Python и Ruby са особено популярен за уеб приложения Как да изберем правилния език за уеб програмиране, който да използватеЗащо определени езици трябва да бъдат избрани пред други при даден сценарий? Тази статия ще предостави контролен списък с въпроси, които програмистът трябва да зададе, за да избере кой език да използва. Прочетете още , въпреки че HTML5 става все по-мощен. Езици като Swift, C#, JavaScript и SQL имат своите силни и слаби страни.
Помислете да научите и двете
Наскоро прочетох тема за този въпрос във форум за програмиране и попаднах на интересно предложение: научете и двете наведнъж. Ще получите по-задълбочено разбиране за видовете абстракции, които правят езика от по-високо ниво по-ефективен.
Разбира се, изучаването на два езика наведнъж не е лесно 7 полезни трика за овладяване на нов език за програмиранеДобре е да бъдете претоварени, когато се учите да кодирате. Вероятно ще забравите нещата толкова бързо, колкото ги научите. Тези съвети могат да ви помогнат да запазите по-добре цялата тази нова информация. Прочетете още , така че може да искате да ги залитате малко. И изборът на два сходни езика също може да бъде полезен.
Отново ще се върнем към точката, която споменах преди: изберете език въз основа на това, което искате да изградите. Направете проучване, за да разберете кои езици използват хората във вашата област. След това използвайте тази информация, за да изберете език на високо и ниско ниво и започнете да ги изучавате.
Скоро ще видите паралелите и ще придобиете много по-задълбочено разбиране за това как работи програмирането.
Фокусирайте се върху целите, а не върху средствата
Има много критерии, които можете да използвате, за да изберете език за програмиране. Високо срещу ниско ниво е един от тях. Но в почти всеки случай критериите, които трябва да използвате, са това, което искате да програмирате.
Вашият проект може да се възползва от език на ниско ниво. Или може да е много по-ефективно на високо ниво. Ключът е да изберете правилния инструмент за работата. Съсредоточете се върху целта си и всеки път ще избирате правилния език.
Имате ли опит с езици на високо и ниско ниво? Предпочитате ли едното пред другото? Споделете вашите мисли в коментарите по-долу!
Дан е консултант по стратегия за съдържание и маркетинг, който помага на компаниите да генерират търсене и потенциални клиенти. Той също така води блог за стратегия и маркетинг на съдържанието в dannalbright.com.