Programarea Logică și care are nevoie de ea, geekbrains - portal de învățare pentru programatori
Câteva luni în urmă, am discutat pe scurt programarea funcțională. iar acum este timpul pentru a ridica un alt tip - programarea logică. În unele literatura de specialitate, aceste două tipuri sunt adesea combinate, opunându-se toate acestea, principiile de bază imperative, cu toate acestea distincte.
Programarea logică se bazează pe datele de ieșire care rezultă din studiul faktov.Obrazno vorbind, este ceva de genul proces de învățare a unui copil când trebuie să specifice în mod clar obiectele din jur care se ating de „imposibil“, restul sunt inițial marcate ca „disponibile“. Ia-instruire dumneavoastră copilul începe să exploreze lumea și compararea datelor, ia decizii. În programarea logică, acest principiu se repetă aproape exact, dar, desigur, într-o formă puțin mai complexă.
Cel mai faimos reprezentant, și, probabil, cel mai popular de utilizare, este limbajul Prolog.

Odată ce am început să vorbim despre un reprezentant de popular al ramurii de programare logica, accentul pe ea un pic mai mult. Ea a fost fondată la începutul anilor '70 ai secolului 20, atunci când computerele tocmai au devenit disponibile pentru a maselor. În ceea ce privește construcția și sintaxa nu este cea mai ușoară limbă, dar din punct de vedere al înțelegerii răspunsului mașinii - aproape perfect. Doar să ia o privire la acest cod, care poate fi descris de o mașină:
auto ( 'model', 'An', 'motor', de putere ( 'H.P.', 'kW')).
Sunt de acord, această structură este ușor de înțeles și de a identifica parametrii, iar acest lucru este, probabil, cel mai dificil lucru care poate fi văzut în Prolog.
Inițial, de aceea el a fost pregătit pentru soarta educațională mai mare decât într-adevăr util. Dar în timp, Prolog a fost util pe frontul - în crearea inteligenței artificiale și lucrul cu baze de date. In ultimul clasament al TIOBE Prolog a avut un loc foarte decent 38th.
Luați în considerare argumentele pro și contra de bază ale acestei limbi.
Tranzacțiile care apar în programarea logică întotdeauna clară;
Rezultatul este aproape întotdeauna depinde de modul de realizare;
Acesta poate fi folosit ca un limbaj non-computing, folosind doar expresii și fapte.
Dacă luăm un exemplu de limbaj de programare logică Prolog, apoi se confruntă cu incapacitatea de a crea sarcini complexe. Aceasta este realitatea unei limbi logice poate fi o completare a procedurale, dar este foarte rar utilizat singur;
Din cauza lipsei de investiții și o atenție simplă, limbaje logice sunt slab dezvoltate;
Dacă trebuie să se ocupe de operațiunile de calcul, limbaje de programare logică - nu cea mai bună alegere.
Pentru a afla
Urmând exemplul studenților sovietici care studiază programarea logica va fi util pentru aproape toată lumea și la orice vârstă, pur și simplu pentru că este sănătos dezvoltă capacitatea de a gândi logic și progresiv. În plus, după cum sa menționat deja, în cazul în care munca ta este cumva legată de crearea inteligenței artificiale, sau cel puțin cu datele, atunci limbajul Prolog și altele - va fi un instrument util.

Învățarea unei limbi străine, să nu mai vorbim o întreagă clasă de limbi este imposibilă fără a citi cărți bune. Iată câteva dintre ele:
Programare în Prolog. William Kloksin - curs de formare de bază logică și, mai important, de programare practică;
algoritmi de inteligență artificială în limba PROLOG. Ivan Bratko - carte de divertisment, pas cu pas, și suficient de interesant cititorului familiarizarea cu limbajul Prolog prin operarea pe crearea de AI;
Rezolvarea problemelor cu Prolog. John Stobo - aceasta creatura este diferit un pic mai în profunzime de prezentare a materialului, se recomandă utilizarea ca o carte de studiu pentru 2-3 Prolog;
Arta Prolog: programare avansate tehnici. Leon Sterling - carte, lansat în MIT în anii 80 îndepărtate, nu-și pierde relevanța astăzi, în principal din cauza unui număr mare de probe de cod;
De la Logic Logic Programming. Keys Doets - un alt produs de la MIT, dar de data aceasta cu privire la programarea logică în general. Nivelul de pregătire necesar suficient de grave, așa că pregătește o mulțime de „Google“.
Logica-Based Inteligenta Artificiala. Dzhek Minker - vechea creație, dar este una dintre cele mai fundamentale.