Paradigma  adalah sudut pandang tertentu yang digunakan terhadap suatu problem,  realitas, keadaan dan sebagainya. Paradigma membatasi dan mengkondisikan  jalan berpikir seseorang, mengarahkannya terhadap beberapa atribut dan  mengabaikan atribut lain, sehingga paradigma hanya memberikan pandangan  yang terbatas terhadap sebuah realitas.
 
Dalam pemrograman dikenal beberapa paradigma, yaitu:
 
1. Paradigma Pemrograman Prosedural atau Imperatif
 
Paradigma ini didasari oleh konsep mesin Von Newman (stored  program concept) sekelompok tempat penyimpanan (memori), yang dibedakan  menjadi memori instruksi dan memori data, masing-masing memori tersebut  dapat diberi nama dan nilai, selanjutnya instruksi akan dieksekusi satu  persatu secara sekuensial oleh sebuah proses tunggal.
 
Program dalam paradigma ini berdasarkan pada struktur informasi  di dalam memori dan manipulasi dari informasi yang disimpan tersebut.  Kata kunci yang sering digunakan dalam paradigma ini adalah:
 
      Algoritma + Struktur Data = Program
 
Kelebihan dari paradigma ini adalah efisiensi eksekusi karena  lebih dekat dengan konsep mesin, kekurangannya adalah batasan yang  sangat mengikat sehingga terkadang menyulitkan programmer yang tidak  terbiasa.
 
Contoh bahasa pemrogaman yang menggunakan paradigma prosedural  atau imperatif adalah: Algol, Pascal, Fortran, Basic, Cobol, C, dsb…
 
2. Paradigma Pemrograman Fungsional
 
 Paradigma ini didasari oleh konsep pemetaan dan fungsi pada  matematika, fungsi dapat berupa fungsi ”primitif”, atau komposisi dari  fungsi-fungsi lain yang telah terdefinisi. Dalam paradigma ini,  diasumsikan bahwa akan selalu ada fungsi-fungsi dasar yang dapat  digunakan, sehingga penyelesaian masalah berdasarkan pada fungsi-fungsi  yang telah tersedia tersebut. Jadi dasar pemecahan masalah adalah  transformasional, semua kelakuan program adalah suatu rantai  transformasi dari sebuah keadaan awal menuju ke suatu rantai keadaan  akhir, yang mungkin melalui keadaan antara, melalui aplikasi fungsi.
 
Paradigma fungsional tidak mempermasalahkan memorisasi dan  struktur data, tidak ada pemilahan antara data dan program, tidak ada  lagi pengertian tentang ”variabel”. Programmer tidak perlu tahu  bagaimana mesin mengeksekusi atau bagaimana informasi disimpan dalam  memori, setiap fungsi seperti ”kotak hitam”, yang perlu diperhatikan  hanya keadaan awal dan akhir, sebuah program besar dihasilkan dengan  menggabungkan fungsi-fungsi yang telah tersedia. Program yang dihasilkan  dengan bahasa pemrograman yang menggunakan paradigma ini biasanya  membutuhkan waktu pemrosesan yang lebih lama dibandingkan dengan yang  menggunakan paradigma prosedural karena dibutuhkan waktu lebih untuk  memproses fungsi-fungsi yang digunakan dalam membuat program.
 
Contoh bahasa pemrograman yang menggunakan paradigma fungsional adalah LOGO, APL dan LISP.
 
3. Paradigma Pemrograman Deklaratif, Predikatif atau Lojik
 
Paradigma ini didasari atas pendefinisian relasi antar individu  yang dinyatakan sebagai predikat. Sebuah program lojik adalah kumpulan  aksioma (Fakta dan aturan deduksi.
 
Dalam paradigma ini, programmer menguraikan sekumpulan fakta dan aturan-aturan (inference rules).  Ketika program dieksekusi, pemakai akan mengajukan pertanyaan,  selanjutnya program akan menggunakan aturan deduksi dan mencocokkan  pertanyaan dengan fakta-fakta yang ada untuk menjawab pertanyaan.
 
Contoh bahasa pemrograman yang menggunakan paradigma ini adalah: Prolog.
 
4. Paradigma Berorientasi Object (Object Oriented)
 
 Paradigma ini menggunakan konsep class dan object, object adalah instansiasi dari class, setiap object akan mempunyai attribute dan method, masing-masing object dapat berinteraksi dengan object lainnya meskipun berasal dari class yang berbeda.
 
 mempunyai hirarki artinya sebuah class dapat diturunkan menjadi sebuah class baru yang juga memiliki attribut dan method class diatasnya. Dengan begitu dalam paradigma ini dikenal konsep modularitas, penggunaan kembali (reuse) serta kemudahan modifikasi.
 
Contoh bahasa pemrograman yang menggunakan paradigma ini adalah: Smalltalk, Eifel, Delphi, Java.
 
5. Paradigma Konkuren
 
Paradigma ini didasari oleah kenyataan bahwa dalam keadaan nyata, sebuah sistem komputer harus menangani beberapa program (task) yang harus dieksekusi secara bersamaan dalam sebuah lingkungan baik mono ataupun multi processor.  Dalam paradigma ini programmer tidak lagi berpikir sekuensial,  melainkan harus menangani komunikasi dan sikronisasi antar task.
 
Masing-masing paradigma tersebut mempunyai strategi analisa  yang khusus untuk memecahkan persoalan. Setiap paradigma mempunyai  kekurangan dan kelebihan sehingga tidak semua persoalan dapat dipecahkan  dengan satu jenis paradigma, sehingga diperlukan analisis secara  menyeluruh terhadap persoalan yang akan diselesaikan sebelum menentukan  paradigma pemrograman seperti apa yang akan digunakan untuk  menyelesaikan persoalan tersebut.