Logic програмиране и кой има нужда, geekbrains - обучение портал за програмисти

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

Logic програмиране се основава на изходни данни от проучването faktov.Obrazno казано, това е нещо като процес на учене на детето, когато трябва да се посочи ясно околните обекти, които докосват "невъзможно", а останалите са първоначално маркирани като "достъпно". Вземете своя инструкция детето започва да изследва света и сравняване на данните, взема решения. В логика програмиране, този принцип се повтаря почти точно, но разбира се в малко по-сложна форма.

Най-известният представител, и може би най-популярната от употреба, е езикът на Пролог.

Logic програмиране и кой има нужда, geekbrains - обучение портал за програмисти

След като започнахме да говорим за това популярно представител на клона на логиката програмиране, фокусът върху него малко повече. Той е основан през 70-те години от началото на 20-ти век, когато компютрите бяха просто стават достъпни за масите. По отношение на строителството и синтаксис не е най-лесният език, но от гледна точка на разбирането на реакцията на машината на - почти перфектен. Само погледнете в кода, който може да бъде описан от кола:

автоматично ( "Модел", "Година", "двигателя", Мощност ( "Н.Р.", "кВт)).

Съгласете се, тази структура е лесно да се разбере и да се определят параметрите, а това е може би най-трудното нещо, което може да се види в Prolog.

Първоначално, ето защо той е бил подготвен за по-голяма образователна съдба, отколкото наистина полезно. Но с течение на времето, Prolog е бил полезен на лицевата страна - в създаването на изкуствен интелект и работа с бази данни. В най-новата класация на TIOBE Prolog прие много прилична 38-и място.

Да разгледаме основните плюсовете и минусите на този език.

Сделки срещащи се в логиката програмиране винаги е ясно;

Резултатът е почти винаги зависи от начина на реализация;

Тя може да се използва като език не-изчислителна използват само изрази и факти.

Ако вземем за пример на логически език Prolog програмиране, а след това се изправи пред невъзможността да се създават сложни задачи. Това е реалността на логичен език може да бъде допълнение към процедурните, но това рядко се използва самостоятелно;

Поради липсата на инвестиции и прост внимание, логически езици са слабо развити;

Ако се налага да се справят с компютърни операции, логическите езици за програмиране - не най-добрият избор.

За да научите

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

Logic програмиране и кой има нужда, geekbrains - обучение портал за програмисти

Учене на език, да не говорим за цял клас езици е невъзможно без да четете хубави книги. Ето някои от тях:

Програмиране на Пролог. Уилям Kloksin - основен курс на обучение и логично, важното е, че практически програмиране;

Изкуствен интелект алгоритми на езика PROLOG. Иван Bratko - развлекателни книга, стъпка по стъпка, и интересното е достатъчно запознаване на читателя с езика Пролог чрез работата по създаването на изкуствен интелект;

Решаване на проблеми с Prolog. Джон Stobo - това създание е различен малко по-задълбочено представяне на материала, се препоръчва да се използва като кабинет книга за 2-3 Prolog;

Изкуството на Пролог: програмиране за напреднали техники. Leon Sterling - книга, издаден през MIT в далечните 80-те години, не губи своята актуалност и днес, главно поради голям брой примери с код;

От Logic за логическо програмиране. Ключове Doets - друг продукт от Масачузетския технологичен институт, но този път за логика програмиране като цяло. Нивото на обучение изисква достатъчно сериозен, за да се подготвят много "Google".

Logic изкуствен интелект на базата. Dzhek Minker - старото творение, но той е един от най-основните.